OROCHI
 
Loading...
Searching...
No Matches
GxTree Class Reference

ツリー構造クラス (クラスオブジェクト) More...

#include <GxTree.h>

Inheritance diagram for GxTree:
Collaboration diagram for GxTree:

Classes

class  GxIterator
 ツリー構造イテレータクラス More...
 
class  GxNode
 ツリーノードクラス More...
 

Public Types

定義
enum  ATTRIBUTE { ATTRIBUTE_USE_REFERENCE_COUNT = 1 << 0 }
 属性 More...
 

Public Member Functions

コンストラクタ
 GxTree (u32 attribute=0)
 コンストラクタ
 
 ~GxTree (void)
 デストラクタ
 
アクセサ
GX_FORCE_INLINE GxTree::GxNodegetRootNode (void) const
 ルートノードの取得
 
constexpr u32 getAttribute (void) const
 属性の取得
 
constexpr void setAttribute (ATTRIBUTE attribute)
 属性の設定
 
constexpr void clearAttribute (ATTRIBUTE attribute)
 属性の解除
 
GX_FORCE_INLINE b32 isAttribute (ATTRIBUTE attribute) const
 属性の判定
 
- Public Member Functions inherited from GxTreeBase
 GxTreeBase (void)
 コンストラクタ
 
 ~GxTreeBase (void)
 デストラクタ
 
constexpr void setRootNode (GxTreeBase::GxNodeBase *pNode)
 ルートノードの設定
 
constexpr GxTreeBase::GxNodeBasegetRootNode (void) const
 ルートノードの取得
 
GxTreeBase::GxNodeBaseaddRootNode (void *pObject)
 Rootノード追加
 
GxTreeBase::GxNodeBaseaddNextNode (GxTreeBase::GxNodeBase *pBase, void *pObject)
 Nextノード追加
 
GxTreeBase::GxNodeBaseaddChildNode (GxTreeBase::GxNodeBase *pBase, void *pObject)
 Childノード追加
 
void erase (GxTreeBase::GxNodeBase *pNode=nullptr)
 ノード削除
 
void eraseAll (GxTreeBase::GxNodeBase *pNode)
 ノード全削除
 
GxTreeBase::GxNodeBasefind (const void *pObject)
 ノード探索
 
- Public Member Functions inherited from GxClassBase
constexpr GxClassBase (void)
 コンストラクタ
 
constexpr GxClassBase (const GxClassBase &base)
 コピーコンストラクタ
 
 ~GxClassBase (void) override
 デストラクタ
 
- Public Member Functions inherited from GxClassBaseRoot
constexpr GxClassBaseRoot (void)
 コンストラクタ
 
constexpr GxClassBaseRoot (const GxClassBaseRoot &)
 コピーコンストラクタ
 
virtual ~GxClassBaseRoot (void)
 デストラクタ
 
constexpr GxClassBaseRootoperator= (const GxClassBaseRoot &)
 代入演算子
 
virtual GxRttigetRtti (void) const =0
 Rttiの取得
 
virtual GX_FORCE_INLINE const GxTypedObjectgetDefaultObject (void)
 デフォルトオブジェクトを取得
 
GX_FORCE_INLINE b32 isDefaultObject (void)
 デフォルトオブジェクト判定
 

Protected Attributes

メンバ変数
u32 _attribute
 属性
 
- Protected Attributes inherited from GxTreeBase
GxTreeBase::GxNodeBase_pRoot
 ルートノード
 

操作

GX_FORCE_INLINE GxTree::GxNodeaddRootNode (GxClassBaseReference *pObject)
 Rootノード追加
 
GX_FORCE_INLINE GxTree::GxNodeaddNextNode (GxTree::GxNode *pBase, GxClassBaseReference *pObject)
 Nextノード追加
 
GX_FORCE_INLINE GxTree::GxNodeaddChildNode (GxTree::GxNode *pBase, GxClassBaseReference *pObject)
 Childノード追加
 
GxNodeBaseallocateNode (void) override
 Nodeのメモリ確保
 

Additional Inherited Members

- Static Public Member Functions inherited from GxClassBaseRoot
static GX_FORCE_INLINE GxRtti__getStaticRtti (void)
 Rttiの取得
 
- Protected Member Functions inherited from GxTreeBase

Detailed Description

ツリー構造クラス (クラスオブジェクト)

Member Enumeration Documentation

◆ ATTRIBUTE

属性

Enumerator
ATTRIBUTE_USE_REFERENCE_COUNT 

属性:参照カウンタ使用フラグ

Member Function Documentation

◆ allocateNode()

GxTreeBase::GxNodeBase * GxTree::allocateNode ( void )
overrideprotectedvirtual

Nodeのメモリ確保

Returns
確保したノードメモリ

Reimplemented from GxTreeBase.


The documentation for this class was generated from the following files: