Open
Graph Drawing
Framework

 v.2012.05
 

LayoutClusterPlanRepModule.h
Go to the documentation of this file.
00001 /*
00002  * $Revision: 2299 $
00003  * 
00004  * last checkin:
00005  *   $Author: gutwenger $ 
00006  *   $Date: 2012-05-07 15:57:08 +0200 (Mon, 07 May 2012) $ 
00007  ***************************************************************/
00008  
00044 #ifdef _MSC_VER
00045 #pragma once
00046 #endif
00047 
00048 #ifndef OGDF_LAYOUT_CLUSTER_PLAN_REP_MODULE_H
00049 #define OGDF_LAYOUT_CLUSTER_PLAN_REP_MODULE_H
00050 
00051 
00052 
00053 #include <ogdf/cluster/ClusterPlanRep.h>
00054 #include <ogdf/basic/Layout.h>
00055 
00056 
00057 
00058 namespace ogdf {
00059 
00060     class NodePair;
00061     
00068 class OGDF_EXPORT LayoutClusterPlanRepModule {
00069 public:
00071     LayoutClusterPlanRepModule() { }
00072 
00073     virtual ~LayoutClusterPlanRepModule() { }
00074 
00084     virtual void call(ClusterPlanRep &PG, 
00085               adjEntry adjExternal, 
00086               Layout &drawing,
00087               List<NodePair>& npEdges,
00088               List<edge>& newEdges,
00089               Graph& originalGraph) = 0;
00090 
00091 
00093     const DPoint &getBoundingBox() const {
00094         return m_boundingBox;
00095     }
00096 
00098     virtual void setOptions(int /* optionField */) { } //don't make it abstract
00099 
00101     virtual int getOptions() { return 0; } //don't make it abstract
00102 
00104     virtual double separation() const = 0;
00105 
00107     virtual void separation(double sep) = 0;
00108 
00109 protected:
00114     DPoint m_boundingBox;
00115 
00116 
00117     OGDF_MALLOC_NEW_DELETE
00118 };
00119 
00120 
00121 } // end namespace ogdf
00122 
00123 
00124 #endif