Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
T_Spanning_tree_solver< IntersectionGraph, StopCondition, SpanningTreeGenerator, Algorithm > Class Template Reference

A heuristic algorithm to solve the D-Family-matching problem by using spanning trees. More...

#include <Spanning_tree_solver.hpp>

Constructors

 T_Spanning_tree_solver ()
 The best score is always initialized at 0. More...
 
 T_Spanning_tree_solver (Intersection_graph *g)
 
 T_Spanning_tree_solver (const Self &other)
 

Functor

unsigned operator() (unsigned D, Solution_type &solutions)
 A functor to solve the D-Family-matching problem using the heuristic algorithm on the given intersection graph m_graph. Updates the graph if required. More...
 

Iterators

Meta_clusters_iterator meta_clusters_begin ()
 Iterate over meta clusters. More...
 
Meta_clusters_iterator meta_clusters_end ()
 
Clusters_iterator clusters_in_meta_cluster_begin (unsigned meta_index)
 Iterate over clusters contained in a meta cluster. More...
 
Clusters_iterator clusters_in_meta_cluster_end (unsigned meta_index)
 

Command line options

boost::program_options::options_description add_options (void)
 Just to add options on the command line. More...
 

Detailed Description

template<class IntersectionGraph, class StopCondition, class SpanningTreeGenerator, class Algorithm>
class SBL::CADS::T_Spanning_tree_solver< IntersectionGraph, StopCondition, SpanningTreeGenerator, Algorithm >

A heuristic algorithm to solve the D-Family-matching problem by using spanning trees.

The graph must be weighted.

Template Parameters
GraphRepresentation of the intersection graph.
StopConditionA functor to compute if the stop condition is met. Also provides the definitions of the Solution space (which is inherent to a particular stop condition).
SpanningTreeGeneratorA method to generate a spanning tree over a connected component of the intersection graph
AlgorithmThe algorithm to solve the D-Family-matching problem over a tree.

Constructor & Destructor Documentation

◆ T_Spanning_tree_solver()

The best score is always initialized at 0.

Member Function Documentation

◆ add_options()

boost::program_options::options_description add_options ( void  )
inline

Just to add options on the command line.

◆ clusters_in_meta_cluster_begin()

T_Spanning_tree_solver< IntersectionGraph, StopCondition, SpanningTreeGenerator, Algorithm >::Clusters_iterator clusters_in_meta_cluster_begin ( unsigned  meta_index)
inline

Iterate over clusters contained in a meta cluster.

◆ meta_clusters_begin()

T_Spanning_tree_solver< IntersectionGraph, StopCondition, SpanningTreeGenerator, Algorithm >::Meta_clusters_iterator meta_clusters_begin
inline

Iterate over meta clusters.

◆ operator()()

unsigned operator() ( unsigned  D,
Solution_type &  solutions 
)
inline

A functor to solve the D-Family-matching problem using the heuristic algorithm on the given intersection graph m_graph. Updates the graph if required.