12GX_CORE_NAMESPACE_BEGIN()
29 static constexpr u32 ALLOC_COUNT_FIRST = 8;
60 virtual void erase(u32 index);
64 void eraseAllFast(
void);
70 void remove(u32 index);
72 void removeNullObject(
void);
97 constexpr __type&
operator[](u32 i)
const { GX_ASSERT(i < _count,
"count error.");
return _ppObject[i]; }
99 constexpr __type&
operator[](u32 i) { GX_ASSERT(i < _count,
"count error.");
return _ppObject[i]; }
109 constexpr u32
getCount(
void)
const {
return _count; }
111 void setCount(u32 count);
118 void setAllocCount(u32 count);
123 constexpr void getPropertyObject(
void* pValue, u32 index)
const { *
static_cast<GxClassBaseRoot**
>(pValue) = (index >= _count) ? nullptr : _ppObject[index]; }
125 constexpr void setPropertyObject(
const void* pValue, u32 index){
if(index < _count){ _ppObject[index] = *
static_cast<GxClassBaseRoot**
>(
const_cast<void*
>(pValue)); } }
176 void erase(u32 index)
override;
190GX_CORE_NAMESPACE_END()
#define GX_ALLOCATE_MEMORY(pAllocatorList, size)
Definition GxAllocator.h:536
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
メモリアロケータリスト
Definition GxAllocator.h:347
ALLOCATOR_TYPE
アロケータ定義
Definition GxAllocator.h:355
配列クラス
Definition GxArrayClassBase.h:18
constexpr __type & operator[](u32 i)
配列
Definition GxArrayClassBase.h:99
u32 _count
配列数
Definition GxArrayClassBase.h:135
constexpr GxArray::Iterator< __type > begin(void) const
先頭を取得
Definition GxArrayClassBase.h:101
u32 _allocCount
確保した配列数
Definition GxArrayClassBase.h:134
constexpr u32 getCount(void) const
配列数を取得
Definition GxArrayClassBase.h:109
constexpr u32 getAllocCount(void) const
メモリ確保数を取得
Definition GxArrayClassBase.h:113
GX_FORCE_INLINE void removeAll(void)
全削除
Definition GxArrayClassBase.h:74
constexpr GxArray::Iterator< __type > end(void) const
終端を取得
Definition GxArrayClassBase.h:103
GxAllocatorList::ALLOCATOR_TYPE _allocatorType
アロケータ種別
Definition GxArrayClassBase.h:136
GxClassBaseRoot ** _ppObject
配列データ
Definition GxArrayClassBase.h:133
virtual GxClassBaseRoot ** allocateMemory(u32 size)
メモリ確保関数
Definition GxArrayClassBase.h:82
constexpr GxClassBaseRoot * getObject(u32 index) const
オブジェクトの取得
Definition GxArrayClassBase.h:105
constexpr __type & operator[](u32 i) const
const配列
Definition GxArrayClassBase.h:97
virtual u32 expandAllocCount(void)
Definition GxArrayClassBase.h:85
参照カウンタ用配列クラス
Definition GxArrayClassBase.h:145
~GxArrayClassBaseReference(void) override
デストラクタ
Definition GxArrayClassBase.cpp:360
void setObject(u32 index, GxClassBaseRoot *pObject) override
オブジェクトの設定
Definition GxArrayClassBase.cpp:384
GxArrayClassBaseReference(GxAllocatorList::ALLOCATOR_TYPE allocatorType)
コンストラクタ
Definition GxArrayClassBase.h:165
void erase(u32 index) override
解放(nullptrにするだけ)
Definition GxArrayClassBase.cpp:369
オブジェクト基底クラス
Definition GxBase.h:88
基底クラス
Definition GxBase.h:51
イテレータ
Definition GxArray.h:35