Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
Engine::Assets::MaterialAssetManager Class Reference

#include <MaterialAsset.h>

Inheritance diagram for Engine::Assets::MaterialAssetManager:
Collaboration diagram for Engine::Assets::MaterialAssetManager:

Public Member Functions

 MaterialAssetManager ()=default
Public Member Functions inherited from Asset::AssetManager< Asset::Path, Material >
 AssetManager ()=default
virtual ~AssetManager ()=default
void declare (Asset::Path path, Args &&... args)
 Adds an asset to the list in its unloaded state.
void add (Asset::Path path, Material *asset)
 Adds or overwrites a previously declared asset at a key.
RefType getOrCreateRef (const Asset::Path &path)
 Gets a stable asset reference, creating a record if necessary.
RefType getRef (const Asset::Path &path) const
 Gets a stable asset reference if a record exists, otherwise an expired ref.
void setAssetLoadingState (const Asset::Path &path, LoadState state)
 Sets the record loading state without requiring a payload object.
void resolve (const Asset::Path &path, std::unique_ptr< Material > asset)
 Stores a loaded payload and resolves the record's ready future.
void fail (const Asset::Path &path, std::string error)
 Marks the record as failed and resolves the ready future with an error.
void unloadAssetPayload (const Asset::Path &path)
 Drops the loaded payload while preserving the stable record.
bool exists (Asset::Path path)
 Checks if an asset already exists. This means it is declared and there is content.
bool isDeclared (Asset::Path path)
 Checks if an asset has been declared. If it exists it is also declared.
CpuLoadingState getAssetLoadingState (const Asset::Path &path)
 Gets a loading state for an asset. If the asset is not yet declared it will return that it is UNLOADED.
std::optional< Material * > getAsset (const Asset::Path &path)
 Try's to get an asset. If the asset does not exist (can be checked with exists) it will return a std::nullopt.
virtual void clear ()
 Clears out all resources.
void forEachAsset (Func &&func) const
 Iterates over all assets and calls the provided callback for each.

Additional Inherited Members

Public Types inherited from Asset::AssetManager< Asset::Path, Material >
using RefType
using RecordType
using ResultType

Detailed Description

Definition at line 160 of file MaterialAsset.h.

Constructor & Destructor Documentation

◆ MaterialAssetManager()

Engine::Assets::MaterialAssetManager::MaterialAssetManager ( )
default

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