Public Member Functions | |
virtual void | Initialize () override |
Initialize object. | |
virtual void | Destroy () override |
Destroy object, releasing all resources. | |
template<typename AssetType > | |
TObjectPtr< AssetType > | ImportAsset (const std::filesystem::path &Filepath) |
virtual FAssetHandle | ImportAsset (const std::filesystem::path &Filepath) override |
virtual void | RemoveAsset (const FAssetHandle Handle) override |
virtual TObjectPtr< LAsset > | GetAsset (const FAssetHandle Handle) override |
virtual EAssetType | GetAssetType (const FAssetHandle Handle) override |
virtual bool | ReloadData (const FAssetHandle Handle) override |
virtual void | AddMemoryOnlyAsset (TObjectPtr< LAsset > Asset) override |
virtual bool | IsAssetHandleValid (const FAssetHandle Handle) const override |
virtual bool | IsAssetLoaded (const FAssetHandle Handle) const override |
virtual bool | IsMemoryAsset (const FAssetHandle Handle) const override |
virtual bool | LoadAssetRegistry () override |
virtual void | WriteRegistryToDisk () override |
virtual const FAssetMetadata & | GetMetadata (const FAssetHandle Handle) const override |
virtual const FAssetMetadata & | GetMetadata (const TObjectPtr< LAsset > &Asset) const override |
virtual const FAssetMetadata & | GetMetadata (const std::filesystem::path &InFilePath) const override |
virtual FAssetHandle | GetAssetHandleFromFilePath (const std::filesystem::path &InFilePath) const override |
virtual EAssetType | GetAssetTypeFromExtension (const std::string &Extension) const override |
virtual EAssetType | GetAssetTypeFromPath (const std::filesystem::path &InFilePath) const override |
virtual std::unordered_set< FAssetHandle > | GetAllAssetsWithType (const EAssetType AssetType) override |
virtual std::size_t | GetAllAssetsWithType (const EAssetType AssetType, std::unordered_set< FAssetHandle > &AssetsOfType) override |
std::filesystem::path | GetFileSystemPath (const FAssetMetadata &Metadata) const |
std::filesystem::path | GetFileSystemPath (const FAssetHandle Handle) const |
std::filesystem::path | GetRelativePath (const std::filesystem::path &InFilePath) const |
template<typename T > | |
TObjectPtr< T > | GetAsset (const std::string &InFilePath) |
template<typename T , typename... TArgs> | |
TObjectPtr< T > | CreateNewAsset (const std::string &FileName, const std::string &DirectoryPath, TArgs &&... Args) |
virtual const std::unordered_map< FAssetHandle, TObjectPtr< LAsset > > & | GetLoadedAssets () const override |
virtual const std::unordered_map< FAssetHandle, TObjectPtr< LAsset > > & | GetMemoryOnlyAssets () const override |
int | GetTextures2D (std::vector< TObjectPtr< LTexture2D > > &TextureContainer) |
int | GetTextures2D (std::vector< std::pair< std::string, TObjectPtr< LTexture2D > > > &TextureContainer) |
const std::vector< std::pair< std::string, TObjectPtr< LTexture2D > > > & | GetTextures2D () const |
FORCEINLINE const LAssetRegistry & | GetAssetRegistry () const |
template<typename T > | |
TObjectPtr< T > | ImportAsset (const std::filesystem::path &InFilePath) |
template<> | |
TObjectPtr< LMeshSource > | ImportAsset (const std::filesystem::path &InFilePath) |
template<> | |
TObjectPtr< LMesh > | ImportAsset (const std::filesystem::path &InFilePath) |
template<> | |
TObjectPtr< LStaticMesh > | ImportAsset (const std::filesystem::path &InFilePath) |
![]() | |
![]() | |
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 LClass * | ObjectRegistration ()=0 |
Register object class. | |
virtual FORCEINLINE const LClass * | GetClass () const |
Get the class for this LObject. | |
virtual std::string | ClassName () const =0 |
Get name of the LObject class. | |
LObject & | operator= (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. | |
![]() | |
template<typename OtherClassType > | |
FORCEINLINE bool | IsA (OtherClassType OtherObject) const |
Check if the object is the same type as the passed object's. | |
Static Public Attributes | |
static TObjectPtr< LMaterialAsset > | BaseMaterial {} |
static TObjectPtr< LMaterialAsset > | BaseMaterial2 {} |
static TObjectPtr< LMaterialAsset > | Material_WoodContainer {} |
static TObjectPtr< LMaterialAsset > | Material_Metal {} |
Additional Inherited Members | |
![]() | |
static FORCEINLINE const LClass * | StaticClass () |
Get static class object. | |
static FORCEINLINE std::string | StaticClassName () |
Static class name. | |
template<typename T > | |
static void | ValidateLObjectImplementation () |
Validate the implementation of a LObject. | |
![]() | |
template<typename ClassType > | |
static FORCEINLINE bool | IsChildOf (const ClassType *InObjectClass, const ClassType *InOtherClass) |
Check if the object is a child of another class. | |
![]() | |
![]() | |
void | SetClass (LClass *InClass) |
Set the class. | |
FORCEINLINE const LClass * | GetClass () const |
Get the private class member. | |
FORCEINLINE bool | IsClassValid () const |
Check if LObjectBase has a valid LClass object. | |
![]() | |
FObjectHandle | ObjectHandle = 0 |
bool | bObjectInitialized = false |
EObjectFlag | ObjectFlags = EObjectFlag::None |
std::atomic< uint32_t > | Ptr_ReferenceCount = 0 |
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Destroy object, releasing all resources.
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
inlineoverridevirtual |
Implements LkEngine::IAssetManager.
|
inlineoverridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
virtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
virtual |
Implements LkEngine::IAssetManager.
|
virtual |
Implements LkEngine::IAssetManager.
|
virtual |
Implements LkEngine::IAssetManager.
|
virtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Initialize object.
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
inlineoverridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.
|
overridevirtual |
Implements LkEngine::IAssetManager.