24 #ifndef vtkPSurfaceLICComposite_h
25 #define vtkPSurfaceLICComposite_h
27 #include "vtkSurfaceLICComposite.h"
29 #include "vtkOpenGLRenderWindow.h"
43 class vtkPPixelExtentOps;
109 double EstimateCommunicationCost(
110 const std::deque<std::deque<vtkPixelExtent> > &srcExts,
111 const std::deque<std::deque<vtkPixelExtent> > &destExts);
117 double EstimateDecompEfficiency(
118 const std::deque< std::deque<vtkPixelExtent> > &exts,
119 const std::deque< std::deque<vtkPixelExtent> > &guardExts);
124 int DecomposeScreenExtent(
125 std::deque< std::deque<vtkPixelExtent> >&newExts,
134 std::list<vtkPixelExtent> &out);
145 const std::deque< std::deque< vtkPixelExtent> > &
in,
146 std::deque< std::deque< vtkPixelExtent> > &out,
152 int MakeDecompLocallyDisjoint(
153 const std::deque< std::deque< vtkPixelExtent> > &
in,
154 std::deque< std::deque< vtkPixelExtent> > &out);
162 int AllGatherExtents(
163 const std::deque<vtkPixelExtent> &localExts,
164 std::deque<std::deque<vtkPixelExtent> > &remoteExts,
170 int AllReduceVectorMax(
171 const std::deque<vtkPixelExtent> &originalExts,
172 const std::deque<std::deque<vtkPixelExtent> > &newExts,
180 const std::deque<std::deque<vtkPixelExtent> > &exts,
181 std::deque<std::deque<vtkPixelExtent> > &guardExts,
182 std::deque<std::deque<vtkPixelExtent> > &disjointGuardExts,
188 vtkPPixelExtentOps *PixelOps;
201 std::deque<vtkPPixelTransfer> GatherProgram;
202 std::deque<vtkPPixelTransfer> ScatterProgram;