|
User Documentation |
|
Centre for Vision, Speech & Signal Processing |
|
PUBLIC |
DAGraphC::DAGraphC(void)
DAGraphC::DAGraphC(const DAGraphC &)
DAGraphC::Copy(void)
DAGraphC::InsNode(const NodeT &)
DAGraphC::TryEdge(GraphNodeIterC,GraphNodeIterC)
DAGraphC::InsEdge(GraphNodeIterC,GraphNodeIterC,const EdgeT &)
GraphTC::Copy(void)
GraphTC::Copy(HashARC &)
GraphTC::operator=(const GraphTC &)
GraphTC::InsNode(const NodeT &)
GraphTC::InsEdge(NodeIter &,NodeIter &,const EdgeT &)
GraphTC::InsEdge(const GraphNodeHC &,const GraphNodeHC &,const EdgeT &)
GraphTC::NoNodes(void) const
GraphTC::NoEdges(void) const
GraphTC::IsCyclic(void)
GraphTC::DebugPrint(ostream &) const
GraphTC::Copy(HashARC,GraphNodeIterC> &)
GraphTC::InsEdge(GraphNodeIterC &,GraphNodeIterC &,const EdgeT &)
|
Comments:
Graph node data must inherit from DAGraphMarkerC.
Parent Classes:
public GraphTC<class NodeT,class EdgeT>
Methods:
- DAGraphC()
-
Creates an empty directed graph.
- DAGraphC(const DAGraphC<NodeT,EdgeT> & g)
-
Creates an new access to the directed graph.
- DAGraphC<NodeT,EdgeT> Copy()
-
Copy graph.
- GraphNodeIterC<NodeT,EdgeT> InsNode(const NodeT & Dat)
-
Inserts one node to the graph. Returns the node iterator.
- BooleanT TryEdge(GraphNodeIterC<NodeT,EdgeT> fromNode,GraphNodeIterC<NodeT,EdgeT> toNode)
-
Can edge be added added to graph without adding
a cycle ?
- GraphEdgeIterC<NodeT,EdgeT> InsEdge(GraphNodeIterC<NodeT,EdgeT> fromNode,GraphNodeIterC<NodeT,EdgeT> toNode,const EdgeT & Dat)
-
Inserts one egde to the graph. Returns the edge iterator.
- GraphTC<NodeT,EdgeT> Copy()
-
Make a copy of this graph.
- GraphTC<NodeT,EdgeT> Copy(HashARC<NodeIter,NodeIter> & NodeMap)
-
Make a copy of this graph.
The mapping between new and old nodes is in NodeMap.
- const GraphTC<NodeT,EdgeT> & operator=(const GraphTC<NodeT,EdgeT> & g)
-
Creates another access to the graph 'g'.
The assigment 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.
Creation of the structure of the graph.
---------------------------------------
- GraphNodeIterC<NodeT,EdgeT> InsNode(const NodeT & Dat)
-
Inserts one node to the graph.
Returns the node iterator pointing to the new element.
- GraphEdgeIterC<NodeT,EdgeT> InsEdge(NodeIter & fromNode,NodeIter & toNode,const EdgeT & Dat)
-
Inserts one egde to the graph.
Returns an edge iterator pointing to the new element.
- GraphEdgeIterC<NodeT,EdgeT> InsEdge(const GraphNodeHC<NodeT,EdgeT> & fromNode,const GraphNodeHC<NodeT,EdgeT> & toNode,const EdgeT & Dat)
-
Inserts one egde to the graph.
Returns an edge iterator pointing to the new element.
- UIntT NoNodes() const
-
Count the number of nodes in the graph.
This actuall iterates through the list and is slow.
- UIntT NoEdges() const
-
Count the number of edges in the graph.
This actuall iterates through the list and is slow.
Tests on graph structure.
---------------------------------------
- BooleanT IsCyclic()
-
Test if a directed graph contains cycles.
- void DebugPrint(ostream & s) const
-
Prints markers and addresses of all nodes and edges of this graph.
- GraphTC<NodeT,EdgeT> Copy(HashARC<GraphNodeIterC<NodeT,EdgeT>,GraphNodeIterC<NodeT,EdgeT>> & NodeMap)
-
/////////////////////////////
Inserts one node to the graph. Returns the node iterator.
- GraphEdgeIterC<NodeT,EdgeT> InsEdge(GraphNodeIterC<NodeT,EdgeT> & fromNode,GraphNodeIterC<NodeT,EdgeT> & toNode,const EdgeT & Dat)
-
|
Programmer:Charles Galambos, Documentation by CxxDoc: Tue Mar 20 10:48:08 2001
|