44 #ifndef vtkParallelRenderManager_h
45 #define vtkParallelRenderManager_h
47 #include "vtkRenderingParallelModule.h"
104 virtual void InitializePieces();
113 virtual void InitializeOffScreen();
121 virtual void StartInteractor();
127 virtual void StartServices();
132 virtual void StopServices();
138 virtual void StartRender();
139 virtual void EndRender();
140 virtual void SatelliteStartRender();
141 virtual void SatelliteEndRender();
142 virtual void RenderRMI();
144 virtual void ResetCameraClippingRange(
vtkRenderer *ren);
145 virtual void ComputeVisiblePropBoundsRMI(
int renderId);
148 virtual void InitializeRMIs();
155 virtual void ResetAllCameras();
160 virtual void ComputeVisiblePropBounds(
vtkRenderer *ren,
double bounds[6]);
169 vtkSetMacro(ParallelRendering,
int);
170 vtkGetMacro(ParallelRendering,
int);
171 vtkBooleanMacro(ParallelRendering,
int);
181 vtkSetMacro(RenderEventPropagation,
int);
182 vtkGetMacro(RenderEventPropagation,
int);
183 vtkBooleanMacro(RenderEventPropagation,
int);
202 vtkSetMacro(UseCompositing,
int);
203 vtkGetMacro(UseCompositing,
int);
204 vtkBooleanMacro(UseCompositing,
int);
221 virtual void SetImageReductionFactor(
double factor);
222 vtkGetMacro(ImageReductionFactor,
double);
225 vtkSetMacro(MaxImageReductionFactor,
double);
226 vtkGetMacro(MaxImageReductionFactor,
double);
234 virtual void SetImageReductionFactorForUpdateRate(
double DesiredUpdateRate);
242 vtkSetMacro(AutoImageReductionFactor,
int);
243 vtkGetMacro(AutoImageReductionFactor,
int);
244 vtkBooleanMacro(AutoImageReductionFactor,
int);
251 vtkGetMacro(RenderTime,
double);
252 vtkGetMacro(ImageProcessingTime,
double);
265 vtkGetMacro(SyncRenderWindowRenderers,
int);
266 vtkSetMacro(SyncRenderWindowRenderers,
int);
267 vtkBooleanMacro(SyncRenderWindowRenderers,
int);
270 virtual void RemoveAllRenderers();
283 vtkSetMacro(WriteBackImages,
int);
284 vtkGetMacro(WriteBackImages,
int);
285 vtkBooleanMacro(WriteBackImages,
int);
294 vtkSetMacro(MagnifyImages,
int);
295 vtkGetMacro(MagnifyImages,
int);
296 vtkBooleanMacro(MagnifyImages,
int);
307 virtual void SetMagnifyImageMethod(
int method);
308 vtkGetMacro(MagnifyImageMethod,
int);
310 this->SetMagnifyImageMethod(NEAREST);
313 this->SetMagnifyImageMethod(LINEAR);
322 const int fullImageSize[2],
324 const int reducedImageSize[2],
325 const int fullImageViewport[4] =
nullptr,
326 const int reducedImageViewport[4] =
nullptr);
328 const int fullImageSize[2],
330 const int reducedImageSize[2],
331 const int fullImageViewport[4] =
nullptr,
332 const int reducedImageViewport[4] =
nullptr);
334 const int fullImageSize[2],
336 const int reducedImageSize[2],
337 const int fullImageViewport[4] =
nullptr,
338 const int reducedImageViewport[4] =
nullptr);
350 virtual void GetPixelData(
int x1,
int y1,
int x2,
int y2,
363 virtual void GetReducedPixelData(
int x1,
int y1,
int x2,
int y2,
371 vtkGetVector2Macro(FullImageSize,
int);
377 vtkGetVector2Macro(ReducedImageSize,
int);
384 void TileWindows(
int xsize,
int ysize,
int nColumns);
391 vtkSetMacro(UseRGBA,
int);
392 vtkGetMacro(UseRGBA,
int);
400 vtkSetMacro(ForceRenderWindowSize,
int);
401 vtkGetMacro(ForceRenderWindowSize,
int);
409 vtkSetVector2Macro(ForcedRenderWindowSize,
int);
410 vtkGetVector2Macro(ForcedRenderWindowSize,
int);
414 RENDER_RMI_TAG=34532,
415 COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG=54636,
418 LIGHT_INFO_TAG=87838,
433 vtkSetMacro(UseBackBuffer,
int);
434 vtkGetMacro(UseBackBuffer,
int);
435 vtkBooleanMacro(UseBackBuffer,
int);
444 vtkSetMacro(SynchronizeTileProperties,
int);
445 vtkGetMacro(SynchronizeTileProperties,
int);
446 vtkBooleanMacro(SynchronizeTileProperties,
int);
455 virtual void GenericStartRenderCallback();
456 virtual void GenericEndRenderCallback();
468 void AddRenderWindowEventHandlers();
469 void RemoveRenderWindowEventHandlers();
479 int ForcedRenderWindowSize[2];
510 int FullImageSize[2];
511 int ReducedImageSize[2];
571 virtual void PreRenderProcessing() = 0;
572 virtual void PostRenderProcessing() = 0;
579 virtual void SetRenderWindowSize();
586 virtual void LocalComputeVisiblePropBounds(
vtkRenderer *ren,
double bounds[6]);
591 virtual void MagnifyReducedImage();
596 virtual void WriteFullImage();
601 virtual void ReadReducedImage();
607 virtual int LastRenderInFrontBuffer();
612 virtual int ChooseBuffer();
618 const int pixelDimensions[2]);
637 double TileViewport[4];
652 double CameraPosition[3];
653 double CameraFocalPoint[3];
654 double CameraViewUp[3];
655 double WindowCenter[2];
656 double CameraClippingRange[2];
659 double Background2[3];
675 double FocalPoint[3];
699 #endif //vtkParalleRenderManager_h