This class represents a node in the tree.
It contains the key, the value, and internal tree management data.
Definition at line 204 of file fbxredblacktree.h.
#include <fbxredblacktree.h>
Public Member Functions | |
| ConstKeyType & | GetKey () const |
| ConstValueType & | GetValue () const |
| ValueType & | GetValue () |
| const RecordType * | Minimum () const |
| RecordType * | Minimum () |
| const RecordType * | Maximum () const |
| RecordType * | Maximum () |
| const RecordType * | Predecessor () const |
| RecordType * | Predecessor () |
| const RecordType * | Successor () const |
| RecordType * | Successor () |
| const int | GetBlackDepth () |
Friends | |
| class | FbxRedBlackTree |
| ConstKeyType& GetKey | ( | ) | const [inline] |
Definition at line 207 of file fbxredblacktree.h.
{ return mData.GetKey(); }
| ConstValueType& GetValue | ( | ) | const [inline] |
Definition at line 208 of file fbxredblacktree.h.
{ return mData.GetValue(); }
| ValueType& GetValue | ( | ) | [inline] |
Definition at line 209 of file fbxredblacktree.h.
{ return mData.GetValue(); }
| const RecordType* Minimum | ( | ) | const [inline] |
Definition at line 211 of file fbxredblacktree.h.
{
const RecordType* lParent = 0;
const RecordType* lNode = this;
while (lNode != 0)
{
lParent = lNode;
lNode = lNode->mLeftChild;
}
return lParent;
}
| RecordType* Minimum | ( | ) | [inline] |
Definition at line 224 of file fbxredblacktree.h.
{
RecordType* lParent = 0;
RecordType* lNode = this;
while (lNode != 0)
{
lParent = lNode;
lNode = lNode->mLeftChild;
}
return lParent;
}
| const RecordType* Maximum | ( | ) | const [inline] |
Definition at line 237 of file fbxredblacktree.h.
{
const RecordType* lParent = 0;
const RecordType* lNode = this;
while (lNode != 0)
{
lParent = lNode;
lNode = lNode->mRightChild;
}
return lParent;
}
| RecordType* Maximum | ( | ) | [inline] |
Definition at line 250 of file fbxredblacktree.h.
{
RecordType* lParent = 0;
RecordType* lNode = this;
while (lNode != 0)
{
lParent = lNode;
lNode = lNode->mRightChild;
}
return lParent;
}
| const RecordType* Predecessor | ( | ) | const [inline] |
Definition at line 263 of file fbxredblacktree.h.
{
if (mLeftChild)
{
return mLeftChild->Maximum();
}
else
{
const RecordType* lParent = mParent;
const RecordType* lNode = this;
while (lParent && lParent->mLefttChild == lNode)
{
lNode = lParent;
lParent = lParent->mParent;
}
return lParent;
}
}
| RecordType* Predecessor | ( | ) | [inline] |
Definition at line 284 of file fbxredblacktree.h.
{
if (mLeftChild)
{
return mLeftChild->Maximum();
}
else
{
RecordType* lParent = mParent;
RecordType* lNode = this;
while (lParent && lParent->mLeftChild == lNode)
{
lNode = lParent;
lParent = lParent->mParent;
}
return lParent;
}
}
| const RecordType* Successor | ( | ) | const [inline] |
Definition at line 305 of file fbxredblacktree.h.
{
if (mRightChild)
{
return mRightChild->Minimum();
}
else
{
const RecordType* lParent = mParent;
const RecordType* lNode = this;
while (lParent && lParent->mRightChild == lNode)
{
lNode = lParent;
lParent = lParent->mParent;
}
return lParent;
}
}
| RecordType* Successor | ( | ) | [inline] |
Definition at line 326 of file fbxredblacktree.h.
{
if (mRightChild)
{
return mRightChild->Minimum();
}
else
{
RecordType* lParent = mParent;
RecordType* lNode = this;
while (lParent && lParent->mRightChild == lNode)
{
lNode = lParent;
lParent = lParent->mParent;
}
return lParent;
}
}
| const int GetBlackDepth | ( | ) | [inline] |
Definition at line 347 of file fbxredblacktree.h.
{ return mBlackDepth; }
friend class FbxRedBlackTree [friend] |
Definition at line 374 of file fbxredblacktree.h.