|
MADNESS 0.10.1
|
#include <lbdeux.h>

Public Member Functions | |
| LBNodeDeux () | |
| LBNodeDeux (const LBNodeDeux< NDIM > &other) | |
| void | add (double cost, bool got_kids) |
| Accumulates cost into this node. | |
| void | deleter (const treeT &tree, const keyT &key) |
| Logically deletes this node and its descendants. | |
| double | get_total_cost () const |
| bool | has_children () const |
| bool | is_deleted () const |
| True if partitioning logically deleted this node, so it is not a subtree root. | |
| LBNodeDeux< NDIM > & | operator= (const LBNodeDeux< NDIM > &other) |
| void | partition (const treeT &tree, const keyT &key, double avg) |
| Descends tree deleting all except internal nodes and sub-tree parents. | |
| template<typename Archive> | |
| void | serialize (Archive &ar) |
| void | sum (const treeT &tree, const keyT &child, double value) |
| Accumulates cost up the tree from children. | |
Private Types | |
| typedef Key< NDIM > | keyT |
| typedef LBNodeDeux< NDIM > | nodeT |
| typedef WorldContainer< keyT, nodeT > | treeT |
Private Member Functions | |
| int | index (const keyT &key) |
| Computes index of child key in this node using last bit of translations. | |
Private Attributes | |
| double | child_cost [nchild] |
| bool | deleted |
| Set by deleter(). A retained node can have any cost, even a negative one. | |
| bool | gotkids |
| double | my_cost |
| AtomicInt | nsummed |
| double | total_cost |
Static Private Attributes | |
| static const int | nchild = (1<<NDIM) |
|
private |
|
private |
|
private |
|
inline |
References child_cost, deleted, gotkids, my_cost, nchild, nsummed, and total_cost.
Referenced by LBNodeDeux(), and operator=().
|
inline |
References LBNodeDeux(), child_cost, deleted, gotkids, my_cost, nchild, nsummed, and total_cost.
|
inline |
Accumulates cost into this node.
References gotkids, my_cost, and total_cost.
Referenced by madness::LoadBalanceDeux< NDIM >::add_op< T, costT >::operator()().
|
inline |
Logically deletes this node and its descendants.
Cannot actually erase this node from the container since the send() handler is holding an accessor to it.
References deleted, deleter(), has_children(), and task().
Referenced by deleter(), and partition().
|
inline |
References total_cost.
Referenced by madness::LoadBalanceDeux< NDIM >::sum().
|
inline |
References gotkids.
Referenced by deleter(), partition(), and madness::LoadBalanceDeux< NDIM >::sum().
|
inlineprivate |
Computes index of child key in this node using last bit of translations.
References d, NDIM, and madness::Key< NDIM >::translation().
Referenced by partition(), and sum().
|
inline |
True if partitioning logically deleted this node, so it is not a subtree root.
References deleted.
|
inline |
References LBNodeDeux(), child_cost, deleted, gotkids, my_cost, nchild, nsummed, and total_cost.
|
inline |
Descends tree deleting all except internal nodes and sub-tree parents.
References child_cost, deleter(), has_children(), index(), nchild, partition(), task(), and total_cost.
Referenced by madness::LoadBalanceDeux< NDIM >::load_balance(), and partition().
|
inline |
References madness::archive::wrap_opaque().
|
inline |
Accumulates cost up the tree from children.
References child_cost, madness::Future< void >::value, index(), madness::Key< NDIM >::level(), nchild, nsummed, madness::Key< NDIM >::parent(), sum(), task(), and total_cost.
Referenced by sum(), and madness::LoadBalanceDeux< NDIM >::sum().
|
private |
Referenced by LBNodeDeux(), LBNodeDeux(), operator=(), partition(), and sum().
|
private |
Set by deleter(). A retained node can have any cost, even a negative one.
Referenced by LBNodeDeux(), LBNodeDeux(), deleter(), is_deleted(), and operator=().
|
private |
Referenced by LBNodeDeux(), LBNodeDeux(), add(), has_children(), and operator=().
|
private |
Referenced by LBNodeDeux(), LBNodeDeux(), add(), and operator=().
|
staticprivate |
Referenced by LBNodeDeux(), LBNodeDeux(), operator=(), partition(), and sum().
|
private |
Referenced by LBNodeDeux(), LBNodeDeux(), operator=(), and sum().
|
private |
Referenced by LBNodeDeux(), LBNodeDeux(), add(), get_total_cost(), operator=(), partition(), and sum().