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:
- gecode/int/task.hh (Revision: 12176)
- gecode/int/task/tree.hpp (Revision: 12022)