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

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

#include <GxTree.h>

Inheritance diagram for GxTreeBase:
Collaboration diagram for GxTreeBase:

Classes

class  GxIteratorBase
 ツリー構造イテレータクラス (任意オブジェクト用) More...
 
class  GxNodeBase
 ツリーノードクラス (任意オブジェクト用) More...
 

Public Member Functions

コンストラクタ
 GxTreeBase (void)
 コンストラクタ
 
 ~GxTreeBase (void)
 デストラクタ
 
アクセサ
constexpr void setRootNode (GxTreeBase::GxNodeBase *pNode)
 ルートノードの設定
 
constexpr GxTreeBase::GxNodeBasegetRootNode (void) const
 ルートノードの取得
 
- 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

メンバ変数
GxTreeBase::GxNodeBase_pRoot
 ルートノード
 

操作

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)
 ノード探索
 
virtual GxNodeBaseallocateNode (void)
 Nodeのメモリ確保
 

Additional Inherited Members

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

Detailed Description

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

Member Function Documentation

◆ addChildNode()

GxTreeBase::GxNodeBase * GxTreeBase::addChildNode ( GxTreeBase::GxNodeBase * pBase,
void * pObject )

Childノード追加

Parameters
pBase[in,out] 基点となるノードポインタ
pObject[in] ノードに登録するオブジェクトポインタ
Returns
追加したノードポインタ
Note
ノードはChildの終端に追加されます
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addNextNode()

GxTreeBase::GxNodeBase * GxTreeBase::addNextNode ( GxTreeBase::GxNodeBase * pBase,
void * pObject )

Nextノード追加

Parameters
pBase[in,out] 基点となるノードポインタ
pObject[in] ノードに登録するオブジェクトポインタ
Returns
追加したノードポインタ
Note
ノードはNextの終端に追加されます
Here is the call graph for this function:
Here is the caller graph for this function:

◆ addRootNode()

GxTreeBase::GxNodeBase * GxTreeBase::addRootNode ( void * pObject)

Rootノード追加

Parameters
pObject[in] ノードに登録するオブジェクトポインタ
Returns
追加したノードポインタ
Here is the call graph for this function:
Here is the caller graph for this function:

◆ allocateNode()

GxTreeBase::GxNodeBase * GxTreeBase::allocateNode ( void )
protectedvirtual

Nodeのメモリ確保

Returns
確保したノードメモリ

Reimplemented in GxTree.

Here is the caller graph for this function:

◆ erase()

void GxTreeBase::erase ( GxTreeBase::GxNodeBase * pNode = nullptr)

ノード削除

Parameters
pNode[in,out] 削除するノード (nullptrの場合、全削除)
Here is the call graph for this function:

◆ eraseAll()

void GxTreeBase::eraseAll ( GxTreeBase::GxNodeBase * pNode)

ノード全削除

Parameters
pNode[in,out] 削除するノード
Here is the call graph for this function:
Here is the caller graph for this function:

◆ find()

GxTreeBase::GxNodeBase * GxTreeBase::find ( const void * pObject)

ノード探索

Parameters
pObject[in] 探索するオブジェクト
Returns
対象オブジェクトが登録されたノードポインタ (nullptrの場合、未発見)
Here is the call graph for this function:

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