バージョン

menu_open
Wwise SDK 2024.1.1
AkSortedKeyArray< T_KEY, T_ITEM, U_POOL, U_KEY, TGrowBy, TMovePolicy, TComparePolicy > クラステンプレート

#include <AkKeyArray.h>

AkSortedKeyArray< T_KEY, T_ITEM, U_POOL, U_KEY, TGrowBy, TMovePolicy, TComparePolicy > の継承関係図
AkArray< T_ITEM, const T_ITEM &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T_ITEM > > AkArrayAllocatorNoAlign< T_MEMID >

クラス

struct  GetUpdateKey
 

公開型

using base = AkArray< T_ITEM, const T_ITEM &, U_POOL, TGrowBy, TMovePolicy >
 
using Iterator = typename base::Iterator
 

公開メンバ関数

AkForceInline bool Lesser (const T_KEY &a, const T_KEY &b) const
 
AkForceInline bool Equal (const T_KEY &a, const T_KEY &b) const
 
AkUInt32 GetIndex (T_ITEM *in_pItem) const
 
T_ITEM * Exists (T_KEY in_key) const
 
T_ITEM * Add (T_KEY in_key)
 
T_ITEM * AddNoSetKey (T_KEY in_key)
 
T_ITEM * AddNoSetKey (T_KEY in_key, bool &out_bFound)
 
T_ITEM * Set (T_KEY in_key)
 
T_ITEM * Set (T_KEY in_key, bool &out_bExists)
 
bool Unset (T_KEY in_key)
 
template<typename T_UPDATE , typename U_UPDATEKEY = GetUpdateKey<T_UPDATE>, typename FN_EXISTS = void (*)(T_ITEM&, const T_UPDATE&), typename FN_NEW = void (*)(T_ITEM&, const T_UPDATE&), typename FN_OLD = void (*)(T_ITEM&)>
bool SortedUpdate (AkUInt32 in_numUpdates, const T_UPDATE *in_pUpdates, FN_EXISTS in_fnExists, FN_NEW in_fnNew, FN_OLD in_fnOld)
 
void Reorder (T_KEY in_OldKey, T_KEY in_NewKey, const T_ITEM &in_item)
 
void ReSortArray ()
 
T_ITEM * BinarySearch (T_KEY in_key, bool &out_bFound) const
 
T_ITEM * LowerBounds (T_KEY in_key) const
 
T_ITEM * LowerBounds (T_KEY in_key, Iterator in_from, Iterator in_to) const
 
AkForceInline void Swap (T_ITEM *in_ItemA, T_ITEM *in_ItemB)
 
- 基底クラス AkArray< T_ITEM, const T_ITEM &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T_ITEM > > に属する継承公開メンバ関数
 AkArray ()
 Constructor [詳解]
 
 ~AkArray ()
 Destructor [詳解]
 
Iterator Begin () const
 Returns the iterator to the first item of the array, will be End() if the array is empty. [詳解]
 
Iterator End () const
 Returns the iterator to the end of the array [詳解]
 
Iterator FindEx (const T_ITEM & in_Item) const
 Returns the iterator th the specified item, will be End() if the item is not found [詳解]
 
Iterator BinarySearch (const T_ITEM & in_Item) const
 
Iterator Erase (Iterator &in_rIter)
 Erase the specified iterator from the array [詳解]
 
void Erase (unsigned int in_uIndex)
 Erase the item at the specified index [詳解]
 
Iterator EraseSwap (Iterator &in_rIter)
 
void EraseSwap (unsigned int in_uIndex)
 
bool IsGrowingAllowed () const
 
AKRESULT Reserve (AkUInt32 in_ulReserve)
 
AKRESULT ReserveExtra (AkUInt32 in_ulReserve)
 
AkUInt32 Reserved () const
 
void Term ()
 Term the array. Must be called before destroying the object. [詳解]
 
AkForceInline AkUInt32 Length () const
 Returns the numbers of items in the array. [詳解]
 
AkForceInline T_ITEM * Data () const
 Returns a pointer to the first item in the array. [詳解]
 
AkForceInline bool IsEmpty () const
 Returns true if the number items in the array is 0, false otherwise. [詳解]
 
AkForceInline T_ITEM * Exists (const T_ITEM & in_Item) const
 Returns a pointer to the specified item in the list if it exists, 0 if not found. [詳解]
 
AkForceInline T_ITEM * AddLast ()
 
AkForceInline T_ITEM * AddLast (const T_ITEM & in_rItem)
 Add an item in the array, and fills it with the provided item. [詳解]
 
T_ITEM & Last ()
 Returns a reference to the last item in the array. [詳解]
 
void RemoveLast ()
 Removes the last item from the array. [詳解]
 
AKRESULT Remove (const T_ITEM & in_rItem)
 Removes the specified item if found in the array. [詳解]
 
AKRESULT RemoveSwap (const T_ITEM & in_rItem)
 
void RemoveAll ()
 Removes all items in the array [詳解]
 
AkForceInline T_ITEM & operator[] (unsigned int uiIndex) const
 Operator [], return a reference to the specified index. [詳解]
 
Iterator Insert (Iterator &in_rIter)
 
T_ITEM * Insert (unsigned int in_uIndex)
 
bool GrowArray ()
 
bool GrowArray (AkUInt32 in_uGrowBy)
 Resize the array. [詳解]
 
bool Resize (AkUInt32 in_uiSize)
 Resize the array to the specified size. [詳解]
 
void Transfer (AkArray< T_ITEM, const T_ITEM &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T_ITEM > > &in_rSource)
 
AKRESULT Copy (const AkArray< T_ITEM, const T_ITEM &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T_ITEM > > &in_rSource)
 

その他の継承メンバ

- 基底クラス AkArrayAllocatorNoAlign< T_MEMID > に属する継承静的公開メンバ関数
static AkForceInline void * Alloc (size_t in_uSize)
 
static AkForceInline void * ReAlloc (void *in_pCurrent, size_t in_uOldSize, size_t in_uNewSize)
 
static AkForceInline void Free (void *in_pAddress)
 
static AkForceInline void TransferMem (void *&io_pDest, AkArrayAllocatorNoAlign< T_MEMID > in_srcAlloc, void *in_pSrc)
 
- 基底クラス AkArray< T_ITEM, const T_ITEM &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T_ITEM > > に属する継承限定公開変数類
T_ITEM * m_pItems
 pointer to the beginning of the array. [詳解]
 
AkUInt32 m_uLength
 number of items in the array. [詳解]
 
AkUInt32 m_ulReserved
 how many we can have at most (currently allocated). [詳解]
 

詳解

template<class T_KEY, class T_ITEM, class U_POOL = ArrayPoolDefault, class U_KEY = AkGetArrayKey< T_KEY, T_ITEM >, class TGrowBy = AkGrowByPolicy_DEFAULT, class TMovePolicy = AkAssignmentMovePolicy<T_ITEM>, class TComparePolicy = AkDefaultSortedKeyCompare<T_KEY>>
class AkSortedKeyArray< T_KEY, T_ITEM, U_POOL, U_KEY, TGrowBy, TMovePolicy, TComparePolicy >

Array of items, sorted by key. Uses binary search for lookups. BEWARE WHEN MODIFYING THE ARRAY USING BASE CLASS METHODS.

AkKeyArray.h203 行目に定義があります。


このページはお役に立ちましたか?

サポートは必要ですか?

ご質問や問題、ご不明点はございますか?お気軽にお問い合わせください。

サポートページをご確認ください

あなたのプロジェクトについて教えてください。ご不明な点はありませんか。

プロジェクトを登録していただくことで、ご利用開始のサポートをいたします。

Wwiseからはじめよう