Open
Graph Drawing
Framework

 v. 2023.09 (Elderberry)
 

FixedEmbeddingInserterUML.h
Go to the documentation of this file.
1 
32 #pragma once
33 
34 #include <ogdf/basic/Array.h>
35 #include <ogdf/basic/Graph.h>
36 #include <ogdf/basic/basic.h>
38 
39 #include <cstdint>
40 
41 namespace ogdf {
42 class PlanRepLight;
43 enum class RemoveReinsertType;
44 
47 public:
50 
53 
56 
58  virtual UMLEdgeInsertionModule* clone() const override;
59 
61  FixedEmbeddingInserterUML& operator=(const FixedEmbeddingInserterUML& inserter);
62 
68  void removeReinsert(RemoveReinsertType rrOption) { m_rrOption = rrOption; }
70 
72  RemoveReinsertType removeReinsert() const { return m_rrOption; }
73 
75 
79  void percentMostCrossed(double percent) { m_percentMostCrossed = percent; }
80 
82  double percentMostCrossed() const { return m_percentMostCrossed; }
83 
85 
90  void keepEmbedding(bool keep) { m_keepEmbedding = keep; }
91 
93  bool keepEmbeding() const { return m_keepEmbedding; }
94 
96 
97 private:
99  virtual ReturnType doCall(PlanRepLight& pr, const Array<edge>& origEdges,
100  const EdgeArray<int>* pCostOrig, const EdgeArray<uint32_t>* pEdgeSubgraph) override;
101 
105 };
106 
107 }
ogdf
The namespace for all OGDF objects.
Definition: multilevelmixer.cpp:39
Graph.h
Includes declaration of graph class.
ogdf::FixedEmbeddingInserterUML::m_keepEmbedding
bool m_keepEmbedding
Definition: FixedEmbeddingInserterUML.h:104
ogdf::FixedEmbeddingInserterUML::m_rrOption
RemoveReinsertType m_rrOption
The remove-reinsert method.
Definition: FixedEmbeddingInserterUML.h:102
ogdf::PlanRepLight
Light-weight version of a planarized representation, associated with a PlanRep.
Definition: PlanRepLight.h:45
ogdf::UMLEdgeInsertionModule
Interface for UML edge insertion algorithms.
Definition: UMLEdgeInsertionModule.h:53
ogdf::FixedEmbeddingInserterUML::keepEmbedding
void keepEmbedding(bool keep)
Sets the option keepEmbedding to keep.
Definition: FixedEmbeddingInserterUML.h:90
ogdf::FixedEmbeddingInserterUML::m_percentMostCrossed
double m_percentMostCrossed
The portion of most crossed edges considered.
Definition: FixedEmbeddingInserterUML.h:103
ogdf::FixedEmbeddingInserterUML::percentMostCrossed
void percentMostCrossed(double percent)
Sets the option percentMostCrossed to percent.
Definition: FixedEmbeddingInserterUML.h:79
UMLEdgeInsertionModule.h
Declaration of interface for edge insertion algorithms.
ogdf::Array
The parameterized class Array implements dynamic arrays of type E.
Definition: Array.h:219
ogdf::FixedEmbeddingInserterUML
Edge insertion module that inserts each edge optimally into a fixed embedding.
Definition: FixedEmbeddingInserterUML.h:46
ogdf::FixedEmbeddingInserterUML::removeReinsert
RemoveReinsertType removeReinsert() const
Returns the current setting of the remove-reinsert postprocessing method.
Definition: FixedEmbeddingInserterUML.h:72
ogdf::FixedEmbeddingInserterUML::~FixedEmbeddingInserterUML
~FixedEmbeddingInserterUML()
Destructor.
Definition: FixedEmbeddingInserterUML.h:55
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::RemoveReinsertType
RemoveReinsertType
The postprocessing method for edge insertion algorithms.
Definition: RemoveReinsertType.h:41
Array.h
Declaration and implementation of Array class and Array algorithms.
ogdf::FixedEmbeddingInserterUML::keepEmbeding
bool keepEmbeding() const
Returns the current setting of option keepEmbedding.
Definition: FixedEmbeddingInserterUML.h:93
ogdf::FixedEmbeddingInserterUML::percentMostCrossed
double percentMostCrossed() const
Returns the current setting of option percentMostCrossed.
Definition: FixedEmbeddingInserterUML.h:82
ogdf::internal::EdgeArrayBase2
RegisteredArray for edges of a graph, specialized for EdgeArray<edge>.
Definition: Graph_d.h:716