24 #ifndef vtkPSurfaceLICComposite_h 25 #define vtkPSurfaceLICComposite_h 29 #include "vtkOpenGLRenderWindow.h" 44 class vtkPPixelExtentOps;
104 double EstimateCommunicationCost(
105 const std::deque<std::deque<vtkPixelExtent> > &srcExts,
106 const std::deque<std::deque<vtkPixelExtent> > &destExts);
112 double EstimateDecompEfficiency(
113 const std::deque< std::deque<vtkPixelExtent> > &exts,
114 const std::deque< std::deque<vtkPixelExtent> > &guardExts);
119 int DecomposeScreenExtent(
120 std::deque< std::deque<vtkPixelExtent> >&newExts,
129 std::list<vtkPixelExtent> &out);
140 const std::deque< std::deque< vtkPixelExtent> > &in,
141 std::deque< std::deque< vtkPixelExtent> > &out,
147 int MakeDecompLocallyDisjoint(
148 const std::deque< std::deque< vtkPixelExtent> > &in,
149 std::deque< std::deque< vtkPixelExtent> > &out);
157 int AllGatherExtents(
158 const std::deque<vtkPixelExtent> &localExts,
159 std::deque<std::deque<vtkPixelExtent> > &remoteExts,
165 int AllReduceVectorMax(
166 const std::deque<vtkPixelExtent> &originalExts,
167 const std::deque<std::deque<vtkPixelExtent> > &newExts,
175 const std::deque<std::deque<vtkPixelExtent> > &exts,
176 std::deque<std::deque<vtkPixelExtent> > &guardExts,
177 std::deque<std::deque<vtkPixelExtent> > &disjointGuardExts,
183 vtkPPixelExtentOps *PixelOps;
191 std::deque<vtkPPixelTransfer> GatherProgram;
192 std::deque<vtkPPixelTransfer> ScatterProgram;
static vtkSurfaceLICComposite * New()
friend ostream & operator<<(ostream &os, vtkSurfaceLICComposite &ss)
dynamic, self-adjusting array of float
virtual vtkOpenGLRenderWindow * GetContext()
#define VTKRENDERINGPARALLELLIC_EXPORT
#define vtkTypeMacro(thisClass, superclass)
virtual void SetCommunicator(vtkPainterCommunicator *)
virtual int Gather(void *, int, int, vtkTextureObject *&)
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
virtual void SetContext(vtkOpenGLRenderWindow *)
int AddGuardPixels(const std::deque< vtkPixelExtent > &exts, std::deque< vtkPixelExtent > &guardExts, std::deque< vtkPixelExtent > &disjointGuardExts, float *vectors)
static int MakeDecompDisjoint(std::deque< vtkPixelExtent > &in, std::deque< vtkPixelExtent > &out)
abstracts an OpenGL texture object.
create a window for renderers to draw into
virtual int Scatter(void *, int, int, vtkTextureObject *&)
virtual int BuildProgram(float *)
Interface to OpenGL framebuffer object.