49 #ifndef __vtkParallelRenderManager_h
50 #define __vtkParallelRenderManager_h
99 virtual void InitializePieces();
106 virtual void InitializeOffScreen();
112 virtual void StartInteractor();
116 virtual void StartServices();
119 virtual void StopServices();
123 virtual void StartRender();
124 virtual void EndRender();
125 virtual void SatelliteStartRender();
126 virtual void SatelliteEndRender();
127 virtual void RenderRMI();
129 virtual void ResetCameraClippingRange(
vtkRenderer *ren);
130 virtual void ComputeVisiblePropBoundsRMI(
int renderId);
133 virtual void InitializeRMIs();
138 virtual void ResetAllCameras();
141 virtual void ComputeVisiblePropBounds(
vtkRenderer *ren,
double bounds[6]);
194 virtual void SetImageReductionFactor(
double factor);
206 virtual void SetImageReductionFactorForUpdateRate(
double DesiredUpdateRate);
237 virtual void RemoveAllRenderers();
270 virtual void SetMagnifyImageMethod(
int method);
273 this->SetMagnifyImageMethod(NEAREST);
276 this->SetMagnifyImageMethod(LINEAR);
283 const int fullImageSize[2],
285 const int reducedImageSize[2],
286 const int fullImageViewport[4] = NULL,
287 const int reducedImageViewport[4] = NULL);
289 const int fullImageSize[2],
291 const int reducedImageSize[2],
292 const int fullImageViewport[4] = NULL,
293 const int reducedImageViewport[4] = NULL);
295 const int fullImageSize[2],
297 const int reducedImageSize[2],
298 const int fullImageViewport[4] = NULL,
299 const int reducedImageViewport[4] = NULL);
309 virtual void GetPixelData(
int x1,
int y1,
int x2,
int y2,
320 virtual void GetReducedPixelData(
int x1,
int y1,
int x2,
int y2,
335 void TileWindows(
int xsize,
int ysize,
int nColumns);
361 RENDER_RMI_TAG=34532,
362 COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG=54636,
365 LIGHT_INFO_TAG=87838,
397 virtual void GenericStartRenderCallback();
398 virtual void GenericEndRenderCallback();
409 void AddRenderWindowEventHandlers();
410 void RemoveRenderWindowEventHandlers();
420 int ForcedRenderWindowSize[2];
449 int FullImageSize[2];
450 int ReducedImageSize[2];
506 virtual void PreRenderProcessing() = 0;
507 virtual void PostRenderProcessing() = 0;
512 virtual void SetRenderWindowSize();
517 virtual void LocalComputeVisiblePropBounds(
vtkRenderer *ren,
double bounds[6]);
520 virtual void MagnifyReducedImage();
523 virtual void WriteFullImage();
526 virtual void ReadReducedImage();
530 virtual int LastRenderInFrontBuffer();
533 virtual int ChooseBuffer();
538 const int pixelDimensions[2]);
556 double TileViewport[4];
568 double CameraPosition[3];
569 double CameraFocalPoint[3];
570 double CameraViewUp[3];
571 double WindowCenter[2];
572 double CameraClippingRange[2];
575 double Background2[3];
588 double FocalPoint[3];
608 #endif //__vtkParalleRenderManager_h
GLsizei GLsizei GLenum GLenum const GLvoid * data
vtkUnsignedCharArray * FullImage
virtual bool ProcessWindowInformation(vtkMultiProcessStream &)
vtkMultiProcessController * Controller
virtual bool ProcessRendererInformation(vtkRenderer *, vtkMultiProcessStream &)
abstract base class for most VTK objects
virtual int CheckForAbortComposite()
stream used to pass data across processes using vtkMultiProcessController.
vtkUnsignedCharArray * ReducedImage
An object to control parallel rendering.
int RenderWindowImageUpToDate
#define vtkGetMacro(name, type)
unsigned long EndRenderTag
unsigned long BoundsRMIId
int SyncRenderWindowRenderers
virtual void SetRenderWindow(vtkRenderWindow *renwin)
unsigned long StartRenderTag
double AverageTimePerPixel
#define VTKRENDERINGPARALLEL_EXPORT
GLint GLint GLsizei GLsizei GLsizei GLint GLenum GLenum const GLvoid * pixels
abstract specification for renderers
virtual void SendRendererInformation(vtkRenderer *)
static void SetDefaultRenderEventPropagation(bool val)
void SetMagnifyImageMethodToNearest()
unsigned long AbortRenderCheckTag
#define vtkTypeMacro(thisClass, superclass)
double ImageReductionFactor
vtkDoubleArray * Viewports
dynamic, self-adjusting array of double
Timer support and logging.
int ObservingRenderWindow
virtual void CollectWindowInformation(vtkMultiProcessStream &)
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
double ImageProcessingTime
int ForceRenderWindowSize
vtkRenderWindow * RenderWindow
virtual void ReceiveRendererInformation(vtkRenderer *)
virtual void CheckForAbortRender()
#define vtkGetObjectMacro(name, type)
virtual void ReceiveWindowInformation()
dynamic, self-adjusting array of unsigned char
vtkWeakPointer< vtkRenderWindow > RenderWindow
static bool GetDefaultRenderEventPropagation()
#define vtkGetVector2Macro(name, type)
create a window for renderers to draw into
virtual void SendWindowInformation()
unsigned long RenderRMIId
int AutoImageReductionFactor
#define vtkBooleanMacro(name, type)
unsigned long ResetCameraClippingRangeTag
double MaxImageReductionFactor
void SetMagnifyImageMethodToLinear()
unsigned long ResetCameraTag
static bool DefaultRenderEventPropagation
int SynchronizeTileProperties
vtkRendererCollection * Renderers
#define vtkSetVector2Macro(name, type)
int RenderEventPropagation
virtual void CollectRendererInformation(vtkRenderer *, vtkMultiProcessStream &)
virtual int ImageReduceRenderer(vtkRenderer *)
#define vtkSetMacro(name, type)
Multiprocessing communication superclass.
double ImageReductionFactor