Subgraph management


Functions

void abstractMixedGraph::InitSubgraph () throw ()
virtual void abstractMixedGraph::SetSub (TArc a, TFloat lambda) throw (ERRange,ERRejected)
virtual void abstractMixedGraph::SetSubRelative (TArc a, TFloat lambda) throw (ERRange)
virtual void abstractMixedGraph::Push (TArc a, TFloat lambda) throw (ERRange,ERRejected)
virtual TFloat abstractMixedGraph::Sub (TArc a) const =0 throw (ERRange)
TFloat abstractMixedGraph::ResCap (TArc a) const throw (ERRange)
TCap abstractMixedGraph::Cardinality () const throw ()
TFloat abstractMixedGraph::Length () const throw ()
TFloat abstractMixedGraph::Weight () const throw ()
void abstractMixedGraph::AddToSubgraph (TNode v=NoNode) throw (ERRange,ERRejected)
virtual void graphRepresentation::NewSubgraph ()=0 throw (ERRejected)
virtual void graphRepresentation::ReleaseSubgraph ()=0 throw ()
virtual TFloat graphRepresentation::Sub (TArc a) const =0 throw (ERRange)
virtual void graphRepresentation::SetSub (TArc a, TFloat multiplicity)=0 throw (ERRange,ERRejected)
virtual void graphRepresentation::SetSubRelative (TArc a, TFloat lambda)=0 throw (ERRange,ERRejected)
void sparseRepresentation::NewSubgraph () throw (ERRejected)
void sparseRepresentation::ReleaseSubgraph () throw ()
TFloat sparseRepresentation::Sub (TArc a) const throw (ERRange)
void sparseRepresentation::SetSub (TArc a, TFloat multiplicity) throw (ERRange,ERRejected)
void sparseRepresentation::SetSubRelative (TArc a, TFloat lambda) throw (ERRange,ERRejected)

Function Documentation

void AddToSubgraph TNode  v = NoNode  )  throw (ERRange,ERRejected) [inherited]
 

Export predecessor arcs to the subgraph multiplicities.

Parameters:
v A node index ranged [0,1,..,n-1] or NoNode
If v is undefined, the subgraph multiplicity of all predecessor arcs is set to its upper capacity bounds. If a node v is specified, the operation is restricted to the predecessor path ending at v.

TCap Cardinality  )  const throw () [inherited]
 

Cardinality of the current subgraph.

Returns:
The sum of arc multiplicities

void InitSubgraph  )  throw () [inherited]
 

Set all subgraph multiplicities to the lower capacity bounds.

This also releases the node degree information

TFloat Length  )  const throw () [inherited]
 

Total length of the current predecessor tree.

Returns:
The sum of predecessor arc lengths

void NewSubgraph  )  throw (ERRejected) [virtual, inherited]
 

Allocate the subgraph multiplicities.

This initializes the subgraph multiplicities to the lower capacity bounds

Implements graphRepresentation.

virtual void NewSubgraph  )  throw (ERRejected) [pure virtual, inherited]
 

Allocate the subgraph multiplicities.

This initializes the subgraph multiplicities to the lower capacity bounds

Implemented in denseRepresentation, and sparseRepresentation.

void Push TArc  a,
TFloat  lambda
throw (ERRange,ERRejected) [virtual, inherited]
 

Increase or decrease the flow value of the arc a by an amount Lambda.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
lambda An amount of flow
This increases or decreases the multiplicity of the arc a by the amount of lambda. Other than SetSubRelative(), the orientation bit of a determines whether the multiplicity is increased or decreased.

Reimplemented in abstractDiGraph, balancedToBalanced, bigraphToDigraph, digraphToDigraph, graphToBalanced, and surfaceGraph.

void ReleaseSubgraph  )  throw () [virtual, inherited]
 

Deallocate the subgraph multiplicities.

This effectively sets the subgraph multiplicities to the lower capacity bounds

Implements graphRepresentation.

virtual void ReleaseSubgraph  )  throw () [pure virtual, inherited]
 

Deallocate the subgraph multiplicities.

This effectively sets the subgraph multiplicities to the lower capacity bounds

Implemented in denseRepresentation, and sparseRepresentation.

TFloat ResCap TArc  a  )  const throw (ERRange) [inherited]
 

Retrieve the residual capacity of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
Returns:
The residual capacity of a
This returns the possible change of the multiplicity of the arc a, depending on the orientation bit of a.

void SetSub TArc  a,
TFloat  multiplicity
throw (ERRange,ERRejected) [virtual, inherited]
 

Set the subgraph multiplicity to a specified value.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
multiplicity The intended multiplicity of a

Implements graphRepresentation.

virtual void SetSub TArc  a,
TFloat  multiplicity
throw (ERRange,ERRejected) [pure virtual, inherited]
 

Set the subgraph multiplicity to a specified value.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
multiplicity The intended multiplicity of a

Implemented in denseRepresentation, and sparseRepresentation.

void SetSub TArc  a,
TFloat  lambda
throw (ERRange,ERRejected) [virtual, inherited]
 

Set the subgraph multiplicity of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
lambda The desired multiplicity of a

void SetSubRelative TArc  a,
TFloat  lambda
throw (ERRange,ERRejected) [virtual, inherited]
 

Change the subgraph multiplicity by a specified amount.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
lambda Change the multiplicity of a by this amount

Implements graphRepresentation.

virtual void SetSubRelative TArc  a,
TFloat  lambda
throw (ERRange,ERRejected) [pure virtual, inherited]
 

Change the subgraph multiplicity by a specified amount.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
lambda Change the multiplicity of a by this amount

Implemented in denseRepresentation, and sparseRepresentation.

void SetSubRelative TArc  a,
TFloat  lambda
throw (ERRange) [virtual, inherited]
 

Adjust the subgraph multiplicity of a given arc.

Parameters:
a An arc index ranged [0,1,..,2*mAct-1]
lambda The desired change of the multiplicity of a
This increases or decreases the multiplicity of the arc a by the amount of lambda.

TFloat Sub TArc  a  )  const throw (ERRange) [virtual, inherited]
 

Retrieve the subgraph multiplicity of a given arc.

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

Implements graphRepresentation.

virtual TFloat Sub TArc  a  )  const throw (ERRange) [pure virtual, inherited]
 

Retrieve the subgraph multiplicity of a given arc.

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

Implemented in denseRepresentation, and sparseRepresentation.

virtual TFloat Sub TArc  a  )  const throw (ERRange) [pure virtual, inherited]
 

Retrieve the subgraph multiplicity of a given arc.

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

Implemented in layeredAuxNetwork, balancedToBalanced, bigraphToDigraph, digraphToDigraph, graphToBalanced, and surfaceGraph.

TFloat Weight  )  const throw () [inherited]
 

Total weight of the current subgraph.

Returns:
The weighted sum of subgraph edge lengths