IMP
2.2.0
The Integrative Modeling Platform
|
Classes | |
class | IMP::atom::Atom |
A decorator for a particle representing an atom. More... | |
class | IMP::core::ChildrenRefiner |
Return the hierarchy children of a particle. More... | |
class | IMP::core::Hierarchy |
A decorator for helping deal with a hierarchy. More... | |
struct | IMP::core::HierarchyCounter |
A simple functor to count the number of particles in a hierarchy. More... | |
class | IMP::core::HierarchyVisitor |
A visitor for traversal of a hierarchy. More... | |
class | IMP::core::LeavesRefiner |
Return the hierarchy leaves under a particle. More... | |
class | IMP::core::ModifierVisitor |
A visitor which applies a modifier to each kernel::Particle in a hierarchy. More... | |
class | IMP::atom::Residue |
A decorator for a residue. More... | |
Functions | |
template<class HD , class F > | |
HD | IMP::core::find_breadth_first (HD h, F f) |
Find the first node which matches some criteria. More... | |
template<class H , class Out , class F > | |
Out | IMP::core::gather (H h, F f, Out out) |
Gather all the particles in the hierarchy which meet some criteria. More... | |
template<class H , class Out , class K , class V > | |
Out | IMP::core::gather_by_attribute (H h, K k, V v, Out out) |
Gather all the particles in the hierarchy which match on an attribute. More... | |
template<class H , class Out , class K0 , class V0 , class K1 , class V1 > | |
Out | IMP::core::gather_by_attributes (H h, K0 k0, V0 v0, K1 k1, V1 v1, Out out) |
Gather all the particles in the hierarchy which match on two attributes. More... | |
template<class H , class Out , class F > | |
Out | IMP::core::gather_slice (H h, F f, Out out) |
Gather all the particles in the hierarchy which meet some criteria. More... | |
template<class ND > | |
std::ostream & | IMP::core::show (Hierarchy h, std::ostream &out=std::cout) |
Print the hierarchy using a given decorator as to display each node. More... | |
template<class HD , class F > | |
F | IMP::core::visit_breadth_first (HD d, F f) |
Apply the visitor to each particle, breadth first. More... | |
template<class HD , class F > | |
F | IMP::core::visit_breadth_first_with_data (HD d, F f, typename F::result_type i) |
Apply functor F to each particle, traversing the hierarchy breadth first. More... | |
template<class HD , class F > | |
F | IMP::core::visit_depth_first (HD d, F f) |
Apply functor F to each particle, traversing the hierarchy depth first. More... | |
template<class HD , class F > | |
F | IMP::core::visit_depth_first_with_data (HD d, F f, typename F::result_type i) |
Apply functor F to each particle, traversing the hierarchy depth first. More... | |
These functions and classes aid in manipulating particles representing molecules at multiple levels.
HD IMP::core::find_breadth_first | ( | HD | h, |
F | f | ||
) |
See Hierarchy
Definition at line 481 of file core/Hierarchy.h.
Out IMP::core::gather | ( | H | h, |
F | f, | ||
Out | out | ||
) |
See Hierarchy
Definition at line 432 of file core/Hierarchy.h.
Out IMP::core::gather_by_attribute | ( | H | h, |
K | k, | ||
V | v, | ||
Out | out | ||
) |
See Hierarchy
Definition at line 457 of file core/Hierarchy.h.
Out IMP::core::gather_by_attributes | ( | H | h, |
K0 | k0, | ||
V0 | v0, | ||
K1 | k1, | ||
V1 | v1, | ||
Out | out | ||
) |
See Hierarchy
Definition at line 469 of file core/Hierarchy.h.
Out IMP::core::gather_slice | ( | H | h, |
F | f, | ||
Out | out | ||
) |
Descent in the tree terminates when a node is gathered so that none of its children are explored.
See Hierarchy
Definition at line 446 of file core/Hierarchy.h.
std::ostream& IMP::core::show | ( | Hierarchy | h, |
std::ostream & | out = std::cout |
||
) |
The last argument limits how deep will be printed out.
See Hierarchy
Definition at line 398 of file core/Hierarchy.h.
F IMP::core::visit_breadth_first | ( | HD | d, |
F | f | ||
) |
[in] | d | The Hierarchy for the tree in question |
[in] | f | The visitor to be applied. This is passed by reference. A branch of the traversal stops when f returns false. |
See Hierarchy
Definition at line 286 of file core/Hierarchy.h.
F IMP::core::visit_breadth_first_with_data | ( | HD | d, |
F | f, | ||
typename F::result_type | i | ||
) |
This method allows data to be associated with each visited node. The data of the parent is passed to each invocation of the child.
[in] | d | The Hierarchy for the tree in question |
[in] | f | The functor to be applied F must define a type Data which is returned by each call. The result of the parent call is passed as the second argument to the operator() of the child. e.g. struct DepthVisitor { typedef int result_type; result_type operator()(kernel::Particle *p, int i) const { if (p==nullptr) return 0; else return i+1; } }; |
[in] | i | The data to be used for d (since it has no relevant parent) |
See Hierarchy
Definition at line 352 of file core/Hierarchy.h.
F IMP::core::visit_depth_first | ( | HD | d, |
F | f | ||
) |
See breadth_first_traversal() for documentation.
See Hierarchy
Definition at line 309 of file core/Hierarchy.h.
F IMP::core::visit_depth_first_with_data | ( | HD | d, |
F | f, | ||
typename F::result_type | i | ||
) |
See breadth_first_traversal for documentation.
See Hierarchy
Definition at line 375 of file core/Hierarchy.h.