#include <iostream>
#include <map>
#include <set>
#include <list>
#include <stdlib.h>
Go to the source code of this file.
Classes | |
struct | Graphs::FoldDetails< VertexType, EdgeType > |
Namespaces | |
namespace | Graphs |
Functions | |
template<class Graph > | |
map< int, typename Graph::edge_type > | Graphs::getGeodesicTree_in (const Graph &graph, int init_v) |
Compute directed geodesic tree "inward" to the vertex init_v. | |
template<class Graph > | |
map< int, typename Graph::edge_type > | Graphs::getGeodesicTree_out (const Graph &graph, int init_v) |
Compute geodesic directed tree starting the vertex init_v. | |
template<class Graph > | |
map< int, int > | Graphs::getDistances_out (const Graph &graph, int init_v) |
Compute distances from the vertex init_v. | |
template<class Graph > | |
map< int, int > | Graphs::getDistances_in (const Graph &graph, int init_v) |
Compute distances to the vertex init_v. | |
template<class edge_type > | |
pair< bool, list< edge_type > > | Graphs::readoffGeodesicTree (const map< int, edge_type > &tree, int v) |
Function finds a path in the tree starting from the state st_num to the root. | |
template<class LabelledGraph , class ConstIterator > | |
int | Graphs::trace (const LabelledGraph &LG, int init_v, ConstIterator B, ConstIterator E) |
template<class LabelledGraph , class ConstIterator > | |
pair< bool, list< typename LabelledGraph::edge_type > > | Graphs::trace_path (const LabelledGraph &LG, int init_v, ConstIterator B, ConstIterator E) |
template<class LabelledGraph > | |
void | Graphs::fold (LabelledGraph &G, set< int > candidates, list< FoldDetails< typename LabelledGraph::vertex_type, typename LabelledGraph::edge_type > > *details=NULL) |
Fold a labelled graph. To aplly this function the graph edges must have theLabel defined. | |
template<class LabelledGraph > | |
void | Graphs::fold (const LabelledGraph &G, int candidate, list< FoldDetails< typename LabelledGraph::vertex_type, typename LabelledGraph::edge_type > > *details=NULL) |
template<class LabelledGraph > | |
void | Graphs::fold (const LabelledGraph &G, list< FoldDetails< typename LabelledGraph::vertex_type, typename LabelledGraph::edge_type > > *details=NULL) |
template<class LabelledGraph , class FoldDetailsConstIterator > | |
void | Graphs::unfold (LabelledGraph &G, FoldDetailsConstIterator B, FoldDetailsConstIterator E) |
Revert the folding. | |
template<class LabelledGraph , class FoldDetailsConstIterator > | |
void | Graphs::liftup (const LabelledGraph &graph, int init_vertex, list< typename LabelledGraph::edge_type > &path, FoldDetailsConstIterator B, FoldDetailsConstIterator E) |
Revert the folding. | |
template<class edge_type > | |
void | Graphs::reduce_path (int init_vertex, list< edge_type > &path) |
Reduce a path (remove all pairs of consequent inverse edges). |