23 class KyArrayTLS :
public KyArrayDH<T, MemStat_NavDataGen>
27 typedef KyArrayTLS SelfType;
28 typedef KyArrayDH<T, MemStat_NavDataGen> BaseType;
30 KyArrayTLS() : BaseType(GeneratorMemory::TlsHeap()) {}
31 explicit KyArrayTLS(
int size) : BaseType(GeneratorMemory::TlsHeap(), size) {}
32 KyArrayTLS(
const SelfType& a) : BaseType(a) {}
33 const SelfType& operator=(
const SelfType& a) { BaseType::operator=(a);
return *
this; }
36 bool DoesContain(
const ValueType& value)
const {
return ArrayAlg::DoesContain<SelfType,ValueType>(*
this, value); }
37 void RemoveConsecutiveDuplicates() {
return ArrayAlg::RemoveConsecutiveDuplicates<SelfType>(*this); }
44 class KyArrayTLS_POD :
public ArrayDH_POD<T, MemStat_NavDataGen>
48 typedef KyArrayTLS_POD SelfType;
49 typedef ArrayDH_POD<T, MemStat_NavDataGen> BaseType;
51 KyArrayTLS_POD() : BaseType(GeneratorMemory::TlsHeap()) {}
52 explicit KyArrayTLS_POD(
int size) : BaseType(GeneratorMemory::TlsHeap(), size) {}
53 KyArrayTLS_POD(
const SelfType& a) : BaseType(a) {}
54 const SelfType& operator=(
const SelfType& a) { BaseType::operator=(a);
return *
this; }
57 bool DoesContain(
const ValueType& value)
const {
return ArrayAlg::DoesContain<SelfType,ValueType>(*
this, value); }
58 void RemoveConsecutiveDuplicates() {
return ArrayAlg::RemoveConsecutiveDuplicates<SelfType>(*this); }
64 class KyArrayTLS_CPP :
public ArrayDH_CPP<T, MemStat_NavDataGen>
68 typedef KyArrayTLS_CPP SelfType;
69 typedef ArrayDH_CPP<T, MemStat_NavDataGen> BaseType;
71 KyArrayTLS_CPP() : BaseType(GeneratorMemory::TlsHeap()) {}
72 explicit KyArrayTLS_CPP(
int size) : BaseType(GeneratorMemory::TlsHeap(), size) {}
73 KyArrayTLS_CPP(
const SelfType& a) : BaseType(a) {}
74 const SelfType& operator=(
const SelfType& a) { BaseType::operator=(a);
return *
this; }
77 bool DoesContain(
const ValueType& value)
const {
return ArrayAlg::DoesContain<SelfType,ValueType>(*
this, value); }
78 void RemoveConsecutiveDuplicates() {
return ArrayAlg::RemoveConsecutiveDuplicates<SelfType>(*this); }
81 class BitFieldTLS :
public BitFieldBase
85 explicit BitFieldTLS() : BitFieldBase() {}
86 explicit BitFieldTLS(
KyUInt32 bitsCount) : BitFieldBase() { Resize(bitsCount); }
87 void Resize(
KyUInt32 newBitsCount) { Resize_(newBitsCount, MemStat_NavDataGen, GeneratorMemory::TlsHeap()); }
88 void Reserve(
KyUInt32 newBitsCount) { Reserve_(newBitsCount, MemStat_NavDataGen, GeneratorMemory::TlsHeap()); }
91 template <
class T,
typename Comparator = DefaultLess<T>,
typename BinaryHeapIndexTracker = BinaryHeapIndexTracker_None<T> >
92 class BinaryHeapTls :
public BinaryHeap<T, KyArrayTLS<T>, Comparator, BinaryHeapIndexTracker>
96 template <
class T,
typename Comparator = DefaultLess<T>,
typename BinaryHeapIndexTracker = BinaryHeapIndexTracker_None<T> >
97 class BinaryHeapTLS_CPP :
public BinaryHeap<T, KyArrayTLS_CPP<T>, Comparator, BinaryHeapIndexTracker>
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17