Vulkan Schnee 0.0.1
High-performance rendering engine
Loading...
Searching...
No Matches
Asset::Record< Key, AssetClass > Struct Template Reference

#include <Asset.h>

Collaboration diagram for Asset::Record< Key, AssetClass >:

Public Types

using Result = LoadResult<Key, AssetClass>

Public Member Functions

 Record (Key key)
void resetFuture ()

Public Attributes

Key key
std::unique_ptr< AssetClass > asset
LoadState state = UNLOADED
uint64_t generation = 0
std::string lastError
std::shared_ptr< std::promise< Result > > readyPromise
std::shared_future< ResultreadyFuture
bool readyPromiseResolved = false

Detailed Description

template<typename Key, typename AssetClass>
struct Asset::Record< Key, AssetClass >

Definition at line 66 of file Asset.h.

Member Typedef Documentation

◆ Result

template<typename Key, typename AssetClass>
using Asset::Record< Key, AssetClass >::Result = LoadResult<Key, AssetClass>

Definition at line 68 of file Asset.h.

Constructor & Destructor Documentation

◆ Record()

template<typename Key, typename AssetClass>
Asset::Record< Key, AssetClass >::Record ( Key key)
inlineexplicit

Definition at line 70 of file Asset.h.

References key, and resetFuture().

Here is the call graph for this function:

Member Function Documentation

◆ resetFuture()

template<typename Key, typename AssetClass>
void Asset::Record< Key, AssetClass >::resetFuture ( )
inline

Definition at line 75 of file Asset.h.

References readyFuture, readyPromise, and readyPromiseResolved.

Referenced by Record().

Here is the caller graph for this function:

Member Data Documentation

◆ asset

template<typename Key, typename AssetClass>
std::unique_ptr<AssetClass> Asset::Record< Key, AssetClass >::asset

Definition at line 83 of file Asset.h.

◆ generation

template<typename Key, typename AssetClass>
uint64_t Asset::Record< Key, AssetClass >::generation = 0

Definition at line 85 of file Asset.h.

◆ key

template<typename Key, typename AssetClass>
Key Asset::Record< Key, AssetClass >::key

Definition at line 82 of file Asset.h.

Referenced by Record().

◆ lastError

template<typename Key, typename AssetClass>
std::string Asset::Record< Key, AssetClass >::lastError

Definition at line 86 of file Asset.h.

◆ readyFuture

template<typename Key, typename AssetClass>
std::shared_future<Result> Asset::Record< Key, AssetClass >::readyFuture

Definition at line 88 of file Asset.h.

Referenced by resetFuture().

◆ readyPromise

template<typename Key, typename AssetClass>
std::shared_ptr<std::promise<Result> > Asset::Record< Key, AssetClass >::readyPromise

Definition at line 87 of file Asset.h.

Referenced by resetFuture().

◆ readyPromiseResolved

template<typename Key, typename AssetClass>
bool Asset::Record< Key, AssetClass >::readyPromiseResolved = false

Definition at line 89 of file Asset.h.

Referenced by resetFuture().

◆ state

template<typename Key, typename AssetClass>
LoadState Asset::Record< Key, AssetClass >::state = UNLOADED

Definition at line 84 of file Asset.h.


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