User Documentation
Centre for Vision, Speech & Signal Processing
DEVELOP IN NAMESPACE AMMA TREE ROOT AMMA SEARCH AMMA HOME
 

  PUBLIC
GraphC::GraphC(BaseGraphC::TypeT)
GraphC::GraphC(const GraphC &)
GraphC::operator=(const GraphC &)
GraphC::~GraphC(void)
GraphC::InsNode(void)
GraphC::InsEdge(GraphNodeC &,GraphNodeC &)
GraphC::Type(void) const
GraphC::operator BaseGraphC &(void)
GraphC::operator const BaseGraphC &(void) const
GraphC::BaseGraph(void)
GraphC::BaseGraph(void) const
GraphC::Nodes(void) const
GraphC::Nodes(void)
GraphC::Edges(void) const
GraphC::Edges(void)
GraphC::IsCyclic(void)
GraphC::ResetNodeMarkers(void)
GraphC::ResetEdgeMarkers(void)
GraphC::ResetMarkers(void)
GraphC::SetNodeMarkersInOrder(void)
GraphC::SetEdgeMarkersInOrder(void)
GraphC::SetMarkersInOrder(void)
GraphC::PrintNodes(ostream &) const
GraphC::PrintEdges(ostream &) const
GraphC::Print(ostream &)
GraphC::DebugPrint(ostream &) const
GraphC::InsNode(GraphNodeRepC::GenClassT)
GraphC::InsEdge(GraphNodeC &,GraphNodeC &,GraphEdgeRepC::GenClassT)
GraphC
 
Reference counted graph.
 
include "amma/Graph.hh"
User Level:Default
Library:Mgraph
Example:exBiHash.cc
Section:Containers.Graphs
In Scope:std

Comments:
Use GraphTC for all new code.

The class GraphC represents reference counted graph which can be directed or undirected. It contains a collection of nodes and a collection of edges between nodes.

Parent Classes: Derived Classes: Variables:
Methods:
GraphC(BaseGraphC::TypeT type = BaseGraphC::DIRECTED)
Creates an empty graph, directed or undirected.

GraphC(const GraphC & g)
Creates another access to the graph 'g'. The constructor does not change the content of the graph 'g', but its reference counting. However, the content of the graph 'g' can be changed through the this new access later.

const GraphC & operator=(const GraphC & g)

~GraphC()
Destructor. Creation of the structure of the graph. ---------------------------------------

GraphNodeC InsNode()
Inserts one node to the graph. Returns the node iterator.

GraphEdgeC InsEdge(GraphNodeC & fromNode,GraphNodeC & toNode)
Inserts one egde to the graph. Returns the edge iterator. Access to the parts of the graph --------------------------------

BaseGraphC::TypeT Type() const
Returns the type of the graph, if it is directed or undirected.

operator BaseGraphC &()
Returns the reference to the graph structure which is not reference counted.

operator const BaseGraphC &() const
Returns the constant reference to the graph structure which is not reference counted.

BaseGraphC & BaseGraph()
Returns the reference to the graph structure which is not reference counted.

const BaseGraphC & BaseGraph() const
Returns the reference to the graph structure which is not reference counted.

const IntrDListC<GraphNodeRepC> & Nodes() const
Returns the constant list of nodes.

IntrDListC<GraphNodeRepC> & Nodes()
Returns the list of nodes.

const IntrDListC<GraphEdgeRepC> & Edges() const
Returns the constant list of edges.

IntrDListC<GraphEdgeRepC> & Edges()
Returns the list of edges.

BooleanT IsCyclic()
Test if a directed graph contains cycles. Functions changing the state of markers. ----------------------------------------

void ResetNodeMarkers()
Sets all node markers to be 0.

void ResetEdgeMarkers()
Sets all egde markers to be 0.

void ResetMarkers()
Sets all node and edge markers to be 0.

void SetNodeMarkersInOrder()
Sets all node markers as indexes in the list of nodes. The first node in the list of nodes has index 0.

void SetEdgeMarkersInOrder()
Sets all edge markers as indexes in the list of edges. The first edge in the list of edges has index 0.

void SetMarkersInOrder()
Sets all edge and node markers as indexes in the list of edges and in the list of node respectively. The first edge in the list of edges and the first node in the list of nodes have indexes equal to 0. Saving information about the graph. -----------------------------------

void PrintNodes(ostream & s) const
Prints all nodes of this graph into the output stream.

void PrintEdges(ostream & s) const
Prints all edges of this graph into the output stream.

void Print(ostream & s)
Sets marker of edges and nodes to be unique and print the whole structure of this graph.

void DebugPrint(ostream & s) const
Prints markers and addresses of all nodes and edges of this graph.

GraphNodeC InsNode(GraphNodeRepC::GenClassT nodeAttr)
Inserts one node to the graph. Returns the node iterator.

GraphEdgeC InsEdge(GraphNodeC & fromNode,GraphNodeC & toNode,GraphEdgeRepC::GenClassT edgeAttr)
Inserts one edge to the graph. Returns the edge iterator.


Programmer:Radek Marik, Documentation by CxxDoc: Tue Mar 20 10:48:08 2001