Node and arc incidences


Functions

virtual TNode abstractMixedGraph::StartNode (TArc a) const =0 throw (ERRange)
virtual TNode abstractMixedGraph::EndNode (TArc a) const throw (ERRange)
virtual TArc abstractMixedGraph::Right (TArc a, TNode v) const =0 throw (ERRange,ERRejected)
virtual TArc abstractMixedGraph::Left (TArc a) const throw (ERRange,ERRejected)
virtual TArc abstractMixedGraph::First (TNode v) const =0 throw (ERRange,ERRejected)
TNode sparseRepresentation::StartNode (TArc a) const throw (ERRange)
TNode sparseRepresentation::EndNode (TArc a) const throw (ERRange)
TArc sparseRepresentation::Right (TArc a) const throw (ERRange)
TArc sparseRepresentation::Left (TArc a) const throw (ERRange)
void sparseRepresentation::ReleaseReverseIncidences () throw ()
TArc sparseRepresentation::First (TNode v) const throw (ERRange)

Function Documentation

TNode EndNode TArc  a  )  const throw (ERRange) [inherited]
 

Query the end node of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the end node

TNode EndNode TArc  a  )  const throw (ERRange) [virtual, inherited]
 

Query the end node of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the end node

Reimplemented in layeredAuxNetwork, balancedToBalanced, bigraphToDigraph, denseBiGraph, denseDiGraph, denseGraph, digraphToDigraph, graphToBalanced, and surfaceGraph.

TArc First TNode  v  )  const throw (ERRange) [inherited]
 

Retrieve an arc with a given start node.

Parameters:
v An arc index ranged [0,1,..,nAct-1]
Returns:
The index of an outgoing arc
The First(v) incidence is somewhat arbitrary, since icidence lists are cyclic. But when an arc is inserted, it is inserted into the incidence lists right after the First() incidence. If the graph is planely represented, an exterior face is assigned, and v is an exterior node, then the first two incidences are exterior arcs, and inserting an arc with two exterior end nodes preserves the planar representation.

virtual TArc First TNode  v  )  const throw (ERRange,ERRejected) [pure virtual, inherited]
 

Retrieve an arc with a given start node.

The First(v) incidence is somewhat arbitrary, since icidence lists are cyclic. But when an arc is inserted, it is inserted into the incidence lists right after the First() incidence. If the graph is planely represented, and v is an exterior node, the first two incidences are usually exterior arcs, and inserting an arc with two exterior end nodes preserves the planar representation.

Parameters:
v A node index ranged [0,1,..,nAct-1]
Returns:
The index of an outgoing arc

Implemented in layeredAuxNetwork, balancedToBalanced, bigraphToDigraph, denseBiGraph, denseDiGraph, denseGraph, digraphToDigraph, graphToBalanced, and surfaceGraph.

TArc Left TArc  a  )  const throw (ERRange) [inherited]
 

Query the predecessor of a given arc in the incidence list of its start node.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the left-hand incident arc
Other than the right-hand incidence, left-hand incidences are generated only on demand. The initialization is O(mAct).

TArc Left TArc  a  )  const throw (ERRange,ERRejected) [virtual, inherited]
 

Query the predecessor of a given arc in the incidence list of its start node.

Other than the right-hand incidence, left-hand incidences are generated only on demand. The initialization is O(mAct).

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the left-hand incident arc

void ReleaseReverseIncidences  )  throw () [inherited]
 

Dismiss the left-hand incidence lists.

Deletion is only for sake of efficiency. The reverse incidence lists are rebuilt by any subsequent call to Left().

TArc Right TArc  a  )  const throw (ERRange) [inherited]
 

Query the successor of a given arc in the incidence list of its start node.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the right-hand incident arc

virtual TArc Right TArc  a,
TNode  v
const throw (ERRange,ERRejected) [pure virtual, inherited]
 

Query the successor of a given arc in the incidence list of its start node.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
v The index of the start node of a (only to reduce lookup times)
Returns:
The index of the right-hand incident arc

Implemented in layeredAuxNetwork, balancedToBalanced, bigraphToDigraph, denseBiGraph, denseDiGraph, denseGraph, digraphToDigraph, graphToBalanced, and surfaceGraph.

TNode StartNode TArc  a  )  const throw (ERRange) [inherited]
 

Query the start node of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the start node

virtual TNode StartNode TArc  a  )  const throw (ERRange) [pure virtual, inherited]
 

Query the start node of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The index of the start node

Implemented in layeredAuxNetwork, balancedToBalanced, bigraphToDigraph, denseBiGraph, denseDiGraph, denseGraph, digraphToDigraph, graphToBalanced, layeredShrNetwork, and surfaceGraph.