Open 3D Engine Atom Gem API Reference
24.09
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
|
#include <StableDynamicArray.h>
Public Member Functions | |
StableDynamicArrayHandle ()=default | |
Default constructor creates an invalid handle. | |
StableDynamicArrayHandle (StableDynamicArrayHandle &&other) | |
Move Constructor. | |
template<typename OtherType > | |
StableDynamicArrayHandle (StableDynamicArrayHandle< OtherType > &&other) | |
Move constructor that allows converting between handles of different types, as long as they are part of the same inheritance chain. | |
~StableDynamicArrayHandle () | |
Destructor will also destroy its underlying data and free it from the StableDynamicArray. | |
StableDynamicArrayHandle & | operator= (StableDynamicArrayHandle &&other) |
Move Assignment. | |
template<typename OtherType > | |
StableDynamicArrayHandle< ValueType > & | operator= (StableDynamicArrayHandle< OtherType > &&other) |
Move assignment that allows converting between handles of different types, as long as they are part of the same inheritance chain. | |
void | Free () |
Destroy the underlying data and free it from the StableDynamicArray. Marks the handle as invalid. | |
bool | IsValid () const |
Returns true if this Handle currently holds a valid value. | |
bool | IsNull () const |
Returns true if this Handle doesn't contain a value (same as !IsValid()). | |
ValueType & | operator* () const |
ValueType * | operator-> () const |
StableDynamicArrayWeakHandle< ValueType > | GetWeakHandle () const |
Returns a non-owning weak handle to the data. | |
template<typename OtherType > | |
auto | operator= (StableDynamicArrayHandle< OtherType > &&other) -> StableDynamicArrayHandle< ValueType > & |
Friends | |
template<typename T , size_t ElementsPerPage, class Allocator > | |
class | StableDynamicArray |
Handle to the data allocated in the array. This stores extra data internally so that an item can be quickly marked as free later. Since there is no ref counting, copy is not allowed, only move. When a handle is used to free it's associated data it is marked as invalid.