Open
Graph Drawing
Framework

 v.2012.07
 

LayoutPlanRepModule.h
Go to the documentation of this file.
1 /*
2  * $Revision: 2583 $
3  *
4  * last checkin:
5  * $Author: gutwenger $
6  * $Date: 2012-07-12 01:02:21 +0200 (Do, 12. Jul 2012) $
7  ***************************************************************/
8 
45 #ifdef _MSC_VER
46 #pragma once
47 #endif
48 
49 #ifndef OGDF_UML_PLANAR_LAYOUT_MODULE_H
50 #define OGDF_UML_PLANAR_LAYOUT_MODULE_H
51 
52 
53 
55 #include <ogdf/basic/Layout.h>
56 
57 
58 
59 namespace ogdf {
60 
61 
62 enum UMLOpt {umlOpAlign = 0x0001, umlOpScale = 0x0002, umlOpProg = 0x0004};
63 
64 
71 public:
74 
75  virtual ~LayoutPlanRepModule() { }
76 
84  virtual void call(PlanRepUML &PG,
85  adjEntry adjExternal,
86  Layout &drawing) = 0;
87 
89  void operator()(PlanRepUML &PG, adjEntry adjExternal, Layout &drawing) {
90  call(PG,adjExternal,drawing);
91  }
92 
94  const DPoint &getBoundingBox() const {
95  return m_boundingBox;
96  }
97 
99  virtual void setOptions(int /* optionField */) { } //don't make it abstract
100 
102  virtual int getOptions() { return 0; } //don't make it abstract
103 
105  virtual double separation() const = 0;
106 
108  virtual void separation(double sep) = 0;
109 
110 protected:
116 
122  void setBoundingBox(PlanRepUML &PG, Layout &drawing);
123 
125 };
126 
127 
128 } // end namespace ogdf
129 
130 
131 #endif