Gecode::Int::TaskTree< TaskView, Node > Class Template Reference
Task trees for task views with node type Node. More...
#include <task.hh>
Protected Member Functions | |
| int | n_inner (void) const |
| Return number of inner nodes. | |
| int | n_nodes (void) const |
| Return number of nodes for balanced binary tree. | |
| bool | n_leaf (int i) const |
| Whether node i is leaf. | |
| Node & | leaf (int i) |
| Return leaf for task i. | |
| const Node & | root (void) const |
| Return root node. | |
| void | update (int i, bool l=true) |
| Update tree after leaf for task i has changed (l whether i refers to a leaf). | |
| void | init (void) |
| Initialize tree after leaves have been initialized. | |
| void | update (void) |
| Update all inner nodes of tree after leaves have been initialized. | |
| TaskTree (Region &r, const TaskViewArray< TaskView > &t) | |
| Initialize tree for tasks t. | |
| template<class Node2 > | |
| TaskTree (Region &r, const TaskTree< TaskView, Node2 > &t) | |
| Initialize tree using tree t. | |
Static Protected Member Functions | |
| static bool | n_root (int i) |
| Whether node i is index of root. | |
| static int | n_left (int i) |
| Return index of left child of node i. | |
| static bool | left (int i) |
| Test whether node i is a left child. | |
| static int | n_right (int i) |
| Return index of right child of node i. | |
| static bool | right (int i) |
| Test whether node i is a right child. | |
| static int | n_parent (int i) |
| Return index of parent of node i. | |
Protected Attributes | |
| const TaskViewArray< TaskView > & | tasks |
| The tasks from which the tree is computed. | |
| Node * | node |
| Task nodes. | |
| int * | _leaf |
| Map task number to leaf node number in right order. | |
Detailed Description
template<class TaskView, class Node>
class Gecode::Int::TaskTree< TaskView, Node >
Task trees for task views with node type Node.
Definition at line 365 of file task.hh.
Constructor & Destructor Documentation
template<class TaskView, class Node >
| Gecode::Int::TaskTree< TaskView, Node >::TaskTree | ( | Region & | r, | |
| const TaskViewArray< TaskView > & | t | |||
| ) | [inline, protected] |
template<class TaskView, class Node >
template<class Node2 >
| Gecode::Int::TaskTree< TaskView, Node >::TaskTree | ( | Region & | r, | |
| const TaskTree< TaskView, Node2 > & | t | |||
| ) | [inline, protected] |
Member Function Documentation
template<class TaskView , class Node >
| int Gecode::Int::TaskTree< TaskView, Node >::n_inner | ( | void | ) | const [inline, protected] |
template<class TaskView , class Node >
| int Gecode::Int::TaskTree< TaskView, Node >::n_nodes | ( | void | ) | const [inline, protected] |
template<class TaskView , class Node >
| bool Gecode::Int::TaskTree< TaskView, Node >::n_root | ( | int | i | ) | [inline, static, protected] |
template<class TaskView , class Node >
| bool Gecode::Int::TaskTree< TaskView, Node >::n_leaf | ( | int | i | ) | const [inline, protected] |
template<class TaskView , class Node >
| int Gecode::Int::TaskTree< TaskView, Node >::n_left | ( | int | i | ) | [inline, static, protected] |
template<class TaskView , class Node >
| bool Gecode::Int::TaskTree< TaskView, Node >::left | ( | int | i | ) | [inline, static, protected] |
template<class TaskView , class Node >
| int Gecode::Int::TaskTree< TaskView, Node >::n_right | ( | int | i | ) | [inline, static, protected] |
template<class TaskView , class Node >
| bool Gecode::Int::TaskTree< TaskView, Node >::right | ( | int | i | ) | [inline, static, protected] |
template<class TaskView , class Node >
| int Gecode::Int::TaskTree< TaskView, Node >::n_parent | ( | int | i | ) | [inline, static, protected] |
template<class TaskView , class Node >
| Node & Gecode::Int::TaskTree< TaskView, Node >::leaf | ( | int | i | ) | [inline, protected] |
template<class TaskView , class Node >
| const Node & Gecode::Int::TaskTree< TaskView, Node >::root | ( | void | ) | const [inline, protected] |
template<class TaskView , class Node >
| void Gecode::Int::TaskTree< TaskView, Node >::update | ( | int | i, | |
| bool | l = true | |||
| ) | [inline, protected] |
template<class TaskView , class Node >
| void Gecode::Int::TaskTree< TaskView, Node >::init | ( | void | ) | [inline, protected] |
template<class TaskView , class Node >
| void Gecode::Int::TaskTree< TaskView, Node >::update | ( | void | ) | [inline, protected] |
Member Data Documentation
template<class TaskView, class Node>
const TaskViewArray<TaskView>& Gecode::Int::TaskTree< TaskView, Node >::tasks [protected] |
template<class TaskView, class Node>
Node* Gecode::Int::TaskTree< TaskView, Node >::node [protected] |
template<class TaskView, class Node>
int* Gecode::Int::TaskTree< TaskView, Node >::_leaf [protected] |
The documentation for this class was generated from the following files:
