33 template <
class T_KEY,
class T_ITEM,
class U_POOL,
class U_KEY = AkGetArrayKey< T_KEY, T_ITEM >,
unsigned long TGrowBy = 1,
class TMovePolicy = AkAssignmentMovePolicy<T_ITEM>,
class TComparePolicy = AkDefaultSortedKeyCompare<T_KEY> >
34 class CAkHeap :
public AkArray< T_ITEM, const T_ITEM &, U_POOL, TGrowBy, TMovePolicy >
45 while (insertIdx != 0)
47 int parentIdx = Parent(insertIdx);
52 insertIdx = parentIdx;
63 U_KEY::Get(*pItem) = in_Key;
113 return TComparePolicy::Greater((
void*)
this, a, b);
118 return TComparePolicy::Lesser((
void*)
this, a, b);
131 return (i - 1U) / 2U;
136 return (2U * i + 1U);
141 return (2U * i + 2U);
Specific implementation of array.
T_ITEM * m_pItems
pointer to the beginning of the array.
AkUInt32 m_uLength
number of items in the array.
T_ITEM * Insert(T_KEY in_Key)