Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
|
Provides a forest structure associated to the labels defined in MolecularSystemLabelsTraits . More...
#include <Hierarchical_labels_forest.hpp>
Public Types | |
typedef MolecularSystemLabelsTraits::Label | Label |
System's label that can be either a partner, a mediator or a extra label. More... | |
typedef boost::transform_iterator< Get_label_of_vertex, Vertices_iterator > | Labels_iterator |
Iterator over the labels of the forest. More... | |
typedef boost::transform_iterator< Get_label_of_vertex, Minimal_elements_iterator > | Primitive_labels_iterator |
Iterator over the primitive labels of the forest. More... | |
typedef boost::transform_iterator< Get_label_of_vertex, Maximal_elements_iterator > | Root_labels_iterator |
Iterator over the primitive labels of the forest. More... | |
typedef boost::transform_iterator< Get_label_of_vertex, Descendant_minimal_elements_iterator > | Descendant_primitive_labels_iterator |
Iterator over all primitive labels descendant of a given label. More... | |
typedef boost::transform_iterator< Get_label_of_vertex, Hierarchical_vertices_iterator > | Hierarchical_labels_iterator |
Iterator over all hierarchical labels. More... | |
Public Structures | |
typedef CADS::T_Directed_acyclic_graph< Label_property > | Directed_acyclic_graph |
typedef Directed_acyclic_graph::Vertex | Vertex |
typedef Directed_acyclic_graph::Vertices_iterator | Vertices_iterator |
typedef Directed_acyclic_graph::Minimal_elements_iterator | Minimal_elements_iterator |
typedef Directed_acyclic_graph::Maximal_elements_iterator | Maximal_elements_iterator |
typedef boost::filter_iterator< Is_child_or_equal_label, Minimal_elements_iterator > | Descendant_minimal_elements_iterator |
typedef boost::filter_iterator< Is_hierarchical_label, Vertices_iterator > | Hierarchical_vertices_iterator |
Constructors | |
T_Hierarchical_labels_forest (void) | |
It constructs automatically the forest from the labels defined in MolecularSystemLabelsTraits. More... | |
Accessors | |
const Directed_acyclic_graph & | get_directed_acyclic_graph (void) const |
unsigned | get_num_of_primitive_label (Label label) const |
Get the number of a primitive label among all primitive labels. More... | |
Label | get_primitive_label_from_num (unsigned n) const |
Get the nth primitive label among all primitive labels. More... | |
unsigned | get_number_of_roots (void) const |
Queries | |
bool | is_primitive_label (Label label) const |
Check that a label is primitive. More... | |
bool | is_ancestor (Label label_1, Label label_2) const |
Check that label_1 is an ancestor of label_2. More... | |
Traversals | |
Labels_iterator | labels_begin (void) const |
Starts the set of labels. More... | |
Labels_iterator | labels_end (void) const |
Terminates the set of labels. More... | |
Primitive_labels_iterator | primitive_labels_begin (void) const |
Starts the set of primitive labels. More... | |
Primitive_labels_iterator | primitive_labels_end (void) const |
Terminates the set of primitive labels. More... | |
Descendant_primitive_labels_iterator | primitive_labels_begin (Label label) const |
Starts the set of primitive labels equal or having as parent the input label. More... | |
Descendant_primitive_labels_iterator | primitive_labels_end (Label label) const |
Terminates the set of primitive labels equal or having as parent the input label. More... | |
Hierarchical_labels_iterator | hierarchical_labels_begin (void) const |
Starts the set of hierarchical labels. More... | |
Hierarchical_labels_iterator | hierarchical_labels_end (void) const |
Terminates the set of hierarchical labels. More... | |
Root_labels_iterator | root_labels_begin (void) const |
Starts the set of hierarchical labels. More... | |
Root_labels_iterator | root_labels_end (void) const |
Terminates the set of hierarchical labels. More... | |
I/O | |
template<class OutputStream > | |
void | print_in_dot_format (OutputStream &out) const |
void | print_in_dot_format (void) const |
Provides a forest structure associated to the labels defined in MolecularSystemLabelsTraits .
MolecularSystemLabelsTraits | Definition of types related to labels, as the MolecularSystemLabelsTraits concept. |
typedef boost::transform_iterator<Get_label_of_vertex, Descendant_minimal_elements_iterator> Descendant_primitive_labels_iterator |
Iterator over all primitive labels descendant of a given label.
typedef boost::transform_iterator<Get_label_of_vertex, Hierarchical_vertices_iterator> Hierarchical_labels_iterator |
Iterator over all hierarchical labels.
typedef MolecularSystemLabelsTraits::Label Label |
System's label that can be either a partner, a mediator or a extra label.
typedef boost::transform_iterator<Get_label_of_vertex, Vertices_iterator> Labels_iterator |
Iterator over the labels of the forest.
typedef boost::transform_iterator<Get_label_of_vertex, Minimal_elements_iterator> Primitive_labels_iterator |
Iterator over the primitive labels of the forest.
typedef boost::transform_iterator<Get_label_of_vertex, Maximal_elements_iterator> Root_labels_iterator |
Iterator over the primitive labels of the forest.
|
inline |
It constructs automatically the forest from the labels defined in MolecularSystemLabelsTraits.
|
inline |
Access to the DAG representing the forest.
|
inline |
Get the number of a primitive label among all primitive labels.
This is used to map the primitive labels to consecutive indices from 0.
|
inline |
Get the nth primitive label among all primitive labels.
This is used to map consecutive indices from 0 to primitive labels.
|
inline |
Starts the set of hierarchical labels.
|
inline |
Terminates the set of hierarchical labels.
Check that label_1 is an ancestor of label_2.
|
inline |
Check that a label is primitive.
|
inline |
Starts the set of labels.
|
inline |
Terminates the set of labels.
|
inline |
Starts the set of primitive labels equal or having as parent the input label.
|
inline |
Starts the set of primitive labels.
|
inline |
Terminates the set of primitive labels equal or having as parent the input label.
|
inline |
Terminates the set of primitive labels.
|
inline |
Starts the set of hierarchical labels.
|
inline |
Terminates the set of hierarchical labels.