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/Graph.h>
35 #include <ogdf/basic/Module.h>
36 #include <ogdf/basic/basic.h>
37 #include <ogdf/basic/memory.h>
38 
39 namespace ogdf {
40 class UpwardPlanRep;
41 template<class E>
42 class List;
43 
45 public:
48 
49  // destruction
51 
60  ReturnType call(UpwardPlanRep& UPR, const List<edge>& origEdges) {
61  return doCall(UPR, origEdges, nullptr, nullptr);
62  }
63 
74  ReturnType call(UpwardPlanRep& UPR, const EdgeArray<int>& costOrig, const List<edge>& origEdges) {
75  return doCall(UPR, origEdges, &costOrig, nullptr);
76  }
77 
90  const EdgeArray<bool>& forbidOriginal, const List<edge>& origEdges) {
91  return doCall(UPR, origEdges, &costOrig, &forbidOriginal);
92  }
93 
106  ReturnType call(UpwardPlanRep& UPR, const EdgeArray<bool>& forbidOriginal,
107  const List<edge>& origEdges) {
108  return doCall(UPR, origEdges, nullptr, &forbidOriginal);
109  }
110 
111 protected:
123  virtual ReturnType doCall(UpwardPlanRep& UPR, const List<edge>& origEdges,
124  const EdgeArray<int>* costOrig, const EdgeArray<bool>* forbiddenEdgeOrig) = 0;
125 
127 };
128 
129 }
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
Graph.h
Includes declaration of graph class.
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:106
ogdf::UpwardEdgeInserterModule::~UpwardEdgeInserterModule
virtual ~UpwardEdgeInserterModule()
Definition: UpwardEdgeInserterModule.h:50
ogdf::UpwardEdgeInserterModule
Definition: UpwardEdgeInserterModule.h:44
OGDF_MALLOC_NEW_DELETE
#define OGDF_MALLOC_NEW_DELETE
Makes the class use malloc for memory allocation.
Definition: memory.h:92
ogdf::Module
Base class for modules.
Definition: Module.h:49
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:89
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:74
ogdf::UpwardEdgeInserterModule::UpwardEdgeInserterModule
UpwardEdgeInserterModule()
Initializes an edge insertion module.
Definition: UpwardEdgeInserterModule.h:47
ogdf::List< edge >
basic.h
Basic declarations, included by all source files.
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:57
Module.h
Declares base class for all module types.
ogdf::Module::ReturnType
ReturnType
The return type of a module.
Definition: Module.h:52
memory.h
Declaration of memory manager for allocating small pieces of memory.
ogdf::internal::EdgeArrayBase2
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition: Graph_d.h:716
ogdf::UpwardEdgeInserterModule::call
ReturnType call(UpwardPlanRep &UPR, const List< edge > &origEdges)
Inserts all edges in origEdges into UPR.
Definition: UpwardEdgeInserterModule.h:60