SmiTreeNode template class. More...
#include <SmiScenarioTree.hpp>
Public Types | |
typedef map< int, SmiTreeNode < T > * > | child_label_map |
Public Member Functions | |
bool | hasParent () |
bool | hasChild () |
bool | hasSibling () |
SmiTreeNode< T > * | getParent () |
SmiTreeNode< T > * | getChild () |
SmiTreeNode< T > * | getSibling () |
void | setLastChildLabel (int label) |
SmiTreeNode< T > * | getChildByLabel (int n) |
int | depth () |
int | numChildren () |
int | scenario () |
void | setScenario (int s) |
SmiTreeNode< T > * | addChild (T cd, int scenario) |
vector< SmiTreeNode< T > * > * | getChildren () |
T | getDataPtr () |
Constructors, destructors and major modifying methods | |
SmiTreeNode () | |
Default Constructor creates an empty node. | |
SmiTreeNode (T p) | |
Constructor from P. | |
~SmiTreeNode () | |
Destructor. | |
Protected Member Functions | |
void | setChild (SmiTreeNode< T > *c) |
void | setSibling (SmiTreeNode< T > *s) |
SmiTreeNode< T > * | getParentP () |
SmiTreeNode< T > * | getChildP () |
SmiTreeNode< T > * | getSiblingP () |
Private Attributes | |
SmiTreeNode< T > * | parent_ |
SmiTreeNode< T > * | child_ |
SmiTreeNode< T > * | sibling_ |
int | scen_ |
int | nchild_ |
int | depth_ |
T | ptr_ |
child_label_map | child_labels_ |
SmiTreeNode template class.
Manages pointers to parent, child and sibling for tree navigation. Template class instance is a pointer to an object that must be created with "new" operator.
Definition at line 34 of file SmiScenarioTree.hpp.
typedef map<int,SmiTreeNode<T>*> SmiTreeNode< T >::child_label_map |
Definition at line 38 of file SmiScenarioTree.hpp.
SmiTreeNode< T >::SmiTreeNode | ( | ) | [inline] |
Default Constructor creates an empty node.
SmiTreeNode< T >::SmiTreeNode | ( | T | p | ) | [inline] |
Constructor from P.
SmiTreeNode< T >::~SmiTreeNode | ( | ) | [inline] |
Destructor.
Definition at line 130 of file SmiScenarioTree.hpp.
bool SmiTreeNode< T >::hasParent | ( | ) | [inline] |
Definition at line 40 of file SmiScenarioTree.hpp.
bool SmiTreeNode< T >::hasChild | ( | ) | [inline] |
Definition at line 41 of file SmiScenarioTree.hpp.
bool SmiTreeNode< T >::hasSibling | ( | ) | [inline] |
Definition at line 42 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getParent | ( | ) | [inline] |
Definition at line 44 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getChild | ( | ) | [inline] |
Definition at line 45 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getSibling | ( | ) | [inline] |
Definition at line 46 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setLastChildLabel | ( | int | label | ) | [inline] |
Definition at line 48 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getChildByLabel | ( | int | n | ) | [inline] |
Definition at line 50 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::depth | ( | ) | [inline] |
Definition at line 70 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::numChildren | ( | ) | [inline] |
Definition at line 71 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::scenario | ( | ) | [inline] |
Definition at line 72 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setScenario | ( | int | s | ) | [inline] |
Definition at line 73 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::addChild | ( | T | cd, | |
int | scenario | |||
) | [inline] |
Definition at line 75 of file SmiScenarioTree.hpp.
vector<SmiTreeNode<T> *>* SmiTreeNode< T >::getChildren | ( | ) | [inline] |
Definition at line 88 of file SmiScenarioTree.hpp.
T SmiTreeNode< T >::getDataPtr | ( | ) | [inline] |
Definition at line 102 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setChild | ( | SmiTreeNode< T > * | c | ) | [inline, protected] |
Definition at line 141 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setSibling | ( | SmiTreeNode< T > * | s | ) | [inline, protected] |
Definition at line 142 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getParentP | ( | ) | [inline, protected] |
Definition at line 143 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getChildP | ( | ) | [inline, protected] |
Definition at line 144 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getSiblingP | ( | ) | [inline, protected] |
Definition at line 145 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::parent_ [private] |
Definition at line 149 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::child_ [private] |
Definition at line 150 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::sibling_ [private] |
Definition at line 151 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::scen_ [private] |
Definition at line 152 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::nchild_ [private] |
Definition at line 153 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::depth_ [private] |
Definition at line 154 of file SmiScenarioTree.hpp.
T SmiTreeNode< T >::ptr_ [private] |
Definition at line 155 of file SmiScenarioTree.hpp.
child_label_map SmiTreeNode< T >::child_labels_ [private] |
Definition at line 156 of file SmiScenarioTree.hpp.