Go to the documentation of this file.
55 template<
typename T,
class U_POOL = ArrayPoolDefault,
class uGrowBy = AkGrowByPolicy_DEFAULT,
class TMovePolicy = AkAssignmentMovePolicy<T>,
class TComparePolicy = AkDefaultSortedKeyCompare<T> >
65 template<
typename T,
class U_POOL = ArrayPoolDefault,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
70 while (itA != in_A.
End() && itB != in_B.
End())
85 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
94 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
99 while (itA != in_A.
End() && itB != in_B.
End())
101 if (TComparePolicy::Equal(&in_A, *itA, *itB))
105 else if (TComparePolicy::Lesser(&in_A, *itA, *itB))
112 return (itA == in_A.
End());
118 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
124 while (itA != in_A.
End() && itB != in_B.
End())
126 if (TComparePolicy::Equal(&in_A, *itA, *itB))
128 ++uSize; ++itA; ++itB;
130 else if (TComparePolicy::Lesser(&in_A, *itA, *itB))
145 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy>
149 itAr = itAw = in_A.
Begin();
151 while (itAr != in_A.
End())
153 if (itB == in_B.
End() || TComparePolicy::Lesser(&in_A, *itAr, *itB))
161 else if (TComparePolicy::Equal(&in_A, *itAr, *itB))
178 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
182 itAr = itAw = in_A.
Begin();
184 while (itAr != in_A.
End() && itB != in_B.
End())
186 if (TComparePolicy::Equal(&in_A, *itAr, *itB))
195 else if (TComparePolicy::Lesser(&in_A, *itAr,*itB))
211 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
212 static bool AkIntersection(
AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& out_res,
const AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_A,
const AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_B)
218 while (itA != in_A.
End() && itB != in_B.
End())
220 if (TComparePolicy::Equal(&in_A, *itA, *itB))
227 else if (TComparePolicy::Lesser(&in_A, *itA,*itB))
243 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
249 if (result.
Resize(uSizeNeeded))
255 while (itB != in_B.
End() || itA != io_A.
End())
257 if ( itB != in_B.
End() && (itA == io_A.
End() || TComparePolicy::Lesser(&io_A, *itB, *itA)))
262 else if (itB == in_B.
End() || TComparePolicy::Lesser(&io_A, *itA,*itB) )
289 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
290 static inline bool AkIntersect(
const AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_A,
AkSetType in_typeA,
const AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_B,
AkSetType in_typeB)
311 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
322 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
323 static inline bool AkSubtraction(
AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_A,
AkSetType in_typeA,
const AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_B,
AkSetType in_typeB)
345 template<
typename T,
class U_POOL,
class uGrowBy,
class TMovePolicy,
class TComparePolicy >
346 static inline bool AkUnion(
AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& io_A,
AkSetType& io_typeA,
const AkSet<T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy>& in_B,
AkSetType in_typeB)
static bool AkContains(const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_Set, AkSetType in_type, T in_item)
AKRESULT Copy(const AkArray< T, const T &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T > > &in_rSource)
static bool AkIntersection(AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
void RemoveAll()
Removes all items in the array.
static AkUInt32 AkCountIntersection(const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
T * Exists(T in_key) const
static bool AkUnion(AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &io_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
@ AK_Success
The operation was successful.
int32_t AkInt32
Signed 32-bit integer.
bool Resize(AkUInt32 in_uiSize)
Resize the array to the specified size.
Iterator End() const
Returns the iterator to the end of the array.
void Transfer(AkArray< T, const T &, ArrayPoolDefault, AkGrowByPolicy_DEFAULT, AkAssignmentMovePolicy< T > > &in_rSource)
static bool AkSubtraction(AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
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 bool AkIsSubset(const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
static bool AkDisjoint(const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
AkForceInline T * AddLast()
uint32_t AkUInt32
Unsigned 32-bit integer.
void Term()
Term the array. Must be called before destroying the object.
typename base::Iterator Iterator
bool Contains(T in_item) const
AkSet< AkUniqueID, ArrayPoolDefault > AkUniqueIDSet
static AkForceInline T & Get(T &in_item)
static bool AkIntersect(const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_A, const AkSet< T, U_POOL, uGrowBy, TMovePolicy, TComparePolicy > &in_B)
Tell us about your project. We're here to help.
Register your project and we'll help you get started with no strings attached!
Get started with Wwise