EHS/include/ehs/io/Resource.h
Karutoh bcd71cf2b5
All checks were successful
Build & Release / Windows-AMD64-Build (push) Successful in 1m8s
Build & Release / Linux-AMD64-Build (push) Successful in 1m30s
Build & Release / Linux-AARCH64-Build (push) Successful in 3m21s
Adjusted workflow.
2024-02-05 22:25:30 -08:00

45 lines
733 B
C++

#pragma once
#include "ehs/Types.h"
#include "ehs/Str.h"
#include "ehs/Vec2.h"
#include "ehs/BaseObj.h"
namespace ehs
{
class Resource : public BaseObj
{
private:
ehs::UInt_64 hashId;
ehs::Str_8 id;
public:
Resource();
Resource(ehs::Str_8 id);
Resource(Resource&& rsrc) noexcept;
Resource(const Resource& rsrc);
Resource& operator=(Resource&& rsrc) noexcept;
Resource& operator=(const Resource& rsrc);
bool operator==(ehs::UInt_64 otherHashId) const;
bool operator!=(ehs::UInt_64 otherHashId) const;
virtual void Release();
void SetId(ehs::Str_8 newId);
ehs::UInt_64 GetHashId() const;
ehs::Str_8 GetId() const;
virtual bool IsValid() const;
Resource* Clone() const override;
};
}