LkEngine 0.1.2
 
Loading...
Searching...
No Matches
LkEngine::IAssetManager Class Referenceabstract
Inheritance diagram for LkEngine::IAssetManager:
LkEngine::LObject LkEngine::LObjectBase LkEngine::LEditorAssetManager LkEngine::LRuntimeAssetManager

Public Member Functions

virtual void Initialize ()=0
 Initialize object.
 
virtual void Destroy ()=0
 Destroy object, releasing all resources.
 
virtual FAssetHandle ImportAsset (const std::filesystem::path &Filepath)=0
 
virtual TObjectPtr< LAssetGetAsset (const FAssetHandle Handle)=0
 
virtual EAssetType GetAssetType (const FAssetHandle Handle)=0
 
virtual bool ReloadData (const FAssetHandle Handle)=0
 
virtual void RemoveAsset (const FAssetHandle Handle)=0
 
virtual void AddMemoryOnlyAsset (TObjectPtr< LAsset > Asset)=0
 
virtual bool IsAssetLoaded (const FAssetHandle Handle) const =0
 
virtual bool IsAssetHandleValid (const FAssetHandle Handle) const =0
 
virtual bool IsMemoryAsset (const FAssetHandle Handle) const =0
 
virtual const std::unordered_map< FAssetHandle, TObjectPtr< LAsset > > & GetLoadedAssets () const =0
 
virtual const std::unordered_map< FAssetHandle, TObjectPtr< LAsset > > & GetMemoryOnlyAssets () const =0
 
virtual std::unordered_set< FAssetHandleGetAllAssetsWithType (const EAssetType AssetType)=0
 
virtual std::size_t GetAllAssetsWithType (const EAssetType AssetType, std::unordered_set< FAssetHandle > &AssetsOfType)=0
 
virtual FAssetHandle GetAssetHandleFromFilePath (const std::filesystem::path &InFilePath) const =0
 
virtual EAssetType GetAssetTypeFromExtension (const std::string &Extension) const =0
 
virtual EAssetType GetAssetTypeFromPath (const std::filesystem::path &InFilePath) const =0
 
virtual const FAssetMetadataGetMetadata (const FAssetHandle Handle) const =0
 
virtual const FAssetMetadataGetMetadata (const TObjectPtr< LAsset > &Asset) const =0
 
virtual const FAssetMetadataGetMetadata (const std::filesystem::path &InFilePath) const =0
 
virtual bool LoadAssetRegistry ()=0
 
virtual void WriteRegistryToDisk ()=0
 
- Public Member Functions inherited from LkEngine::LObject
 LObject (const LObject &Other)
 
virtual FORCEINLINE bool IsInitialized () const
 Check if object is initialized.
 
FORCEINLINE FObjectHandle GetObjectHandle () const
 Get the object handle.
 
virtual FORCEINLINE bool IsObjectValid () const
 Check if object is valid for use.
 
virtual const LClassObjectRegistration ()=0
 Register object class.
 
virtual FORCEINLINE const LClassGetClass () const
 Get the class for this LObject.
 
virtual std::string ClassName () const =0
 Get name of the LObject class.
 
LObjectoperator= (const LObject &Other)
 
void MarkAsGarbage ()
 Mark object as garbage.
 
template<typename T >
T & As ()
 Cast object to type T.
 
template<typename T >
const T & As () const
 Cast object to type T.
 
template<typename T >
bool IsA () const
 Check if the object is or is a derivation of type T.
 
virtual FORCEINLINE bool IsAsset () const
 Check if object is an asset.
 
FORCEINLINE uint32_t GetReferenceCount () const
 Return current reference count from all object pointers.
 
- Public Member Functions inherited from LkEngine::LObjectBase
template<typename OtherClassType >
FORCEINLINE bool IsA (OtherClassType OtherObject) const
 Check if the object is the same type as the passed object's.
 

Protected Member Functions

virtual FAssetMetadataGetMetadataInternal (const FAssetHandle Handle)=0
 
- Protected Member Functions inherited from LkEngine::LObjectBase
void SetClass (LClass *InClass)
 Set the class.
 
FORCEINLINE const LClassGetClass () const
 Get the private class member.
 
FORCEINLINE bool IsClassValid () const
 Check if LObjectBase has a valid LClass object.
 

Additional Inherited Members

- Static Public Member Functions inherited from LkEngine::LObject
static FORCEINLINE const LClassStaticClass ()
 Get static class object.
 
static FORCEINLINE std::string StaticClassName ()
 Static class name.
 
template<typename T >
static void ValidateLObjectImplementation ()
 Validate the implementation of a LObject.
 
- Static Public Member Functions inherited from LkEngine::LObjectBase
template<typename ClassType >
static FORCEINLINE bool IsChildOf (const ClassType *InObjectClass, const ClassType *InOtherClass)
 Check if the object is a child of another class.
 
- Protected Attributes inherited from LkEngine::LObject
FObjectHandle ObjectHandle = 0
 
bool bObjectInitialized = false
 
EObjectFlag ObjectFlags = EObjectFlag::None
 
std::atomic< uint32_t > Ptr_ReferenceCount = 0
 

Member Function Documentation

◆ Destroy()

virtual void LkEngine::IAssetManager::Destroy ( )
pure virtual

Destroy object, releasing all resources.

Reimplemented from LkEngine::LObject.

Implemented in LkEngine::LEditorAssetManager, and LkEngine::LRuntimeAssetManager.

◆ Initialize()

virtual void LkEngine::IAssetManager::Initialize ( )
pure virtual

Initialize object.

Reimplemented from LkEngine::LObject.

Implemented in LkEngine::LEditorAssetManager, and LkEngine::LRuntimeAssetManager.


The documentation for this class was generated from the following file: