Scaffolding  0.1
This program can assemble genome scaffolds using the pairing information in paired-end reads.
Public Member Functions | Protected Attributes | List of all members
scaffold::graph_infos::StructuralInfo< Graph, Information > Class Template Referenceabstract

prototype class for structural graph properties More...

#include <graph_infos.hpp>

Public Member Functions

 StructuralInfo (const Graph &_g)
 constructor
 
 StructuralInfo (const Graph &_g, const Information &_payload)
 constructor
 
virtual void update (const bool force=false)=0
 every property must have a function to update itself More...
 
void invalidate ()
 set the property to "not up-to-date"
 
bool is_valid () const
 return whether the property is up-to-date
 
const Information & get ()
 get the current value of the property, updating if necessary
 
const Information & get_const () const
 get the current value of the property without updating More...
 

Protected Attributes

const Graph & g
 a reference to the graph
 
Information payload
 the actual graph property
 
bool up_to_date = false
 indicate whether the property needs to be recomputed due to changes in the graph
 

Detailed Description

template<class Graph, class Information>
class scaffold::graph_infos::StructuralInfo< Graph, Information >

prototype class for structural graph properties

Member Function Documentation

template<class Graph, class Information>
const Information& scaffold::graph_infos::StructuralInfo< Graph, Information >::get_const ( ) const
inline

get the current value of the property without updating

This will thow an "info_not_up_to_date()" exception if the property is not up-to-date

template<class Graph, class Information>
virtual void scaffold::graph_infos::StructuralInfo< Graph, Information >::update ( const bool  force = false)
pure virtual

every property must have a function to update itself

updates can be refused (for example if the property is already up-to-date), but this refute can be overwritten with the "force" flag

Implemented in scaffold::graph_infos::BridgeInfo< Graph >, scaffold::graph_infos::MaxDegreeInfo< Graph >, and scaffold::graph_infos::ComponentInfo< Graph >.


The documentation for this class was generated from the following file: