UT_BidirectionalTree< T > Class Template Reference

#include <UT_BidirectionalTree.h>

List of all members.

Public Types

typedef UT_BidirectionalTree< T > NodeType

Public Member Functions

 UT_BidirectionalTree ()
virtual ~UT_BidirectionalTree ()
void unlinkAll ()
 Unlink this node from the tree completely.
void setParent (NodeType *parent)
void addChildToHead (NodeType *child)
 Add a child node to the head of the children list. O(1).
void removeChild (NodeType *child)
 Remove the given child node.
void removeAllChildren ()
 Remove all children from the tree.
T * getParent () const
 Iterators.
T * getFirstChild () const
 Iterators.
T * getPrevSibling () const
 Iterators.
T * getNextSibling () const
 Iterators.
bool hasParent () const
 Some utility methods.
bool hasChildren () const
 Some utility methods.
bool hasSiblings () const
 Some utility methods.
bool isInTree () const
 Some utility methods.


Detailed Description

template<typename T>
class UT_BidirectionalTree< T >

Definition at line 39 of file UT_BidirectionalTree.h.


Member Typedef Documentation

template<typename T >
typedef UT_BidirectionalTree<T> UT_BidirectionalTree< T >::NodeType

Definition at line 42 of file UT_BidirectionalTree.h.


Constructor & Destructor Documentation

template<typename T >
UT_BidirectionalTree< T >::UT_BidirectionalTree (  )  [inline]

Definition at line 44 of file UT_BidirectionalTree.h.

template<typename T >
virtual UT_BidirectionalTree< T >::~UT_BidirectionalTree (  )  [inline, virtual]

Definition at line 51 of file UT_BidirectionalTree.h.


Member Function Documentation

template<typename T >
void UT_BidirectionalTree< T >::addChildToHead ( NodeType child  )  [inline]

Add a child node to the head of the children list. O(1).

Definition at line 85 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getFirstChild (  )  const [inline]

Iterators.

Definition at line 132 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getNextSibling (  )  const [inline]

Iterators.

Definition at line 140 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getParent (  )  const [inline]

Iterators.

Definition at line 127 of file UT_BidirectionalTree.h.

template<typename T >
T* UT_BidirectionalTree< T >::getPrevSibling (  )  const [inline]

Iterators.

Definition at line 136 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::hasChildren (  )  const [inline]

Some utility methods.

Definition at line 149 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::hasParent (  )  const [inline]

Some utility methods.

Definition at line 148 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::hasSiblings (  )  const [inline]

Some utility methods.

Definition at line 150 of file UT_BidirectionalTree.h.

template<typename T >
bool UT_BidirectionalTree< T >::isInTree (  )  const [inline]

Some utility methods.

Definition at line 151 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::removeAllChildren (  )  [inline]

Remove all children from the tree.

Definition at line 119 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::removeChild ( NodeType child  )  [inline]

Remove the given child node.

Definition at line 97 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::setParent ( NodeType parent  )  [inline]

Set the parent of this node. If it already belongs to a tree, it will first be removed from it.

Definition at line 65 of file UT_BidirectionalTree.h.

template<typename T >
void UT_BidirectionalTree< T >::unlinkAll (  )  [inline]

Unlink this node from the tree completely.

Definition at line 57 of file UT_BidirectionalTree.h.


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

Generated on Fri May 25 00:10:46 2012 for HDK by  doxygen 1.5.9