Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer > Class Template Reference

TG representation with explicit storage of the saddles as vertices of the TG. More...

#include <Transition_graph_traits_standard.hpp>

Classes

struct  Is_minimum
 
struct  Is_transition_state
 
struct  Vertex_property_base
 

Public Types

enum  Sample_type { MINIMUM_TYPE , TRANSITION_TYPE }
 
typedef SampleRep Sample_rep
 
typedef SampleWeight Sample_weight
 
typedef VertexContainer Vertex_container
 
typedef EdgeContainer Edge_container
 
typedef T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer > Self
 
typedef boost::property< boost::vertex_name_t, Vertex_property_base, SampleRep > Vertex_property
 
typedef boost::adjacency_list< EdgeContainer, VertexContainer, boost::undirectedS, Vertex_propertyGraph
 
typedef boost::graph_traits< GraphGraph_traits
 
typedef Graph_traits::vertex_descriptor Vertex
 
typedef Graph_traits::vertex_descriptor Minimum
 
typedef Graph_traits::vertex_descriptor Transition_state
 
typedef Graph_traits::vertex_iterator Minima_iterator_base
 
typedef boost::filter_iterator< Is_minimum, Minima_iterator_baseMinima_iterator
 
typedef Graph_traits::vertex_iterator Transition_states_iterator_base
 
typedef boost::filter_iterator< Is_transition_state, Transition_states_iterator_baseTransition_states_iterator
 
typedef Graph_traits::adjacency_iterator Incident_transition_states_iterator
 

Static Public Member Functions

static Minimum add_minimum (Graph &G)
 
static Minimum add_minimum (SampleRep &sample, Graph &G)
 
static bool remove_minimum (Minimum u, Graph &G)
 
static unsigned num_minima (Graph &G)
 
static std::pair< Transition_state, bool > add_transition_state (Minimum u, Minimum v, Graph &G)
 
static std::pair< Transition_state, bool > add_transition_state (Minimum u, Minimum v, SampleRep &sample, Graph &G)
 
static unsigned num_transition_states (Graph &G)
 
static bool remove_transition_state (Transition_state t, Graph &G)
 
static const SampleWeight & get_weight (Graph &G, Minimum u)
 
static void set_weight (Graph &G, Minimum u, const SampleWeight &w)
 
static bool has_sample (Graph &G, Vertex u)
 
static SampleRep & get_sample (Graph &G, Vertex u)
 
static std::pair< Minimum, Minimumminima (Transition_state t, Graph &G)
 
static std::pair< Minima_iterator, Minima_iteratorminima (Graph &G)
 
static std::pair< Transition_states_iterator, Transition_states_iteratortransition_states (Graph &G)
 
static std::pair< Incident_transition_states_iterator, Incident_transition_states_iteratortransition_states (Minimum u, Graph &G)
 
static bool is_minimum (Vertex u, Graph &G)
 

Detailed Description

template<class SampleRep, class SampleWeight, class VertexContainer = boost::vecS, class EdgeContainer = boost::vecS>
class SBL::CSB::T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >

TG representation with explicit storage of the saddles as vertices of the TG.

Standard means that the vertices are the minima and transitions, and the edges link minima to transitions
Note that all methods are static – no member data

A std TG traits means that minima and saddles are explicitely represented as vertices of the graph so that each transition state yields two edges to the connected minina.

Template Parameters
SampleRep
SampleWeight
VertexContainer
EdgeContainer

Member Typedef Documentation

◆ Edge_container

typedef EdgeContainer Edge_container

◆ Graph

typedef boost::adjacency_list<EdgeContainer, VertexContainer, boost::undirectedS, Vertex_property> Graph

◆ Graph_traits

typedef boost::graph_traits<Graph> Graph_traits

◆ Incident_transition_states_iterator

typedef Graph_traits::adjacency_iterator Incident_transition_states_iterator

◆ Minima_iterator

typedef boost::filter_iterator<Is_minimum, Minima_iterator_base> Minima_iterator

◆ Minima_iterator_base

typedef Graph_traits::vertex_iterator Minima_iterator_base

◆ Minimum

typedef Graph_traits::vertex_descriptor Minimum

◆ Sample_rep

typedef SampleRep Sample_rep

◆ Sample_weight

typedef SampleWeight Sample_weight

◆ Self

typedef T_Transition_graph_traits_standard<SampleRep, SampleWeight, VertexContainer, EdgeContainer> Self

◆ Transition_state

typedef Graph_traits::vertex_descriptor Transition_state

◆ Transition_states_iterator

◆ Transition_states_iterator_base

typedef Graph_traits::vertex_iterator Transition_states_iterator_base

◆ Vertex

typedef Graph_traits::vertex_descriptor Vertex

◆ Vertex_container

typedef VertexContainer Vertex_container

◆ Vertex_property

typedef boost::property<boost::vertex_name_t, Vertex_property_base, SampleRep> Vertex_property

Member Enumeration Documentation

◆ Sample_type

Enumerator
MINIMUM_TYPE 
TRANSITION_TYPE 

Member Function Documentation

◆ add_minimum() [1/2]

T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Minimum add_minimum ( Graph G)
inlinestatic

◆ add_minimum() [2/2]

T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Minimum add_minimum ( SampleRep &  sample,
Graph G 
)
inlinestatic

◆ add_transition_state() [1/2]

std::pair< typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Transition_state, bool > add_transition_state ( Minimum  u,
Minimum  v,
Graph G 
)
inlinestatic

◆ add_transition_state() [2/2]

std::pair< typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Transition_state, bool > add_transition_state ( Minimum  u,
Minimum  v,
SampleRep &  sample,
Graph G 
)
inlinestatic

◆ get_sample()

SampleRep & get_sample ( Graph G,
Vertex  u 
)
inlinestatic

◆ get_weight()

const SampleWeight & get_weight ( Graph G,
Minimum  u 
)
inlinestatic

◆ has_sample()

bool has_sample ( Graph G,
Vertex  u 
)
inlinestatic

◆ is_minimum()

bool is_minimum ( Vertex  u,
Graph G 
)
inlinestatic

◆ minima() [1/2]

std::pair< typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Minima_iterator, typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Minima_iterator > minima ( Graph G)
inlinestatic

◆ minima() [2/2]

std::pair< typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Minimum, typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Minimum > minima ( Transition_state  t,
Graph G 
)
inlinestatic

◆ num_minima()

unsigned num_minima ( Graph G)
inlinestatic

◆ num_transition_states()

unsigned num_transition_states ( Graph G)
inlinestatic

◆ remove_minimum()

bool remove_minimum ( Minimum  u,
Graph G 
)
inlinestatic

◆ remove_transition_state()

bool remove_transition_state ( Transition_state  t,
Graph G 
)
inlinestatic

◆ set_weight()

void set_weight ( Graph G,
Minimum  u,
const SampleWeight &  w 
)
inlinestatic

◆ transition_states() [1/2]

std::pair< typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Transition_states_iterator, typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Transition_states_iterator > transition_states ( Graph G)
inlinestatic

◆ transition_states() [2/2]

std::pair< typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Incident_transition_states_iterator, typename T_Transition_graph_traits_standard< SampleRep, SampleWeight, VertexContainer, EdgeContainer >::Incident_transition_states_iterator > transition_states ( Minimum  u,
Graph G 
)
inlinestatic