#include <tree.hh>
Public Types | |
typedef std::vector< tree_node < T > * > | children_t |
Public Member Functions | |
tree_node< T > * | add_child (tree_node< T > *tree_node) |
Bind tree_node to the current tree_node and become its child. | |
tree_node< T > * | add_child (T elt) |
Create a tree_node with elt which become the child of the current tree_node. | |
bool | check_consistency () |
Check the consistency of the tree_node. | |
const children_t & | children () const |
The getter of the children. | |
children_t & | children () |
The getter of the children. | |
tree_node< T > * | delete_tree_node () |
Delete the current tree_node. | |
const T & | elt () const |
The const getter of the element. | |
T & | elt () |
The getter of the element. | |
tree_node< T > * | parent () |
The getter of the parent. | |
void | print (std::ostream &ostr, int level=0) |
Print on ostr the arborescence with the current tree_node as root. | |
tree_node< T > * | search (T &elt) |
Search the tree_node with value elt in the arborescence of the current tree_node. | |
int | search_rec (tree_node< T > **res, T &elt) |
The using method for method search. | |
void | set_parent (tree_node< T > *parent) |
Bind tree_node to the current tree_node and become its parent. | |
tree_node (T elt) | |
Constructor. | |
tree_node () | |
Constructor. | |
Private Attributes | |
std::vector< tree_node< T > * > | child_ |
The children. | |
T | elt_ |
The value. | |
tree_node< T > * | parent_ |
The tree_node parent. |
Definition at line 58 of file tree.hh.
typedef std::vector< tree_node<T>* > mln::util::tree_node< T >::children_t |
mln::util::tree_node< T >::tree_node | ( | ) | [inline] |
mln::util::tree_node< T >::tree_node | ( | T | elt | ) | [inline] |
tree_node< T > * mln::util::tree_node< T >::add_child | ( | tree_node< T > * | tree_node | ) | [inline] |
Bind tree_node
to the current tree_node and become its child.
Definition at line 407 of file tree.hh.
References mln::util::tree_node< T >::children(), mln::util::tree_node< T >::parent(), and mln::util::tree_node< T >::parent_.
tree_node< T > * mln::util::tree_node< T >::add_child | ( | T | elt | ) | [inline] |
Create a tree_node with elt
which become the child of the current tree_node.
[in] | elt | The element of the new child to add. |
Definition at line 394 of file tree.hh.
References mln::util::tree_node< T >::child_, and mln::util::tree_node< T >::parent_.
bool mln::util::tree_node< T >::check_consistency | ( | ) | [inline] |
Check the consistency of the tree_node.
Definition at line 519 of file tree.hh.
References mln::util::tree_node< T >::child_.
const std::vector< tree_node< T > * > & mln::util::tree_node< T >::children | ( | ) | const [inline] |
The getter of the children.
Definition at line 386 of file tree.hh.
References mln::util::tree_node< T >::child_.
std::vector< tree_node< T > * > & mln::util::tree_node< T >::children | ( | ) | [inline] |
The getter of the children.
Definition at line 378 of file tree.hh.
References mln::util::tree_node< T >::child_.
Referenced by mln::util::tree_node< T >::add_child(), mln::util::tree< T >::add_tree_up(), mln::util::impl::display_branch_rec(), mln::util::impl::display_tree_rec(), mln::util::impl::tree_to_fast_(), and mln::util::impl::tree_to_image_rec().
tree_node< T > * mln::util::tree_node< T >::delete_tree_node | ( | ) | [inline] |
Delete the current tree_node.
Definition at line 427 of file tree.hh.
References mln::util::tree_node< T >::child_, and mln::util::tree_node< T >::parent_.
const T & mln::util::tree_node< T >::elt | ( | ) | const [inline] |
The const getter of the element.
Definition at line 361 of file tree.hh.
References mln::util::tree_node< T >::elt_.
T & mln::util::tree_node< T >::elt | ( | ) | [inline] |
The getter of the element.
Definition at line 369 of file tree.hh.
References mln::util::tree_node< T >::elt_.
Referenced by mln::util::impl::display_branch_rec(), mln::util::impl::display_tree_rec(), mln::util::tree_node< T >::print(), and mln::util::impl::tree_to_image_rec().
tree_node< T > * mln::util::tree_node< T >::parent | ( | ) | [inline] |
The getter of the parent.
Definition at line 477 of file tree.hh.
References mln::util::tree_node< T >::parent_.
Referenced by mln::util::tree_node< T >::add_child(), mln::util::branch_iter_ind< T >::deepness(), and mln::util::branch_iter< T >::deepness().
void mln::util::tree_node< T >::print | ( | std::ostream & | ostr, | |
int | level = 0 | |||
) | [inline] |
Print on ostr
the arborescence with the current tree_node as root.
[in] | ostr | The output stream. |
[in] | level | The deep level |
Definition at line 449 of file tree.hh.
References mln::util::tree_node< T >::child_, and mln::util::tree_node< T >::elt().
tree_node< T > * mln::util::tree_node< T >::search | ( | T & | elt | ) | [inline] |
int mln::util::tree_node< T >::search_rec | ( | tree_node< T > ** | res, | |
T & | elt | |||
) | [inline] |
The using method for method search.
Definition at line 485 of file tree.hh.
References mln::util::tree_node< T >::child_, and mln::util::tree_node< T >::elt_.
Referenced by mln::util::tree_node< T >::search().
void mln::util::tree_node< T >::set_parent | ( | tree_node< T > * | parent | ) | [inline] |
Bind tree_node
to the current tree_node and become its parent.
[in] | parent | The new parent tree_node. |
Definition at line 467 of file tree.hh.
References mln::util::tree_node< T >::child_, and mln::util::tree_node< T >::parent_.
std::vector< tree_node<T>* > mln::util::tree_node< T >::child_ [private] |
The children.
Definition at line 178 of file tree.hh.
Referenced by mln::util::tree_node< T >::add_child(), mln::util::tree_node< T >::check_consistency(), mln::util::tree_node< T >::children(), mln::util::tree_node< T >::delete_tree_node(), mln::util::tree_node< T >::print(), mln::util::tree_node< T >::search_rec(), and mln::util::tree_node< T >::set_parent().
T mln::util::tree_node< T >::elt_ [private] |
The value.
Definition at line 172 of file tree.hh.
Referenced by mln::util::tree_node< T >::elt(), and mln::util::tree_node< T >::search_rec().
tree_node<T>* mln::util::tree_node< T >::parent_ [private] |
The tree_node parent.
Definition at line 175 of file tree.hh.
Referenced by mln::util::tree_node< T >::add_child(), mln::util::tree_node< T >::delete_tree_node(), mln::util::tree_node< T >::parent(), and mln::util::tree_node< T >::set_parent().