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_HIER_CLUSTER_LAYOUT_MODULE_H 00049 #define OGDF_HIER_CLUSTER_LAYOUT_MODULE_H 00050 00051 00052 00053 #include <ogdf/cluster/ClusterGraphCopyAttributes.h> 00054 00055 00056 namespace ogdf { 00057 00058 00064 class OGDF_EXPORT HierarchyClusterLayoutModule { 00065 public: 00067 HierarchyClusterLayoutModule() { } 00068 00069 virtual ~HierarchyClusterLayoutModule() { } 00070 00076 void callCluster(const ExtendedNestingGraph& H, ClusterGraphAttributes &ACG) { 00077 ClusterGraphCopyAttributes ACGC(H,ACG); 00078 doCall(H,ACGC); 00079 ACGC.transform(); 00080 } 00081 00082 protected: 00091 virtual void doCall( 00092 const ExtendedNestingGraph& H, 00093 ClusterGraphCopyAttributes &ACGC) = 0; 00094 00095 OGDF_MALLOC_NEW_DELETE 00096 }; 00097 00098 00099 } // end namespace ogdf 00100 00101 00102 #endif