CTR-Pia  5.4.3
Game Communication Engine
 全て クラス ネームスペース 関数 変数 型定義 列挙型 列挙型の値 ページ
common_TreeMapNodeBase.h
1 /*--------------------------------------------------------------------------------*
2  Copyright (C)Nintendo All rights reserved.
3 
4  These coded instructions, statements, and computer programs contain proprietary
5  information of Nintendo and/or its licensed developers and are protected by
6  national and international copyright laws. They may not be disclosed to third
7  parties or copied or duplicated in any form, in whole or in part, without the
8  prior written consent of Nintendo.
9 
10  The content herein is highly confidential and should be handled accordingly.
11  *--------------------------------------------------------------------------------*/
12 
13 
14 #pragma once
15 
16 #include <nn/pia/common/common_Definitions.h>
17 
18 
19 namespace nn
20 {
21 namespace pia
22 {
23 namespace common
24 {
25 
26 class TreeMapBase;
27 
28 /*!
29  @cond PRIVATE
30  @brief ツリーマップのノードとなるクラスです。
31  */
32 class TreeMapNodeBase : public common::RootObject
33 {
34  friend class TreeMapBase;
35 
36 protected:
37  TreeMapNodeBase()
38  {
39  InitNodeBase();
40  }
41 
42 protected:
43  TreeMapNodeBase* PrevBase() const;
44 
45  TreeMapNodeBase* NextBase() const;
46 
47 protected:
48  void InitNodeBase();
49 
50  TreeMapNodeBase* GetLeftBase() const
51  {
52  return m_pLeft;
53  }
54  TreeMapNodeBase* GetRightBase() const
55  {
56  return m_pRight;
57  }
58 
59 private:
60  // コピー禁止
61  TreeMapNodeBase(const TreeMapNodeBase& rhs);
62  TreeMapNodeBase& operator=(const TreeMapNodeBase& rhs);
63 
64 private:
65  TreeMapNodeBase* m_pUp;
66  TreeMapNodeBase* m_pLeft;
67  TreeMapNodeBase* m_pRight;
68  int m_Balance;
69 };
70 //! @endcond
71 }
72 }
73 } // end of namespace nn::pia::common