#include <BCP_tm_node.hpp>
Collaboration diagram for BCP_tm_node:
Data members | |
BCP_tm_node_status | status |
int | _index |
BCP_tm_node * | _parent |
int | _birth_index |
BCP_vec< BCP_tm_node * > | _children |
int | lp |
int | cg |
int | cp |
int | vg |
int | vp |
int | _processed_leaf_num |
int | _pruned_leaf_num |
int | _tobepriced_leaf_num |
int | _leaf_num |
int | _core_storage:4 |
int | _var_storage:4 |
int | _cut_storage:4 |
int | _ws_storage:4 |
int | _locally_stored:2 |
int | _data_location:30 |
BCP_tm_node_data | _data |
static int | num_local_nodes = 0 |
static int | num_remote_nodes = 0 |
Public Member Functions | |
Constructors and destructor | |
BCP_tm_node (int level, BCP_node_change *desc) | |
~BCP_tm_node () | |
Query methods | |
int | index () const |
int | child_num () const |
int | birth_index () const |
BCP_tm_node * | child (int ind) |
BCP_tm_node * | parent () |
const BCP_tm_node * | child (int ind) const |
const BCP_tm_node * | parent () const |
Modifying methods | |
int | mark_descendants_for_deletion () |
void | remove_child (BCP_tm_node *node) |
void | reserve_child_num (int num) |
void | new_child (BCP_tm_node *node) |
Private Member Functions | |
Disabled methods | |
BCP_tm_node (const BCP_tm_node &) | |
The copy constructor is declared but not defined to disable it. | |
BCP_tm_node & | operator= (const BCP_tm_node &) |
The assignment operator is declared but not defined to disable it. |
Definition at line 60 of file BCP_tm_node.hpp.
BCP_tm_node::BCP_tm_node | ( | const BCP_tm_node & | ) | [private] |
The copy constructor is declared but not defined to disable it.
BCP_tm_node::BCP_tm_node | ( | int | level, | |
BCP_node_change * | desc | |||
) |
BCP_tm_node::~BCP_tm_node | ( | ) | [inline] |
Definition at line 121 of file BCP_tm_node.hpp.
References _locally_stored, num_local_nodes, and num_remote_nodes.
BCP_tm_node& BCP_tm_node::operator= | ( | const BCP_tm_node & | ) | [private] |
The assignment operator is declared but not defined to disable it.
int BCP_tm_node::index | ( | ) | const [inline] |
Definition at line 134 of file BCP_tm_node.hpp.
References _index.
Referenced by BCP_tm_remove_explored(), BCP_tm_start_one_node(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), and BCP_tm_node_to_send::send().
int BCP_tm_node::child_num | ( | ) | const [inline] |
Definition at line 136 of file BCP_tm_node.hpp.
References _children, and BCP_vec< T >::size().
Referenced by BCP_tm_create_child(), BCP_tm_remove_explored(), BCP_tm_trim_tree(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), BCP_tree::enumerate_leaves(), mark_descendants_for_deletion(), remove_child(), and BCP_tree::true_lower_bound().
int BCP_tm_node::birth_index | ( | ) | const [inline] |
BCP_tm_node* BCP_tm_node::child | ( | int | ind | ) | [inline] |
Definition at line 143 of file BCP_tm_node.hpp.
References _children.
Referenced by BCP_tm_unpack_branching_info(), and mark_descendants_for_deletion().
BCP_tm_node* BCP_tm_node::parent | ( | ) | [inline] |
Definition at line 145 of file BCP_tm_node.hpp.
References _parent.
Referenced by BCP_tm_remove_explored(), and BCP_tm_node_to_send::send().
const BCP_tm_node* BCP_tm_node::child | ( | int | ind | ) | const [inline] |
const BCP_tm_node* BCP_tm_node::parent | ( | ) | const [inline] |
int BCP_tm_node::mark_descendants_for_deletion | ( | ) |
Definition at line 61 of file BCP_tm_node.cpp.
References _children, BCP_vec< T >::begin(), child(), child_num(), BCP_vec< T >::clear(), and BCP_vec< T >::end().
Referenced by BCP_tm_trim_tree().
void BCP_tm_node::remove_child | ( | BCP_tm_node * | node | ) |
Definition at line 79 of file BCP_tm_node.cpp.
References _children, child_num(), and BCP_vec< T >::pop_back().
Referenced by BCP_tm_remove_explored().
void BCP_tm_node::reserve_child_num | ( | int | num | ) | [inline] |
Definition at line 168 of file BCP_tm_node.hpp.
References _children, and BCP_vec< T >::reserve().
Referenced by BCP_tm_unpack_branching_info().
void BCP_tm_node::new_child | ( | BCP_tm_node * | node | ) | [inline] |
Definition at line 170 of file BCP_tm_node.hpp.
References _children, and BCP_vec< T >::push_back().
Referenced by BCP_tm_create_child().
int BCP_tm_node::num_local_nodes = 0 [static] |
Definition at line 73 of file BCP_tm_node.hpp.
Referenced by BCP_tm_balance_data(), BCP_tm_is_data_balanced(), BCP_tm_node(), BCP_tm_unpack_node_description(), and ~BCP_tm_node().
int BCP_tm_node::num_remote_nodes = 0 [static] |
Definition at line 74 of file BCP_tm_node.hpp.
Referenced by BCP_tm_balance_data(), BCP_tm_is_data_balanced(), BCP_tm_unpack_node_description(), and ~BCP_tm_node().
Definition at line 78 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_remove_lp(), BCP_tm_start_one_node(), BCP_tm_unpack_branching_info(), BCP_tree::enumerate_leaves(), BCP_tm_prob::process_message(), and BCP_tree::true_lower_bound().
Definition at line 80 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_scan_children(), BCP_tm_scan_siblings(), BCP_tm_unpack_branching_info(), index(), BCP_tree::insert(), and BCP_tm_node_to_send::send().
Definition at line 82 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_scan_siblings(), and parent().
Definition at line 85 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), and birth_index().
Definition at line 87 of file BCP_tm_node.hpp.
Referenced by BCP_tm_scan_children(), BCP_tm_scan_siblings(), BCP_tm_trim_tree(), child(), child_num(), BCP_tree::enumerate_leaves(), mark_descendants_for_deletion(), new_child(), remove_child(), reserve_child_num(), and BCP_tree::true_lower_bound().
int BCP_tm_node::lp |
Definition at line 89 of file BCP_tm_node.hpp.
Referenced by BCP_tm_assign_processes(), BCP_tm_free_procs_of_node(), BCP_tm_remove_lp(), BCP_tm_start_one_node(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), BCP_tm_unpack_node_description(), BCP_tm_unpack_priced_root(), and BCP_tm_node_to_send::send().
int BCP_tm_node::cg |
Definition at line 89 of file BCP_tm_node.hpp.
Referenced by BCP_tm_assign_processes(), BCP_tm_free_procs_of_node(), BCP_tm_remove_lp(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), and BCP_tm_node_to_send::send().
int BCP_tm_node::cp |
Definition at line 89 of file BCP_tm_node.hpp.
Referenced by BCP_tm_assign_processes(), BCP_tm_create_child(), BCP_tm_modify_pool_counters(), BCP_tm_remove_lp(), BCP_tm_trim_tree(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), and BCP_tm_node_to_send::send().
int BCP_tm_node::vg |
Definition at line 89 of file BCP_tm_node.hpp.
Referenced by BCP_tm_assign_processes(), BCP_tm_free_procs_of_node(), BCP_tm_remove_lp(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), and BCP_tm_node_to_send::send().
int BCP_tm_node::vp |
Definition at line 89 of file BCP_tm_node.hpp.
Referenced by BCP_tm_assign_processes(), BCP_tm_create_child(), BCP_tm_modify_pool_counters(), BCP_tm_remove_lp(), BCP_tm_trim_tree(), BCP_tm_trim_tree_wrapper(), BCP_tm_unpack_branching_info(), and BCP_tm_node_to_send::send().
Definition at line 91 of file BCP_tm_node.hpp.
Referenced by BCP_tm_trim_tree(), and BCP_tree::enumerate_leaves().
Definition at line 93 of file BCP_tm_node.hpp.
Referenced by BCP_tm_trim_tree(), and BCP_tree::enumerate_leaves().
Definition at line 97 of file BCP_tm_node.hpp.
Referenced by BCP_tm_trim_tree(), and BCP_tree::enumerate_leaves().
Definition at line 99 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_create_root(), BCP_tm_unpack_node_description(), and BCP_tm_node_to_send::send().
Definition at line 100 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_create_root(), BCP_tm_unpack_node_description(), and BCP_tm_node_to_send::send().
Definition at line 101 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_create_root(), BCP_tm_unpack_node_description(), and BCP_tm_node_to_send::send().
Definition at line 102 of file BCP_tm_node.hpp.
Referenced by BCP_tm_create_child(), BCP_tm_create_root(), BCP_tm_unpack_node_description(), and BCP_tm_node_to_send::send().
Definition at line 104 of file BCP_tm_node.hpp.
Referenced by BCP_tm_balance_data(), BCP_tm_unpack_node_description(), and ~BCP_tm_node().
Definition at line 106 of file BCP_tm_node.hpp.
Referenced by BCP_tm_balance_data(), and BCP_tm_unpack_node_description().
Definition at line 107 of file BCP_tm_node.hpp.
Referenced by BCP_tm_balance_data(), BCP_tm_create_child(), BCP_tm_create_root(), BCP_tm_save_root_cuts(), BCP_tm_scan_children(), BCP_tm_scan_siblings(), and BCP_tm_unpack_node_description().