ACE 8.0.5
Loading...
Searching...
No Matches
ACE_RB_Tree_Node< EXT_ID, INT_ID > Class Template Reference

Implements a node in a Red-Black Tree ADT. More...

#include <RB_Tree.h>

Inheritance diagram for ACE_RB_Tree_Node< EXT_ID, INT_ID >:
Collaboration diagram for ACE_RB_Tree_Node< EXT_ID, INT_ID >:

Public Member Functions

 ACE_RB_Tree_Node (const EXT_ID &k, const INT_ID &t)
 Constructor.
 ~ACE_RB_Tree_Node ()
 Destructor.
EXT_ID & key ()
 Key accessor.
INT_ID & item ()
 Item accessor.
void color (RB_Tree_Node_Color c)
 Set color of the node.
RB_Tree_Node_Color color ()
 Get color of the node.
ACE_RB_Tree_Node< EXT_ID, INT_ID > * parent ()
 Accessor for node's parent pointer.
void parent (ACE_RB_Tree_Node< EXT_ID, INT_ID > *p)
 Mutator for node's parent pointer.
ACE_RB_Tree_Node< EXT_ID, INT_ID > * left ()
 Accessor for node's left child pointer.
void left (ACE_RB_Tree_Node< EXT_ID, INT_ID > *l)
 Mutator for node's left child pointer.
ACE_RB_Tree_Node< EXT_ID, INT_ID > * right ()
 Accessor for node's right child pointer.
void right (ACE_RB_Tree_Node< EXT_ID, INT_ID > *r)
 Mutator for node's right child pointer.

Private Attributes

EXT_ID k_
 The key.
INT_ID t_
 The item.
RB_Tree_Node_Color color_
 Color of the node.
ACE_RB_Tree_Node< EXT_ID, INT_ID > * parent_
 Pointer to node's parent.
ACE_RB_Tree_Node< EXT_ID, INT_ID > * left_
 Pointer to node's left child.
ACE_RB_Tree_Node< EXT_ID, INT_ID > * right_
 Pointer to node's right child.

Additional Inherited Members

Public Types inherited from ACE_RB_Tree_Node_Base
enum  RB_Tree_Node_Color { RED , BLACK }

Detailed Description

template<class EXT_ID, class INT_ID>
class ACE_RB_Tree_Node< EXT_ID, INT_ID >

Implements a node in a Red-Black Tree ADT.

Constructor & Destructor Documentation

◆ ACE_RB_Tree_Node()

template<class EXT_ID, class INT_ID>
class INT_ID ACE_RB_Tree_Node< EXT_ID, INT_ID >::ACE_RB_Tree_Node ( const EXT_ID & k,
const INT_ID & t )

Constructor.

◆ ~ACE_RB_Tree_Node()

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node< EXT_ID, INT_ID >::~ACE_RB_Tree_Node ( )

Destructor.

Member Function Documentation

◆ color() [1/2]

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node_Base::RB_Tree_Node_Color ACE_RB_Tree_Node< EXT_ID, INT_ID >::color ( )
inline

Get color of the node.

◆ color() [2/2]

template<class EXT_ID, class INT_ID>
void ACE_RB_Tree_Node< EXT_ID, INT_ID >::color ( ACE_RB_Tree_Node_Base::RB_Tree_Node_Color c)
inline

Set color of the node.

◆ item()

template<class EXT_ID, class INT_ID>
INT_ID & ACE_RB_Tree_Node< EXT_ID, INT_ID >::item ( )
inline

Item accessor.

◆ key()

template<class EXT_ID, class INT_ID>
EXT_ID & ACE_RB_Tree_Node< EXT_ID, INT_ID >::key ( )
inline

Key accessor.

◆ left() [1/2]

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node< EXT_ID, INT_ID > * ACE_RB_Tree_Node< EXT_ID, INT_ID >::left ( )
inline

Accessor for node's left child pointer.

◆ left() [2/2]

template<class EXT_ID, class INT_ID>
void ACE_RB_Tree_Node< EXT_ID, INT_ID >::left ( ACE_RB_Tree_Node< EXT_ID, INT_ID > * l)
inline

Mutator for node's left child pointer.

◆ parent() [1/2]

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node< EXT_ID, INT_ID > * ACE_RB_Tree_Node< EXT_ID, INT_ID >::parent ( )
inline

Accessor for node's parent pointer.

◆ parent() [2/2]

template<class EXT_ID, class INT_ID>
void ACE_RB_Tree_Node< EXT_ID, INT_ID >::parent ( ACE_RB_Tree_Node< EXT_ID, INT_ID > * p)
inline

Mutator for node's parent pointer.

◆ right() [1/2]

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node< EXT_ID, INT_ID > * ACE_RB_Tree_Node< EXT_ID, INT_ID >::right ( )
inline

Accessor for node's right child pointer.

◆ right() [2/2]

template<class EXT_ID, class INT_ID>
void ACE_RB_Tree_Node< EXT_ID, INT_ID >::right ( ACE_RB_Tree_Node< EXT_ID, INT_ID > * r)
inline

Mutator for node's right child pointer.

Member Data Documentation

◆ color_

template<class EXT_ID, class INT_ID>
RB_Tree_Node_Color ACE_RB_Tree_Node< EXT_ID, INT_ID >::color_
private

Color of the node.

◆ k_

template<class EXT_ID, class INT_ID>
EXT_ID ACE_RB_Tree_Node< EXT_ID, INT_ID >::k_
private

The key.

◆ left_

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node<EXT_ID, INT_ID>* ACE_RB_Tree_Node< EXT_ID, INT_ID >::left_
private

Pointer to node's left child.

◆ parent_

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node<EXT_ID, INT_ID>* ACE_RB_Tree_Node< EXT_ID, INT_ID >::parent_
private

Pointer to node's parent.

◆ right_

template<class EXT_ID, class INT_ID>
ACE_RB_Tree_Node<EXT_ID, INT_ID>* ACE_RB_Tree_Node< EXT_ID, INT_ID >::right_
private

Pointer to node's right child.

◆ t_

template<class EXT_ID, class INT_ID>
INT_ID ACE_RB_Tree_Node< EXT_ID, INT_ID >::t_
private

The item.


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