bool operator==(const Iterator &in_rOp) const
#define AkPlacementNew(_memory)
void RemoveLast()
Removes the last item from the array.
@ AK_InvalidParameter
Something is not within bounds, check the documentation of the function returning this code.
static AkForceInline void * Alloc(size_t in_uSize)
AkUInt32 m_uLength
number of items in the array.
bool Resize(AkUInt32 in_uiSize)
Resize the array to the specified size.
AkForceInline T * AddLast(ARG_T in_rItem)
Add an item in the array, and fills it with the provided item.
#define AKASSERT(Condition)
static AkUInt32 GrowBy(AkUInt32)
static AkForceInline void * ReAlloc(void *in_pCurrent, size_t in_uOldSize, size_t in_uNewSize)
AKRESULT ReserveExtra(AkUInt32 in_ulReserve)
AkForceInline void AkMemCpy(void *pDest, const void *pSrc, AkUInt32 uSize)
Platform Independent Helper for memcpy/memmove/memset.
Iterator End() const
Returns the iterator to the end of the array.
AkUInt32 Reserved() const
Iterator Insert(Iterator &in_rIter)
AkForceInline void * Alloc(size_t in_uSize)
void Transfer(AkArray< T, ARG_T, TAlloc, TGrowBy, TMovePolicy > &in_rSource)
Iterator Erase(Iterator &in_rIter)
Erase the specified iterator from the array.
static AkForceInline void Move(T &in_Dest, T &in_Src)
#define AkMalign(_pool, _size, _align)
AkUInt32 m_ulReserved
how many we can have at most (currently allocated).
Iterator Begin() const
Returns the iterator to the first item of the array, will be End() if the array is empty.
AkForceInline AkUInt32 Length() const
Returns the numbers of items in the array.
static AkForceInline bool IsTrivial()
#define AkRealloc(_pool, _pvmem, _size)
AkArrayAllocatorNoAlign< AkMemID_Object > ArrayPoolDefault
AKRESULT Remove(ARG_T in_rItem)
Removes the specified item if found in the array.
void Erase(unsigned int in_uIndex)
Erase the item at the specified index.
bool operator!=(const Iterator &in_rOp) const
AkForceInline T * AddLast()
static AkForceInline void Free(void *in_pAddress)
uint32_t AkUInt32
Unsigned 32-bit integer.
void Term()
Term the array. Must be called before destroying the object.
static AkForceInline bool IsTrivial()
@ AK_InsufficientMemory
Memory error.
static AkUInt32 GrowBy(AkUInt32 in_CurrentArraySize)
static AkUInt32 GrowBy(AkUInt32)
AkForceInline bool IsEmpty() const
Returns true if the number items in the array is 0, false otherwise.
static AkForceInline void Move(T &in_Dest, T &in_Src)
AkForceInline T * Data() const
Returns a pointer to the first item in the array.
T * Insert(unsigned int in_uIndex)
Iterator & operator--()
Iterator EraseSwap(Iterator &in_rIter)
AkForceInline T & operator[](unsigned int uiIndex) const
Operator [], return a reference to the specified index.
#define AkReallocAligned(_pool, _pvmem, _size, _align)
AKRESULT Reserve(AkUInt32 in_ulReserve)
Iterator operator+(AkUInt32 inc) const
static AkForceInline void Move(T &&io_Dest, T &&io_Src)
Iterator BinarySearch(ARG_T in_Item) const
T * m_pItems
pointer to the beginning of the array.
static AkForceInline void Move(T &&io_Dest, T &&io_Src)
static AkForceInline bool IsTrivial()