Scenario Tree. More...
#include <SmiScenarioTree.hpp>
Public Types | |
typedef std::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) |
std::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_ |
Scenario Tree.
This class is used for storing and accessing scenario trees. 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 27 of file SmiScenarioTree.hpp.
typedef std::map<int, SmiTreeNode<T>*> SmiTreeNode< T >::child_label_map |
Definition at line 31 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.
bool SmiTreeNode< T >::hasParent | ( | ) | [inline] |
Definition at line 33 of file SmiScenarioTree.hpp.
bool SmiTreeNode< T >::hasChild | ( | ) | [inline] |
Definition at line 36 of file SmiScenarioTree.hpp.
bool SmiTreeNode< T >::hasSibling | ( | ) | [inline] |
Definition at line 39 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getParent | ( | ) | [inline] |
Definition at line 43 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getChild | ( | ) | [inline] |
Definition at line 46 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getSibling | ( | ) | [inline] |
Definition at line 49 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setLastChildLabel | ( | int | label | ) | [inline] |
Definition at line 53 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getChildByLabel | ( | int | n | ) | [inline] |
Definition at line 57 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::depth | ( | ) | [inline] |
Definition at line 76 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::numChildren | ( | ) | [inline] |
Definition at line 79 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::scenario | ( | ) | [inline] |
Definition at line 82 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setScenario | ( | int | s | ) | [inline] |
Definition at line 85 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::addChild | ( | T | cd, | |
int | scenario | |||
) | [inline] |
Definition at line 90 of file SmiScenarioTree.hpp.
std::vector<SmiTreeNode<T> *>* SmiTreeNode< T >::getChildren | ( | ) | [inline] |
Definition at line 102 of file SmiScenarioTree.hpp.
T SmiTreeNode< T >::getDataPtr | ( | ) | [inline] |
Definition at line 115 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setChild | ( | SmiTreeNode< T > * | c | ) | [inline, protected] |
Definition at line 154 of file SmiScenarioTree.hpp.
void SmiTreeNode< T >::setSibling | ( | SmiTreeNode< T > * | s | ) | [inline, protected] |
Definition at line 157 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getParentP | ( | ) | [inline, protected] |
Definition at line 160 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getChildP | ( | ) | [inline, protected] |
Definition at line 163 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::getSiblingP | ( | ) | [inline, protected] |
Definition at line 166 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::parent_ [private] |
Definition at line 171 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::child_ [private] |
Definition at line 172 of file SmiScenarioTree.hpp.
SmiTreeNode<T>* SmiTreeNode< T >::sibling_ [private] |
Definition at line 173 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::scen_ [private] |
Definition at line 174 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::nchild_ [private] |
Definition at line 175 of file SmiScenarioTree.hpp.
int SmiTreeNode< T >::depth_ [private] |
Definition at line 176 of file SmiScenarioTree.hpp.
T SmiTreeNode< T >::ptr_ [private] |
Definition at line 177 of file SmiScenarioTree.hpp.
child_label_map SmiTreeNode< T >::child_labels_ [private] |
Definition at line 178 of file SmiScenarioTree.hpp.