17 #include <pia/common/common_definitions.h> 18 #include <pia/common/common_TreeMapNodeBase.h> 31 class TreeMapBase :
public common::RootObject
33 typedef TreeMapNodeBase Node;
49 return m_pRoot == NULL;
61 bool IsIncludeNodeBase(
const Node* cpNode)
const;
65 Node* FrontNodeBase()
const;
66 Node* BackNodeBase()
const;
68 void InsertNodeRoot(Node* pNode);
69 void InsertNodeLeft(Node* pNode, Node* pUp);
70 void InsertNodeRight(Node* pNode, Node* pUp);
71 void ReplaceNode(Node* pNode, Node* pOld);
73 void EraseNodeBase(Node* pNode);
75 Node* RotateRight(Node* pNode);
76 Node* RotateLeft(Node* pNode);
79 Node* GetRootBase()
const 86 TreeMapBase(
const TreeMapBase& rhs);
87 TreeMapBase& operator=(
const TreeMapBase& rhs);
89 u32 CountImpl(
const Node* cpNode)
const;
91 void ClearNodeBaseImpl(Node* pNode);
93 void UpdateBalanceInsert(Node* pNode);