Raven Engine v0.1
A modern 3D Game Engine
Loading...
Searching...
No Matches
Raven::AssetManagerBase Class Reference

#include <AssetManagerBase.h>

Public Member Functions

void LoadMeta (const AssetOwnership pathType)
void UnloadMeta (const AssetOwnership pathType)
template<typename CreateFunc, typename... Args>
auto Load (const UUID &id, const AssetPolicy policy, CreateFunc &&func, Args &&... args)
template<typename CreateFunc, typename... Args>
auto Load (std::string_view uri, const AssetPolicy policy, CreateFunc &&func, Args &&... args)
template<typename CreateFunc, typename... Args>
auto Load (const AssetPolicy policy, CreateFunc &&func, Args &&... args)
template<typename T, typename Action>
void ClearSharedCache (Action &&action)
template<typename T, typename Action>
void ClearUniqueCache (Action &&action)
const NodeMap< UUID, AssetMeta > & GetRegistry () noexcept
const NodeMap< AssetKey, AssetSharedCache > & GetSharedCache () const noexcept
const std::vector< AssetUniqueCache > & GetUniqueCache () const noexcept
std::tuple< UUID, AssetOwnershipGetRegistryEntry (const std::filesystem::path &path)
std::tuple< std::filesystem::path *, AssetOwnershipGetRegistryEntry (const UUID &ID)
 AssetManagerBase ()=default
 ~AssetManagerBase ()=default
 AssetManagerBase (const AssetManagerBase &)=delete
 AssetManagerBase (AssetManagerBase &&)=delete
AssetManagerBaseoperator= (const AssetManagerBase &)=delete
AssetManagerBaseoperator= (AssetManagerBase &&)=delete

Constructor & Destructor Documentation

◆ AssetManagerBase() [1/3]

Raven::AssetManagerBase::AssetManagerBase ( )
default

◆ ~AssetManagerBase()

Raven::AssetManagerBase::~AssetManagerBase ( )
default

◆ AssetManagerBase() [2/3]

Raven::AssetManagerBase::AssetManagerBase ( const AssetManagerBase & )
delete

◆ AssetManagerBase() [3/3]

Raven::AssetManagerBase::AssetManagerBase ( AssetManagerBase && )
delete

Member Function Documentation

◆ ClearSharedCache()

template<typename T, typename Action>
void Raven::AssetManagerBase::ClearSharedCache ( Action && action)
inline

◆ ClearUniqueCache()

template<typename T, typename Action>
void Raven::AssetManagerBase::ClearUniqueCache ( Action && action)
inline

◆ GetRegistry()

const NodeMap< UUID, AssetMeta > & Raven::AssetManagerBase::GetRegistry ( )
inlinenoexcept

◆ GetRegistryEntry() [1/2]

std::tuple< UUID, AssetOwnership > Raven::AssetManagerBase::GetRegistryEntry ( const std::filesystem::path & path)

◆ GetRegistryEntry() [2/2]

std::tuple< std::filesystem::path *, AssetOwnership > Raven::AssetManagerBase::GetRegistryEntry ( const UUID & ID)

◆ GetSharedCache()

const NodeMap< AssetKey, AssetSharedCache > & Raven::AssetManagerBase::GetSharedCache ( ) const
inlinenoexcept

◆ GetUniqueCache()

const std::vector< AssetUniqueCache > & Raven::AssetManagerBase::GetUniqueCache ( ) const
inlinenoexcept

◆ Load() [1/3]

template<typename CreateFunc, typename... Args>
auto Raven::AssetManagerBase::Load ( const AssetPolicy policy,
CreateFunc && func,
Args &&... args )
inline

◆ Load() [2/3]

template<typename CreateFunc, typename... Args>
auto Raven::AssetManagerBase::Load ( const UUID & id,
const AssetPolicy policy,
CreateFunc && func,
Args &&... args )
inline

◆ Load() [3/3]

template<typename CreateFunc, typename... Args>
auto Raven::AssetManagerBase::Load ( std::string_view uri,
const AssetPolicy policy,
CreateFunc && func,
Args &&... args )
inline

◆ LoadMeta()

void Raven::AssetManagerBase::LoadMeta ( const AssetOwnership pathType)

◆ operator=() [1/2]

AssetManagerBase & Raven::AssetManagerBase::operator= ( AssetManagerBase && )
delete

◆ operator=() [2/2]

AssetManagerBase & Raven::AssetManagerBase::operator= ( const AssetManagerBase & )
delete

◆ UnloadMeta()

void Raven::AssetManagerBase::UnloadMeta ( const AssetOwnership pathType)

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