Open
Graph Drawing
Framework

 v.2010.10
 

TileToRowsCCPacker.h

Go to the documentation of this file.
00001 /*
00002  * $Revision: 2027 $
00003  * 
00004  * last checkin:
00005  *   $Author: gutwenger $ 
00006  *   $Date: 2010-09-01 11:55:17 +0200 (Wed, 01 Sep 2010) $ 
00007  ***************************************************************/
00008  
00053 #ifdef _MSC_VER
00054 #pragma once
00055 #endif
00056 
00057 #ifndef OGDF_TILE_TO_ROWS_CC_PACKER_H
00058 #define OGDF_TILE_TO_ROWS_CC_PACKER_H
00059 
00060 
00061 
00062 #include <ogdf/module/CCLayoutPackModule.h>
00063 
00064 
00065 
00066 namespace ogdf {
00067 
00068 
00070 class OGDF_EXPORT TileToRowsCCPacker : public CCLayoutPackModule
00071 {
00072     template<class POINT> struct RowInfo;
00073 
00074 public:
00076     TileToRowsCCPacker() { }
00077 
00078     virtual ~TileToRowsCCPacker() { }
00079 
00092     void call(Array<DPoint> &box,
00093         Array<DPoint> &offset,
00094         double pageRatio = 1.0);
00095 
00108     void call(Array<IPoint> &box,
00109         Array<IPoint> &offset,
00110         double pageRatio = 1.0);
00111 
00112 private:
00113     template<class POINT>
00114     static void callGeneric(Array<POINT> &box,
00115         Array<POINT> &offset,
00116         double pageRatio);
00117 
00118     template<class POINT>
00119     static int findBestRow(Array<RowInfo<POINT> > &row,
00120         int nRows,
00121         double pageRatio,
00122         const POINT &rect);
00123 
00124 };
00125 
00126 
00127 } // end namespace ogdf
00128 
00129 
00130 #endif