Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
Asset::AssetBase Class Reference

Base class for asset wrappers. The data is stored in the private member variable 'data' in form of entt components. More...

#include <Asset.h>

Inheritance diagram for Asset::AssetBase:

Public Member Functions

 AssetBase (bool initializeDefaultEntity=false)
virtual ~AssetBase ()
CpuLoadingState getLoadingState ()
 Gets the loading state of this asset.
void requestLoad ()
 If this asset is in the UNLOADED state it will get added to the assets to load.
virtual void unload ()
 Base function for unloading the ecs data.
entt::entity getEntity () const
 Getter for data.

Protected Member Functions

virtual void updateLoadingState ()

Protected Attributes

CpuLoadingState loadingState = UNLOADED
entt::registry & mainRegistry
entt::entity data

Detailed Description

Base class for asset wrappers. The data is stored in the private member variable 'data' in form of entt components.

Definition at line 167 of file Asset.h.

Constructor & Destructor Documentation

◆ AssetBase()

Asset::AssetBase::AssetBase ( bool initializeDefaultEntity = false)
inlineexplicit

Definition at line 170 of file Asset.h.

References data, Asset::LOADING, loadingState, mainRegistry, and Asset::UNLOADED.

◆ ~AssetBase()

Asset::AssetBase::~AssetBase ( )
inlinevirtual

Definition at line 210 of file Asset.h.

References unload().

Here is the call graph for this function:

Member Function Documentation

◆ getEntity()

entt::entity Asset::AssetBase::getEntity ( ) const
inline

Getter for data.

Returns
data

Definition at line 237 of file Asset.h.

References data.

◆ getLoadingState()

CpuLoadingState Asset::AssetBase::getLoadingState ( )
inlinenodiscard

Gets the loading state of this asset.

Returns
Returns the state of loading of this asset

Definition at line 215 of file Asset.h.

References loadingState, and updateLoadingState().

Here is the call graph for this function:

◆ requestLoad()

void Asset::AssetBase::requestLoad ( )
inline

If this asset is in the UNLOADED state it will get added to the assets to load.

Definition at line 221 of file Asset.h.

References data, loadingState, mainRegistry, and Asset::REQUESTED_LOAD.

◆ unload()

void Asset::AssetBase::unload ( )
inlinevirtual

Base function for unloading the ecs data.

Reimplemented in Engine::Assets::Audio, Engine::Assets::Material, Engine::Assets::Mesh, and Engine::Assets::Texture.

Definition at line 227 of file Asset.h.

References data, loadingState, mainRegistry, and Asset::UNLOADED.

Referenced by ~AssetBase().

Here is the caller graph for this function:

◆ updateLoadingState()

virtual void Asset::AssetBase::updateLoadingState ( )
inlineprotectedvirtual

Reimplemented in Engine::Assets::Audio, Engine::Assets::Material, Engine::Assets::Mesh, and Engine::Assets::Texture.

Definition at line 201 of file Asset.h.

Referenced by getLoadingState().

Here is the caller graph for this function:

Member Data Documentation

◆ data

entt::entity Asset::AssetBase::data
protected

Definition at line 207 of file Asset.h.

Referenced by AssetBase(), Engine::Assets::Material::getData(), getEntity(), requestLoad(), and unload().

◆ loadingState

CpuLoadingState Asset::AssetBase::loadingState = UNLOADED
protected

Definition at line 204 of file Asset.h.

Referenced by AssetBase(), getLoadingState(), requestLoad(), and unload().

◆ mainRegistry

entt::registry& Asset::AssetBase::mainRegistry
protected

Definition at line 206 of file Asset.h.

Referenced by AssetBase(), Engine::Assets::Material::getData(), requestLoad(), and unload().


The documentation for this class was generated from the following file:
  • /home/magerbeton/Documents/gl3-vulkan/Engine/include/Engine/Core/Asset.h