GraphConceptAlgorithms.h File Reference

#include "iostream"
#include "map"
#include "set"
#include "list"

Go to the source code of this file.

Namespaces

namespace  Graphs

Classes

struct  Graphs::FoldDetails< VertexType, EdgeType >

Functions

template<class Graph>
map< int, typename Graph::edge_typeGraphs::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_typeGraphs::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).


Generated on Mon Feb 27 22:47:06 2006 for CRyptography And Groups (CRAG) by  doxygen 1.4.4