Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

MMEdgeInsertionModule.h
Go to the documentation of this file.
1 
33 #pragma once
34 
35 #include <ogdf/basic/Graph.h>
36 #include <ogdf/basic/Module.h>
37 #include <ogdf/basic/basic.h>
38 #include <ogdf/basic/memory.h>
39 
40 namespace ogdf {
41 class PlanRepExpansion;
42 template<class E>
43 class List;
44 
51 public:
54 
55  // destruction
56  virtual ~MMEdgeInsertionModule() { }
57 
66  ReturnType call(PlanRepExpansion& PG, const List<edge>& origEdges) {
67  return doCall(PG, origEdges, nullptr);
68  }
69 
80  ReturnType call(PlanRepExpansion& PG, const List<edge>& origEdges,
81  const EdgeArray<bool>& forbiddenEdgeOrig) {
82  return doCall(PG, origEdges, &forbiddenEdgeOrig);
83  }
84 
85 protected:
95  virtual ReturnType doCall(PlanRepExpansion& PG, const List<edge>& origEdges,
96  const EdgeArray<bool>* forbiddenEdgeOrig) = 0;
97 
99 };
100 
101 }
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
Graph.h
Includes declaration of graph class.
ogdf::MMEdgeInsertionModule::call
ReturnType call(PlanRepExpansion &PG, const List< edge > &origEdges, const EdgeArray< bool > &forbiddenEdgeOrig)
Inserts all edges in origEdges into PG and forbids crossing forbiddenEdges.
Definition: MMEdgeInsertionModule.h:80
ogdf::MMEdgeInsertionModule::~MMEdgeInsertionModule
virtual ~MMEdgeInsertionModule()
Definition: MMEdgeInsertionModule.h:56
ogdf::PlanRepExpansion
Planarized representations (of a connected component) of a graph.
Definition: PlanRepExpansion.h:58
ogdf::MMEdgeInsertionModule::call
ReturnType call(PlanRepExpansion &PG, const List< edge > &origEdges)
Inserts all edges in origEdges into PG.
Definition: MMEdgeInsertionModule.h:66
ogdf::MMEdgeInsertionModule::MMEdgeInsertionModule
MMEdgeInsertionModule()
Initializes a minor-monotone edge insertion module.
Definition: MMEdgeInsertionModule.h:53
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::MMEdgeInsertionModule
Interface for minor-monotone edge insertion algorithms.
Definition: MMEdgeInsertionModule.h:50
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
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