Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

UpwardEdgeInserterModule.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/Module.h>
36 
37 namespace ogdf {
38 
40 public:
43 
44  // destruction
46 
55  ReturnType call(UpwardPlanRep& UPR, const List<edge>& origEdges) {
56  return doCall(UPR, origEdges, nullptr, nullptr);
57  }
58 
69  ReturnType call(UpwardPlanRep& UPR, const EdgeArray<int>& costOrig, const List<edge>& origEdges) {
70  return doCall(UPR, origEdges, &costOrig, nullptr);
71  }
72 
85  const EdgeArray<bool>& forbidOriginal, const List<edge>& origEdges) {
86  return doCall(UPR, origEdges, &costOrig, &forbidOriginal);
87  }
88 
101  ReturnType call(UpwardPlanRep& UPR, const EdgeArray<bool>& forbidOriginal,
102  const List<edge>& origEdges) {
103  return doCall(UPR, origEdges, nullptr, &forbidOriginal);
104  }
105 
106 protected:
118  virtual ReturnType doCall(UpwardPlanRep& UPR, const List<edge>& origEdges,
119  const EdgeArray<int>* costOrig, const EdgeArray<bool>* forbiddenEdgeOrig) = 0;
120 
122 };
123 
124 }
ogdf
The namespace for all OGDF objects.
Definition: AugmentationModule.h:36
UpwardPlanRep.h
Declaration of a base class for planar representations of graphs and cluster graphs.
ogdf::UpwardEdgeInserterModule::call
ReturnType call(UpwardPlanRep &UPR, const EdgeArray< bool > &forbidOriginal, const List< edge > &origEdges)
Inserts all edges in origEdges with given forbidden edges into UPR.
Definition: UpwardEdgeInserterModule.h:101
ogdf::UpwardEdgeInserterModule::~UpwardEdgeInserterModule
virtual ~UpwardEdgeInserterModule()
Definition: UpwardEdgeInserterModule.h:45
ogdf::UpwardEdgeInserterModule
Definition: UpwardEdgeInserterModule.h:39
OGDF_MALLOC_NEW_DELETE
#define OGDF_MALLOC_NEW_DELETE
Makes the class use malloc for memory allocation.
Definition: memory.h:91
ogdf::Module
Base class for modules.
Definition: Module.h:47
ogdf::UpwardEdgeInserterModule::call
ReturnType call(UpwardPlanRep &UPR, const EdgeArray< int > &costOrig, const EdgeArray< bool > &forbidOriginal, const List< edge > &origEdges)
Inserts all edges in origEdges with given forbidden edges into UPR.
Definition: UpwardEdgeInserterModule.h:84
ogdf::UpwardEdgeInserterModule::call
ReturnType call(UpwardPlanRep &UPR, const EdgeArray< int > &costOrig, const List< edge > &origEdges)
Inserts all edges in origEdges with given costs into UPR.
Definition: UpwardEdgeInserterModule.h:69
ogdf::UpwardEdgeInserterModule::UpwardEdgeInserterModule
UpwardEdgeInserterModule()
Initializes an edge insertion module.
Definition: UpwardEdgeInserterModule.h:42
ogdf::List< edge >
OGDF_EXPORT
#define OGDF_EXPORT
Specifies that a function or class is exported by the OGDF DLL.
Definition: config.h:101
ogdf::UpwardPlanRep
Upward planarized representations (of a connected component) of a graph.
Definition: UpwardPlanRep.h:50
Module.h
Declares base class for all module types.
ogdf::Module::ReturnType
ReturnType
The return type of a module.
Definition: Module.h:50
ogdf::internal::EdgeArrayBase2
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition: Graph_d.h:709
ogdf::UpwardEdgeInserterModule::call
ReturnType call(UpwardPlanRep &UPR, const List< edge > &origEdges)
Inserts all edges in origEdges into UPR.
Definition: UpwardEdgeInserterModule.h:55