#ifndef IRESOURCE_H__ #define IRESOURCE_H__ //#include "IDataStream.h" #include namespace LifeGraphics { class IResource { protected: int _refCount; public: int CreationTime; int MemoryUsed; IResource() :_refCount(0) { Grab(); } size_t Id; size_t GetID() { return Id; } String Name; void Grab(){_refCount++;} void Release(){_refCount--;} int RefCount(){return _refCount;} virtual ~IResource(){} // virtual void Load(Core::IDataStream* src) = 0; // virtual void CompleteAsyncRequest(IResource* source) = 0; }; } #endif