cesium-native  0.41.0
CesiumUtility::IDepotOwningAsset< TAssetType > Class Template Referenceabstract

An interface representing the depot that owns a SharedAsset. This interface is an implementation detail of the shared asset system and should not be used directly. More...

#include <CesiumUtility/IDepotOwningAsset.h>

Inheritance diagram for CesiumUtility::IDepotOwningAsset< TAssetType >:
CesiumAsync::SharedAssetDepot< TAssetType, TAssetKey >

Public Member Functions

virtual void markDeletionCandidate (const TAssetType &asset, bool threadOwnsDepotLock)=0
 Marks the given asset as a candidate for deletion. Should only be called by SharedAsset. May be called from any thread. More...
 
virtual void unmarkDeletionCandidate (const TAssetType &asset, bool threadOwnsDepotLock)=0
 Unmarks the given asset as a candidate for deletion. Should only be called by SharedAsset. May be called from any thread. More...
 

Detailed Description

template<typename TAssetType>
class CesiumUtility::IDepotOwningAsset< TAssetType >

An interface representing the depot that owns a SharedAsset. This interface is an implementation detail of the shared asset system and should not be used directly.

SharedAsset has a pointer to the asset depot that owns it using this interface, rather than a complete CesiumAsync::SharedAssetDepot, in order to "erase" the type of the asset key. This allows SharedAsset to be templatized only on the asset type, not on the asset key type.

Definition at line 15 of file IDepotOwningAsset.h.

Member Function Documentation

◆ markDeletionCandidate()

template<typename TAssetType >
virtual void CesiumUtility::IDepotOwningAsset< TAssetType >::markDeletionCandidate ( const TAssetType &  asset,
bool  threadOwnsDepotLock 
)
pure virtual

Marks the given asset as a candidate for deletion. Should only be called by SharedAsset. May be called from any thread.

Parameters
assetThe asset to mark for deletion.
threadOwnsDepotLockTrue if the calling thread already owns the depot lock; otherwise, false.

◆ unmarkDeletionCandidate()

template<typename TAssetType >
virtual void CesiumUtility::IDepotOwningAsset< TAssetType >::unmarkDeletionCandidate ( const TAssetType &  asset,
bool  threadOwnsDepotLock 
)
pure virtual

Unmarks the given asset as a candidate for deletion. Should only be called by SharedAsset. May be called from any thread.

Parameters
assetThe asset to unmark for deletion.
threadOwnsDepotLockTrue if the calling thread already owns the depot lock; otherwise, false.

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