|
Open Graph Drawing Framework |
v. 2023.09 (Elderberry)
|
|
|
Go to the documentation of this file.
73 :
m_s(nullptr),
m_t(nullptr) {
150 if ((*
m_cap)[e] < 0) {
The namespace for all OGDF objects.
Compare floating point numbers with epsilons and integral numbers with normal compare operators.
Includes declaration of graph class.
MaxFlowModule()
Empty Constructor.
bool isFeasibleInstance() const
Return whether the instance is feasible, i.e. the capacities are non-negative.
const node * m_t
Pointer to the sink node.
virtual ~MaxFlowModule()
Destructor that deletes m_flow if it is an internal flow array.
EpsilonTest * m_et
Pointer to the used EpsilonTest.
T computeFlow(EdgeArray< T > &cap, node &s, node &t, EdgeArray< T > &flow)
Only a shortcut for computeValue and computeFlowAfterValue.
const node * m_s
Pointer to the source node.
const Graph * m_G
Pointer to the given graph.
Decralation of GraphElement and GraphList classes.
void useEpsilonTest(const double &eps)
Change the used EpsilonTest from StandardEpsilonTest to a user given EpsilonTest.
virtual void computeFlowAfterValue()=0
Compute the flow itself after the flow value is already computed. Only used in algorithms with 2 phas...
Data type for general directed graphs (adjacency list representation).
void computeFlowAfterValue(EdgeArray< T > &flow)
Compute the flow itself after the flow value is already computed. Only used in algorithms with 2 phas...
virtual T computeValue(const EdgeArray< T > &cap, const node &s, const node &t)=0
Compute only the value of the flow.
virtual void init(const Graph &graph, EdgeArray< T > *flow=nullptr)
Initialize the problem with a graph and optional flow array. If no flow array is given,...
bool doingAReInit
Is the next "init" call a re-init?
internal::GraphObjectContainer< EdgeElement > edges
The container containing all edge objects.
Class for the representation of edges.
const EdgeArray< T > * m_cap
Pointer to the given capacity array.
MaxFlowModule(const Graph &graph, EdgeArray< T > *flow=nullptr)
Constructor that calls init.
bool usingExternFlow
Is an extern flow array given in the constructor?
Class for the representation of nodes.
EdgeArray< T > * m_flow
Pointer to (extern) flow array.
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.