carb::assets::ScopedSnapshot
Defined in carb/assets/AssetsUtils.h
- 
template<class Type>
 class ScopedSnapshot
- A scoped snapshot, this automatically releases the snapshot when it goes out of scope. - A RAII-style helper class to manage the result of IAssets::acquireSnapshot(). - operator bool()can be used to test if the asset successfully acquired.- getReason()can be used to check why an asset failed to load. If the asset successfully loaded, it can be obtained with- get().- Public Functions - 
ScopedSnapshot() = default
- Default Constructor; produces an empty object. 
 - 
inline ScopedSnapshot(IAssets *assets, Id assetId)
- Constructs a - ScopedSnapshotfor the given asset ID.- If snapshot acquisition fails, - *thiswill be- false; use getReason() to determine why.- Parameters
- assets – The IAssets interface 
- assetId – The asset ID to acquire a snapshot for. 
 
 
 - 
inline ~ScopedSnapshot()
- Destructor. 
 - 
inline ScopedSnapshot(ScopedSnapshot &&other)
- ScopedSnapshot is move-constructible. - Parameters
- other – The other - ScopedSnapshotto move from;- otherwill be empty.
 
 - 
inline ScopedSnapshot &operator=(ScopedSnapshot &&other)
- Move-assignment operator. - Parameters
- other – The other - ScopedSnapshotto move from;- otherwill be empty.
- Returns
- *this
 
 - 
inline Type *get()
- Obtain the asset data from the snapshot. - Returns
- The loaded asset if the asset load was successful; - nullptrotherwise.
 
 - 
inline const Type *get() const
- Obtain the asset data from the snapshot. - Returns
- The loaded asset if the asset load was successful; - nullptrotherwise.
 
 - 
inline Type *operator->()
- Dereference-access operator. - Returns
- The loaded asset; malformed if - *this == false.
 
 - 
inline const Type *operator->() const
- Dereference-access operator. - Returns
- The loaded asset; malformed if - *this == false.
 
 - 
inline Type &operator*()
- Dereference operator. - Returns
- A reference to the loaded asset; malformed if - *this == false.
 
 - 
inline const Type &operator*() const
- Dereference operator. - Returns
- A reference to the loaded asset; malformed if - *this == false.
 
 - 
inline explicit constexpr operator bool() const noexcept
- Test if the asset snapshot successfully loaded. - Returns
- trueif the asset snapshot successfully loaded and its value can be retrieved via get();- falseotherwise.
 
 - 
inline Reason getReason() const
- Obtain the current asset status. - Returns
- the Reason status code based on acquiring the snapshot. An empty - ScopedSnapshotwill return Reason::eFailed.
 
 
- 
ScopedSnapshot() = default