GraphType.h File Reference

#include "set"
#include "vector"
#include "iostream"
#include "string"
#include "GraphConcept.h"
#include "GraphConceptAlgorithms.h"
#include "GraphDrawingAttributes.h"
#include "RanlibCPP.h"

Go to the source code of this file.

Classes

struct  GraphEdge
 Defines non-labelled edge of the directed graph. More...
struct  GraphVertex< EdgeType >
 Graph vertex. More...
struct  IntLabeledEdge
 Defines labelled (by integer) edge of the directed graph. More...
struct  PlanarGraphEdge
 Defines non-labelled edge of the directed planar graph. More...
struct  PlanarGraphIntLabelledEdge
 Defines non-labelled edge of the directed planar graph. More...

Typedefs

typedef GraphConcept
< GraphVertex< GraphEdge >
, GraphEdge
Graph
 Directed Graph.
typedef GraphConcept
< GraphVertex< IntLabeledEdge >
, IntLabeledEdge
IntLabeledGraph
 Directed Graph with integer labelled edges.

Functions

ostream & operator<< (ostream &os, const GraphEdge &e)
ostream & operator<< (ostream &os, const IntLabeledEdge &e)
 Output operator for IntLabeledEdge.
void prepareToFold (const IntLabeledEdge &e1, const IntLabeledEdge &e2)
 Function preparing two edges to a fold (for IntLabeledEdge does nothing).
template<class ConstIntIterator >
int addRay (IntLabeledGraph &G, int v, ConstIntIterator B, ConstIntIterator E, bool direct=false)
 Function attaches a sequence of edges to a graph consequently labelled by numbers [B,E).
template<class ConstIntIterator >
void addLoop (IntLabeledGraph &G, int v, ConstIntIterator B, ConstIntIterator E, bool direct=false)
 Function attaches a loop of edges to a graph consequently labelled by numbers [B,E).
Graph randomGraph (int N, float edge_param)
 Create random graph on N verteices where each edge has probability to appear = edge_param.
vector< vector< int > > lengthTable (const Graph &G)
 Compute distances between all pairs of vertices.
vector< vector< int > > innerProductTable (const Graph &G, int origin)
 Compute Gromov's inner product for all pairs of vertices (the origin is the vertex with the smallest number).
float getHyperbolicityConst (const Graph &G)
 Compute constant of hyperbolicity of a graph (uses Gromov's inner product).
string graphviz_format (const Graph &G, const GraphDrawingAttributes &GDA=GraphDrawingAttributes())
 Get Graphviz graph description.
string graphviz_format (const IntLabeledGraph &G, const GraphDrawingAttributes &GDA=GraphDrawingAttributes())
 Get Graphviz graph description.

Typedef Documentation

Directed Graph.

Definition at line 241 of file GraphType.h.

Directed Graph with integer labelled edges.

Definition at line 246 of file GraphType.h.


Function Documentation

template<class ConstIntIterator >
void addLoop ( IntLabeledGraph G,
int  v,
ConstIntIterator  B,
ConstIntIterator  E,
bool  direct = false 
) [inline]

Function attaches a loop of edges to a graph consequently labelled by numbers [B,E).

Definition at line 275 of file GraphType.h.

References Graphs::GraphConcept< VertexType, EdgeType >::newEdge(), and Graphs::GraphConcept< VertexType, EdgeType >::newVertex().

template<class ConstIntIterator >
int addRay ( IntLabeledGraph G,
int  v,
ConstIntIterator  B,
ConstIntIterator  E,
bool  direct = false 
) [inline]

Function attaches a sequence of edges to a graph consequently labelled by numbers [B,E).

Definition at line 258 of file GraphType.h.

References Graphs::GraphConcept< VertexType, EdgeType >::newEdge(), and Graphs::GraphConcept< VertexType, EdgeType >::newVertex().

float getHyperbolicityConst ( const Graph G  ) 

Compute constant of hyperbolicity of a graph (uses Gromov's inner product).

string graphviz_format ( const IntLabeledGraph G,
const GraphDrawingAttributes GDA = GraphDrawingAttributes() 
)

Get Graphviz graph description.

string graphviz_format ( const Graph G,
const GraphDrawingAttributes GDA = GraphDrawingAttributes() 
)

Get Graphviz graph description.

vector< vector< int > > innerProductTable ( const Graph G,
int  origin 
)

Compute Gromov's inner product for all pairs of vertices (the origin is the vertex with the smallest number).

vector< vector< int > > lengthTable ( const Graph G  ) 

Compute distances between all pairs of vertices.

ostream& operator<< ( ostream &  os,
const IntLabeledEdge e 
)

Output operator for IntLabeledEdge.

ostream& operator<< ( ostream &  os,
const GraphEdge e 
)
void prepareToFold ( const IntLabeledEdge e1,
const IntLabeledEdge e2 
)

Function preparing two edges to a fold (for IntLabeledEdge does nothing).

Graph randomGraph ( int  N,
float  edge_param 
)

Create random graph on N verteices where each edge has probability to appear = edge_param.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on Mon Sep 26 18:43:45 2011 for CRyptography And Groups (CRAG) by  doxygen 1.6.1