12GX_CORE_NAMESPACE_BEGIN()
59 virtual GxNodeClassBase* allocNode(
void);
68 GX_FORCE_INLINE GxIterator<GxClassBaseRoot*> begin(
void);
70 GX_FORCE_INLINE GxIterator<GxClassBaseRoot*> end(
void);
76 GxNodeClassBase* getNode(u32 index)
const;
78 constexpr u32
getCount(
void)
const {
return _count; }
95 void erase(GxNodeClassBase* pNodeClassBase);
99 void sortQuick(
GxProperty* pProperty,
const SORT sort);
103 template<
class T>
void sortQuickSub(
GxProperty* pProperty, GxNodeClassBase* pTop, GxNodeClassBase* pBottom, SORT sort);
105 template<
class T>
b32 getCompareResult(T& value0, T& value1, SORT sort);
124template<>
b32 GxListClassBase::getCompareResult<GxString>(
GxString& value0,
GxString& value1, SORT sort);
229 GX_FORCE_INLINE
const T
operator[](u32 i)
const;
233 GX_FORCE_INLINE T
getTop(
void);
241 GX_FORCE_INLINE T
getNext(
void);
243 GX_FORCE_INLINE T
getFromIndex(u32 index)
const {
return this[index]; }
289 GxNodeClassBase*
allocNode(
void)
override;
302 GX_FORCE_INLINE GxNodeClassBaseReference*
getTop(
void)
const;
304 GX_FORCE_INLINE GxNodeClassBaseReference*
getBottom(
void)
const;
306 GX_FORCE_INLINE GxNodeClassBaseReference*
getNode(u32 index)
const;
363 void releaseObject(
void);
370GX_CORE_NAMESPACE_END()
#define GX_PROHIBIT_CLASS_BASE(__CLASS__)
GxClassBase継承の禁止宣言
Definition GxBase.h:240
@ DOWN
リソースIDの下位32bitを元にした降順
@ UP
リソースIDの下位32bitを元にした昇順
メモリアロケータリスト
Definition GxAllocator.h:347
ALLOCATOR_TYPE
アロケータ定義
Definition GxAllocator.h:355
オブジェクト基底クラス
Definition GxBase.h:88
参照オブジェクト基底クラス
Definition GxBase.h:122
基底クラス
Definition GxBase.h:51
イテレータ
Definition GxListClassBase.h:194
GX_FORCE_INLINE GxIterator(GxListClassBase *pListClassBase)
コンストラクタ
Definition GxListClassBase.h:201
GX_FORCE_INLINE const GxListClassBase::GxIterator< T > & operator=(GxListClassBase::GxIterator< T > &i)
代入
Definition GxListClassBase.h:214
GX_FORCE_INLINE T getTop(void)
先頭を取得
Definition GxListClassBase.inl:69
GX_FORCE_INLINE T getCurrent(void) const
現在のオブジェクトを取得
Definition GxListClassBase.inl:117
GX_FORCE_INLINE T operator*(void) const
オブジェクト取得
Definition GxListClassBase.h:216
GX_FORCE_INLINE b32 operator!=(const GxIterator &iterator) const
不一致判定
Definition GxListClassBase.h:220
GX_FORCE_INLINE GxIterator< T > & operator++(void)
インクリメント
Definition GxListClassBase.h:218
GX_FORCE_INLINE T getFromIndex(u32 index) const
指定インデックスのものを取得
Definition GxListClassBase.h:243
virtual ~GxIterator(void)
デストラクタ
Definition GxListClassBase.h:205
GX_FORCE_INLINE GxIterator(const GxListClassBase::GxIterator< T > &i)
コピーコンストラクタ
Definition GxListClassBase.h:203
GX_FORCE_INLINE T getNext(void)
次を取得
Definition GxListClassBase.inl:131
GX_FORCE_INLINE T getPrevious(void)
前を取得
Definition GxListClassBase.inl:99
constexpr GxNodeClassBase * getCurrentNode(void) const
カレントノードを取得
Definition GxListClassBase.h:245
GX_FORCE_INLINE T getBottom(void)
終端を取得
Definition GxListClassBase.inl:84
GX_FORCE_INLINE const T operator[](u32 i) const
const配列
Definition GxListClassBase.inl:38
GxClassBase用連結リストノードクラス
Definition GxListClassBase.h:132
GxClassBaseRoot * _pObject
所有オブジェクト
Definition GxListClassBase.h:181
~GxNodeClassBase(void) override
デストラクタ
Definition GxListClassBase.h:154
virtual void setObject(GxClassBaseRoot *pObject)
オブジェクトを設定
Definition GxListClassBase.h:172
constexpr GxNodeClassBase * getPrevious(void) const
前のノードを取得
Definition GxListClassBase.h:165
constexpr GxClassBaseRoot * getObject(void) const
オブジェクトを取得
Definition GxListClassBase.h:169
GxNodeClassBase(void)
デフォルトコンストラクタ
Definition GxListClassBase.h:152
GxListClassBase * _pParent
親リスト
Definition GxListClassBase.h:182
constexpr GxListClassBase * getParent(void) const
親リストを取得
Definition GxListClassBase.h:163
constexpr GxNodeClassBase * getNext(void) const
次のノードを取得
Definition GxListClassBase.h:167
GxClassBase用連結リストクラス
Definition GxListClassBase.h:18
constexpr u32 getCount(void) const
要素数を取得
Definition GxListClassBase.h:78
GxListClassBase::GxNodeClassBase * _pTop
先頭ノード
Definition GxListClassBase.h:115
constexpr GxNodeClassBase * getTop(void) const
先頭を取得
Definition GxListClassBase.h:72
u32 _count
ノード数
Definition GxListClassBase.h:117
constexpr GxNodeClassBase * getBottom(void) const
終端を取得
Definition GxListClassBase.h:74
constexpr void setAllocatorType(GxAllocatorList::ALLOCATOR_TYPE allocatorType)
アロケータタイプを指定
Definition GxListClassBase.h:80
SORT
ソート方法
Definition GxListClassBase.h:34
GxListClassBase(void)
デフォルトコンストラクタ
Definition GxListClassBase.h:52
GxListClassBase::GxNodeClassBase * _pBottom
終端ノード
Definition GxListClassBase.h:116
GxAllocatorList::ALLOCATOR_TYPE _allocatorType
アロケータ種別
Definition GxListClassBase.h:118
GxClassBaseReference用連結リストノードクラス
Definition GxListClassBase.h:315
GX_FORCE_INLINE GxListClassBaseReference * getParent(void) const
親リストを取得
Definition GxListClassBase.inl:176
void setObject(GxClassBaseRoot *pObject) override
オブジェクトを設定
Definition GxListClassBase.cpp:529
~GxNodeClassBaseReference(void) override
デストラクタ
Definition GxListClassBase.cpp:520
GX_FORCE_INLINE GxNodeClassBaseReference * getNext(void) const
次のノードを取得
Definition GxListClassBase.inl:194
GxNodeClassBaseReference(void)
デフォルトコンストラクタ
Definition GxListClassBase.h:334
GX_FORCE_INLINE GxClassBaseReference * getObject(void) const
オブジェクトを取得
Definition GxListClassBase.inl:203
GX_FORCE_INLINE GxNodeClassBaseReference * getPrevious(void) const
前のノードを取得
Definition GxListClassBase.inl:185
GxClassBaseReference用連結リストクラス
Definition GxListClassBase.h:263
~GxListClassBaseReference(void) override
デストラクタ
Definition GxListClassBase.h:286
GX_FORCE_INLINE GxNodeClassBaseReference * getNode(u32 index) const
指定インデックスのノードを取得
Definition GxListClassBase.inl:167
GX_FORCE_INLINE GxNodeClassBaseReference * getTop(void) const
先頭を取得
Definition GxListClassBase.inl:148
GxListClassBaseReference(GxAllocatorList::ALLOCATOR_TYPE allocatorType)
コンストラクタ
Definition GxListClassBase.h:284
GxNodeClassBase * allocNode(void) override
Nodeのメモリ確保
Definition GxListClassBase.cpp:505
GX_FORCE_INLINE GxNodeClassBaseReference * getBottom(void) const
終端を取得
Definition GxListClassBase.inl:157
プロパティクラス
Definition GxProperty.h:48
文字列型クラス
Definition GxString.h:18
32bitブーリアン
Definition GxDefine.h:173