VTK  9.0.1
vtkParallelRenderManager.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkParallelRenderManager.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  Copyright 2003 Sandia Corporation. Under the terms of Contract
11  DE-AC04-94AL85000, there is a non-exclusive license for use of this work by
12  or on behalf of the U.S. Government. Redistribution and use in source and
13  binary forms, with or without modification, are permitted provided that this
14  Notice and any statement of authorship are reproduced on all copies.
15 
16  This software is distributed WITHOUT ANY WARRANTY; without even
17  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
18  PURPOSE. See the above copyright notice for more information.
19 
20 =========================================================================*/
44 #ifndef vtkParallelRenderManager_h
45 #define vtkParallelRenderManager_h
46 
47 #include "vtkObject.h"
48 #include "vtkRenderingParallelModule.h" // For export macro
49 
50 class vtkDoubleArray;
53 class vtkRenderer;
55 class vtkRenderWindow;
56 class vtkTimerLog;
58 
59 class VTKRENDERINGPARALLEL_EXPORT vtkParallelRenderManager : public vtkObject
60 {
61 public:
63  void PrintSelf(ostream& os, vtkIndent indent) override;
64 
73 
81 
83 
87  vtkGetObjectMacro(RenderWindow, vtkRenderWindow);
88  virtual void SetRenderWindow(vtkRenderWindow* renWin);
90 
92 
96  vtkGetObjectMacro(Controller, vtkMultiProcessController);
97  virtual void SetController(vtkMultiProcessController* controller);
99 
104  virtual void InitializePieces();
105 
113  virtual void InitializeOffScreen();
114 
121  virtual void StartInteractor();
122 
127  virtual void StartServices();
128 
132  virtual void StopServices();
133 
135 
138  virtual void StartRender();
139  virtual void EndRender();
140  virtual void SatelliteStartRender();
141  virtual void SatelliteEndRender();
142  virtual void RenderRMI();
143  virtual void ResetCamera(vtkRenderer* ren);
145  virtual void ComputeVisiblePropBoundsRMI(int renderId);
147 
148  virtual void InitializeRMIs();
149 
155  virtual void ResetAllCameras();
156 
160  virtual void ComputeVisiblePropBounds(vtkRenderer* ren, double bounds[6]);
161 
163 
169  vtkSetMacro(ParallelRendering, int);
170  vtkGetMacro(ParallelRendering, int);
171  vtkBooleanMacro(ParallelRendering, int);
173 
175 
181  vtkSetMacro(RenderEventPropagation, int);
182  vtkGetMacro(RenderEventPropagation, int);
183  vtkBooleanMacro(RenderEventPropagation, int);
185 
191  static void SetDefaultRenderEventPropagation(bool val)
192  {
194  }
196  {
198  }
199 
201 
206  vtkSetMacro(UseCompositing, int);
207  vtkGetMacro(UseCompositing, int);
208  vtkBooleanMacro(UseCompositing, int);
210 
212 
225  virtual void SetImageReductionFactor(double factor);
226  vtkGetMacro(ImageReductionFactor, double);
228 
229  vtkSetMacro(MaxImageReductionFactor, double);
230  vtkGetMacro(MaxImageReductionFactor, double);
231 
238  virtual void SetImageReductionFactorForUpdateRate(double DesiredUpdateRate);
239 
241 
246  vtkSetMacro(AutoImageReductionFactor, int);
247  vtkGetMacro(AutoImageReductionFactor, int);
248  vtkBooleanMacro(AutoImageReductionFactor, int);
250 
252 
255  vtkGetMacro(RenderTime, double);
256  vtkGetMacro(ImageProcessingTime, double);
258 
260 
269  vtkGetMacro(SyncRenderWindowRenderers, int);
270  vtkSetMacro(SyncRenderWindowRenderers, int);
271  vtkBooleanMacro(SyncRenderWindowRenderers, int);
272  virtual void AddRenderer(vtkRenderer*);
273  virtual void RemoveRenderer(vtkRenderer*);
274  virtual void RemoveAllRenderers();
276 
278 
287  vtkSetMacro(WriteBackImages, int);
288  vtkGetMacro(WriteBackImages, int);
289  vtkBooleanMacro(WriteBackImages, int);
291 
293 
298  vtkSetMacro(MagnifyImages, int);
299  vtkGetMacro(MagnifyImages, int);
300  vtkBooleanMacro(MagnifyImages, int);
302 
303  enum
304  {
306  LINEAR
307  };
308 
310 
315  virtual void SetMagnifyImageMethod(int method);
316  vtkGetMacro(MagnifyImageMethod, int);
317  void SetMagnifyImageMethodToNearest() { this->SetMagnifyImageMethod(NEAREST); }
318  void SetMagnifyImageMethodToLinear() { this->SetMagnifyImageMethod(LINEAR); }
320 
322 
325  virtual void MagnifyImage(vtkUnsignedCharArray* fullImage, const int fullImageSize[2],
326  vtkUnsignedCharArray* reducedImage, const int reducedImageSize[2],
327  const int fullImageViewport[4] = nullptr, const int reducedImageViewport[4] = nullptr);
328  static void MagnifyImageNearest(vtkUnsignedCharArray* fullImage, const int fullImageSize[2],
329  vtkUnsignedCharArray* reducedImage, const int reducedImageSize[2],
330  const int fullImageViewport[4] = nullptr, const int reducedImageViewport[4] = nullptr);
331  static void MagnifyImageLinear(vtkUnsignedCharArray* fullImage, const int fullImageSize[2],
332  vtkUnsignedCharArray* reducedImage, const int reducedImageSize[2],
333  const int fullImageViewport[4] = nullptr, const int reducedImageViewport[4] = nullptr);
335 
337 
345  virtual void GetPixelData(int x1, int y1, int x2, int y2, vtkUnsignedCharArray* data);
347 
349 
357  virtual void GetReducedPixelData(int x1, int y1, int x2, int y2, vtkUnsignedCharArray* data);
359 
361 
364  vtkGetVector2Macro(FullImageSize, int);
366 
367 
370  vtkGetVector2Macro(ReducedImageSize, int);
372 
377  void TileWindows(int xsize, int ysize, int nColumns);
378 
380 
384  vtkSetMacro(UseRGBA, int);
385  vtkGetMacro(UseRGBA, int);
387 
389 
393  vtkSetMacro(ForceRenderWindowSize, int);
394  vtkGetMacro(ForceRenderWindowSize, int);
396 
398 
402  vtkSetVector2Macro(ForcedRenderWindowSize, int);
403  vtkGetVector2Macro(ForcedRenderWindowSize, int);
405 
406  enum Tags
407  {
408  RENDER_RMI_TAG = 34532,
409  COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG = 54636,
410  WIN_INFO_TAG = 87834,
411  REN_INFO_TAG = 87836,
412  LIGHT_INFO_TAG = 87838,
413  REN_ID_TAG = 58794,
414  BOUNDS_TAG = 23543
415  };
416 
417  virtual void CheckForAbortRender() {}
418  virtual int CheckForAbortComposite() { return 0; }
419 
421 
427  vtkSetMacro(UseBackBuffer, int);
428  vtkGetMacro(UseBackBuffer, int);
429  vtkBooleanMacro(UseBackBuffer, int);
431 
433 
438  vtkSetMacro(SynchronizeTileProperties, int);
439  vtkGetMacro(SynchronizeTileProperties, int);
440  vtkBooleanMacro(SynchronizeTileProperties, int);
442 
444 
450  virtual void GenericEndRenderCallback();
452 
453 protected:
456 
458 
464 
468 
470 
472  int ForcedRenderWindowSize[2];
473 
483 
486 
487  unsigned long StartRenderTag;
488  unsigned long EndRenderTag;
489  unsigned long ResetCameraTag;
491  unsigned long AbortRenderCheckTag;
492 
496 
500 
501  int UseRGBA;
503  int FullImageSize[2];
504  int ReducedImageSize[2];
505 
508 
512 
514 
515  int Lock;
520 
522 
523  double RenderTime;
525 
531 
538  virtual void SendWindowInformation() {}
539  virtual void ReceiveWindowInformation() {}
542 
552  virtual bool ProcessWindowInformation(vtkMultiProcessStream&) { return true; }
555 
557 
561  virtual void PreRenderProcessing() = 0;
562  virtual void PostRenderProcessing() = 0;
564 
569  virtual void SetRenderWindowSize();
570 
576  virtual void LocalComputeVisiblePropBounds(vtkRenderer* ren, double bounds[6]);
577 
581  virtual void MagnifyReducedImage();
582 
586  virtual void WriteFullImage();
587 
591  virtual void ReadReducedImage();
592 
597  virtual int LastRenderInFrontBuffer();
598 
602  virtual int ChooseBuffer();
603 
607  virtual void SetRenderWindowPixelData(vtkUnsignedCharArray* pixels, const int pixelDimensions[2]);
608 
615  virtual int ImageReduceRenderer(vtkRenderer*) { return 1; }
616 
618  {
619  int FullSize[2];
620  int ReducedSize[2];
623  int TileScale[2];
626  double TileViewport[4];
627 
628  // Initialize members
630 
631  // Save/restore the struct to/from a stream.
634  };
635 
637  {
638  int Draw;
640  double Viewport[4];
641  double CameraPosition[3];
642  double CameraFocalPoint[3];
643  double CameraViewUp[3];
644  double WindowCenter[2];
645  double CameraClippingRange[2];
647  double Background[3];
648  double Background2[3];
650 
652 
653  // Initialize members
655 
656  // Save/restore the struct to/from a stream.
659  };
660 
661  struct LightInfo
662  {
663  double Position[3];
664  double FocalPoint[3];
665  double Type;
666 
667  // Initialize members
669 
670  // Save/restore the struct to/from a stream.
673  };
674 
676  unsigned long RenderRMIId;
677  unsigned long BoundsRMIId;
679 
681 
682 private:
684  void operator=(const vtkParallelRenderManager&) = delete;
685 };
686 
687 #endif // vtkParalleRenderManager_h
vtkParallelRenderManager::EndRender
virtual void EndRender()
vtkParallelRenderManager::~vtkParallelRenderManager
~vtkParallelRenderManager() override
vtkParallelRenderManager::RenderWindowInfo::ImageReductionFactor
double ImageReductionFactor
Definition: vtkParallelRenderManager.h:624
vtkParallelRenderManager::ObservingRenderWindow
int ObservingRenderWindow
Definition: vtkParallelRenderManager.h:484
vtkParallelRenderManager::CollectWindowInformation
virtual void CollectWindowInformation(vtkMultiProcessStream &)
Subclass should override these methods (instead of SendWindowInformation/ReceiveWindowInformation or ...
Definition: vtkParallelRenderManager.h:551
vtkParallelRenderManager::UseCompositing
int UseCompositing
Definition: vtkParallelRenderManager.h:518
vtkParallelRenderManager::UseBackBuffer
int UseBackBuffer
Definition: vtkParallelRenderManager.h:678
vtkParallelRenderManager::SetRenderWindow
virtual void SetRenderWindow(vtkRenderWindow *renWin)
vtkParallelRenderManager::MakeRenderWindow
virtual vtkRenderWindow * MakeRenderWindow()
Builds a vtkRenderWindow compatible with this render manager.
vtkParallelRenderManager::StopServices
virtual void StopServices()
If on root node, stops the RMI processing on all service nodes.
vtkParallelRenderManager::RendererInfo::NumberOfLights
int NumberOfLights
Definition: vtkParallelRenderManager.h:639
vtkParallelRenderManager::SetRenderWindowSize
virtual void SetRenderWindowSize()
Called in satellites to set the render window size to the current FullImageSize and ReducedImageSize ...
vtkParallelRenderManager::RenderWindow
vtkRenderWindow * RenderWindow
Definition: vtkParallelRenderManager.h:465
vtkParallelRenderManager::RemoveAllRenderers
virtual void RemoveAllRenderers()
vtkParallelRenderManager::RenderWindowInfo::DesiredUpdateRate
double DesiredUpdateRate
Definition: vtkParallelRenderManager.h:625
vtkParallelRenderManager::RemoveRenderWindowEventHandlers
void RemoveRenderWindowEventHandlers()
vtkParallelRenderManager::MagnifyImage
virtual void MagnifyImage(vtkUnsignedCharArray *fullImage, const int fullImageSize[2], vtkUnsignedCharArray *reducedImage, const int reducedImageSize[2], const int fullImageViewport[4]=nullptr, const int reducedImageViewport[4]=nullptr)
Convenience functions for magnifying images.
vtkParallelRenderManager::ReadReducedImage
virtual void ReadReducedImage()
Reads in the reduced image from the RenderWindow.
vtkParallelRenderManager::RenderWindowInfo::NumberOfRenderers
int NumberOfRenderers
Definition: vtkParallelRenderManager.h:621
vtkParallelRenderManager
An object to control parallel rendering.
Definition: vtkParallelRenderManager.h:60
vtkParallelRenderManager::AverageTimePerPixel
double AverageTimePerPixel
Used by SetImageReductionFactorForUpdateRate to smooth transitions transitions between image reductio...
Definition: vtkParallelRenderManager.h:530
vtkParallelRenderManager::ResetCameraClippingRangeTag
unsigned long ResetCameraClippingRangeTag
Definition: vtkParallelRenderManager.h:490
vtkParallelRenderManager::GetReducedPixelData
virtual void GetReducedPixelData(vtkUnsignedCharArray *data)
The most appropriate way to retrieve reduced size image data after a render.
vtkX3D::data
@ data
Definition: vtkX3D.h:321
vtkParallelRenderManager::StartServices
virtual void StartServices()
If on node other than root, starts serving RMI requests for parallel renders.
vtkParallelRenderManager::LightInfo::Restore
bool Restore(vtkMultiProcessStream &stream)
vtkParallelRenderManager::WriteFullImage
virtual void WriteFullImage()
Write the full image back to the RenderWindow.
vtkMultiProcessStream
stream used to pass data across processes using vtkMultiProcessController.
Definition: vtkMultiProcessStream.h:38
vtkParallelRenderManager::RenderEventPropagation
int RenderEventPropagation
Definition: vtkParallelRenderManager.h:517
vtkParallelRenderManager::GetRenderers
virtual vtkRendererCollection * GetRenderers()
vtkParallelRenderManager::PostRenderProcessing
virtual void PostRenderProcessing()=0
vtkParallelRenderManager::StartRender
virtual void StartRender()
Callbacks that initialize and finish rendering and other tasks.
vtkParallelRenderManager::GenericStartRenderCallback
virtual void GenericStartRenderCallback()
INTERNAL METHODS (DON NOT USE).
vtkParallelRenderManager::GetReducedPixelData
virtual void GetReducedPixelData(int x1, int y1, int x2, int y2, vtkUnsignedCharArray *data)
vtkUnsignedCharArray
dynamic, self-adjusting array of unsigned char
Definition: vtkUnsignedCharArray.h:36
vtkParallelRenderManager::AddRenderWindowEventHandlers
void AddRenderWindowEventHandlers()
Add/Remove event handlers for the render window.
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:54
vtkParallelRenderManager::ParallelRendering
int ParallelRendering
Definition: vtkParallelRenderManager.h:516
vtkParallelRenderManager::CheckForAbortRender
virtual void CheckForAbortRender()
Definition: vtkParallelRenderManager.h:417
vtkParallelRenderManager::LightInfo::Save
void Save(vtkMultiProcessStream &stream)
vtkParallelRenderManager::Tags
Tags
Definition: vtkParallelRenderManager.h:407
vtkParallelRenderManager::MagnifyImageMethod
int MagnifyImageMethod
Definition: vtkParallelRenderManager.h:499
vtkParallelRenderManager::ImageReductionFactor
double ImageReductionFactor
Definition: vtkParallelRenderManager.h:493
vtkParallelRenderManager::MagnifyImages
int MagnifyImages
Definition: vtkParallelRenderManager.h:498
vtkParallelRenderManager::MagnifyImageLinear
static void MagnifyImageLinear(vtkUnsignedCharArray *fullImage, const int fullImageSize[2], vtkUnsignedCharArray *reducedImage, const int reducedImageSize[2], const int fullImageViewport[4]=nullptr, const int reducedImageViewport[4]=nullptr)
vtkParallelRenderManager::FullImageUpToDate
int FullImageUpToDate
Definition: vtkParallelRenderManager.h:509
vtkRendererCollection
an ordered list of renderers
Definition: vtkRendererCollection.h:35
vtkParallelRenderManager::SendWindowInformation
virtual void SendWindowInformation()
Used to synchronize rendering information per frame.
Definition: vtkParallelRenderManager.h:538
vtkParallelRenderManager::ComputeVisiblePropBoundsRMI
virtual void ComputeVisiblePropBoundsRMI(int renderId)
vtkParallelRenderManager::PreRenderProcessing
virtual void PreRenderProcessing()=0
Here is a good place to handle processing of data before and after render.
vtkParallelRenderManager::ResetCameraTag
unsigned long ResetCameraTag
Definition: vtkParallelRenderManager.h:489
vtkParallelRenderManager::LightInfo::LightInfo
LightInfo()
Definition: vtkParallelRenderManager.h:668
vtkParallelRenderManager::AutoImageReductionFactor
int AutoImageReductionFactor
Definition: vtkParallelRenderManager.h:495
vtkParallelRenderManager::DefaultRenderEventPropagation
static bool DefaultRenderEventPropagation
Definition: vtkParallelRenderManager.h:680
vtkParallelRenderManager::RenderWindowInfo::Save
void Save(vtkMultiProcessStream &stream)
vtkParallelRenderManager::InitializePieces
virtual void InitializePieces()
This method sets the piece and number of pieces for each actor with a polydata mapper.
vtkParallelRenderManager::StartRenderTag
unsigned long StartRenderTag
Definition: vtkParallelRenderManager.h:487
vtkParallelRenderManager::SetController
virtual void SetController(vtkMultiProcessController *controller)
vtkParallelRenderManager::EndRenderTag
unsigned long EndRenderTag
Definition: vtkParallelRenderManager.h:488
vtkParallelRenderManager::ProcessWindowInformation
virtual bool ProcessWindowInformation(vtkMultiProcessStream &)
Definition: vtkParallelRenderManager.h:552
vtkParallelRenderManager::ImageProcessingTime
double ImageProcessingTime
Definition: vtkParallelRenderManager.h:524
vtkParallelRenderManager::ForceRenderWindowSize
int ForceRenderWindowSize
Definition: vtkParallelRenderManager.h:471
vtkParallelRenderManager::AddedRMIs
int AddedRMIs
Definition: vtkParallelRenderManager.h:675
vtkParallelRenderManager::GetDefaultRenderEventPropagation
static bool GetDefaultRenderEventPropagation()
Definition: vtkParallelRenderManager.h:195
vtkParallelRenderManager::MakeRenderer
virtual vtkRenderer * MakeRenderer()
Builds a vtkRenderer compatible with this render manager.
vtkParallelRenderManager::ResetCamera
virtual void ResetCamera(vtkRenderer *ren)
vtkX3D::Background
@ Background
Definition: vtkX3D.h:77
vtkParallelRenderManager::SynchronizeTileProperties
int SynchronizeTileProperties
Definition: vtkParallelRenderManager.h:502
vtkParallelRenderManager::GetPixelData
virtual void GetPixelData(vtkUnsignedCharArray *data)
The most appropriate way to retrieve full size image data after a render.
vtkParallelRenderManager::ImageReduceRenderer
virtual int ImageReduceRenderer(vtkRenderer *)
Returns true if the image for the given renderer should be rendered at a reduced size to be magnified...
Definition: vtkParallelRenderManager.h:615
vtkParallelRenderManager::MagnifyReducedImage
virtual void MagnifyReducedImage()
When called, fills FullImage.
vtkParallelRenderManager::SatelliteStartRender
virtual void SatelliteStartRender()
vtkMultiProcessController
Multiprocessing communication superclass.
Definition: vtkMultiProcessController.h:76
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:34
vtkParallelRenderManager::SetRenderWindowPixelData
virtual void SetRenderWindowPixelData(vtkUnsignedCharArray *pixels, const int pixelDimensions[2])
Sets the current render window's pixel data.
vtkParallelRenderManager::Controller
vtkMultiProcessController * Controller
Definition: vtkParallelRenderManager.h:466
vtkParallelRenderManager::RendererInfo::GradientBackground
bool GradientBackground
Definition: vtkParallelRenderManager.h:649
vtkParallelRenderManager::RenderWindowImageUpToDate
int RenderWindowImageUpToDate
Definition: vtkParallelRenderManager.h:511
vtkParallelRenderManager::AddRenderer
virtual void AddRenderer(vtkRenderer *)
vtkParallelRenderManager::AbortRenderCheckTag
unsigned long AbortRenderCheckTag
Definition: vtkParallelRenderManager.h:491
vtkParallelRenderManager::CollectRendererInformation
virtual void CollectRendererInformation(vtkRenderer *, vtkMultiProcessStream &)
Definition: vtkParallelRenderManager.h:553
vtkParallelRenderManager::LightInfo
Definition: vtkParallelRenderManager.h:662
vtkParallelRenderManager::RendererInfo::CameraViewAngle
double CameraViewAngle
Definition: vtkParallelRenderManager.h:646
vtkParallelRenderManager::BoundsRMIId
unsigned long BoundsRMIId
Definition: vtkParallelRenderManager.h:677
vtkParallelRenderManager::RendererInfo
Definition: vtkParallelRenderManager.h:637
vtkParallelRenderManager::RootProcessId
int RootProcessId
The "root" node's process id.
Definition: vtkParallelRenderManager.h:482
vtkParallelRenderManager::RenderRMIId
unsigned long RenderRMIId
Definition: vtkParallelRenderManager.h:676
vtkParallelRenderManager::RemoveRenderer
virtual void RemoveRenderer(vtkRenderer *)
vtkParallelRenderManager::StartInteractor
virtual void StartInteractor()
Initializes the RMIs and then, if on root node, starts the interactor on the attached render window.
vtkParallelRenderManager::InitializeRMIs
virtual void InitializeRMIs()
vtkObject.h
vtkParallelRenderManager::vtkParallelRenderManager
vtkParallelRenderManager()
vtkParallelRenderManager::ComputeVisiblePropBounds
virtual void ComputeVisiblePropBounds(vtkRenderer *ren, double bounds[6])
Calculates the bounds by gathering information from all processes.
vtkParallelRenderManager::RendererInfo::RendererInfo
RendererInfo()
Definition: vtkParallelRenderManager.h:654
vtkParallelRenderManager::SetMagnifyImageMethod
virtual void SetMagnifyImageMethod(int method)
Sets the method used to magnify images.
vtkParallelRenderManager::RendererInfo::Restore
bool Restore(vtkMultiProcessStream &stream)
vtkParallelRenderManager::NEAREST
@ NEAREST
Definition: vtkParallelRenderManager.h:305
vtkParallelRenderManager::Timer
vtkTimerLog * Timer
Definition: vtkParallelRenderManager.h:521
vtkParallelRenderManager::RenderWindowInfo
Definition: vtkParallelRenderManager.h:618
vtkTimerLog
Timer support and logging.
Definition: vtkTimerLog.h:91
vtkParallelRenderManager::CheckForAbortComposite
virtual int CheckForAbortComposite()
Definition: vtkParallelRenderManager.h:418
vtkParallelRenderManager::ReducedImage
vtkUnsignedCharArray * ReducedImage
Definition: vtkParallelRenderManager.h:507
vtkParallelRenderManager::MaxImageReductionFactor
double MaxImageReductionFactor
Definition: vtkParallelRenderManager.h:494
vtkParallelRenderManager::ReceiveWindowInformation
virtual void ReceiveWindowInformation()
Definition: vtkParallelRenderManager.h:539
vtkParallelRenderManager::RendererInfo::ParallelScale
double ParallelScale
Definition: vtkParallelRenderManager.h:651
vtkParallelRenderManager::ResetAllCameras
virtual void ResetAllCameras()
Resets the camera of each renderer contained in the RenderWindow.
vtkParallelRenderManager::SatelliteEndRender
virtual void SatelliteEndRender()
vtkParallelRenderManager::GenericEndRenderCallback
virtual void GenericEndRenderCallback()
vtkParallelRenderManager::ReceiveRendererInformation
virtual void ReceiveRendererInformation(vtkRenderer *)
Definition: vtkParallelRenderManager.h:541
vtkParallelRenderManager::SendRendererInformation
virtual void SendRendererInformation(vtkRenderer *)
Definition: vtkParallelRenderManager.h:540
vtkParallelRenderManager::Renderers
vtkRendererCollection * Renderers
Definition: vtkParallelRenderManager.h:467
vtkParallelRenderManager::SetImageReductionFactorForUpdateRate
virtual void SetImageReductionFactorForUpdateRate(double DesiredUpdateRate)
Sets the ReductionFactor based on the given desired update rate and the rendering metrics taken from ...
vtkParallelRenderManager::SyncRenderWindowRenderers
int SyncRenderWindowRenderers
Definition: vtkParallelRenderManager.h:519
vtkParallelRenderManager::RenderWindowInfo::Restore
bool Restore(vtkMultiProcessStream &stream)
vtkRenderer
abstract specification for renderers
Definition: vtkRenderer.h:59
vtkParallelRenderManager::Lock
int Lock
Definition: vtkParallelRenderManager.h:515
vtkParallelRenderManager::RendererInfo::Draw
int Draw
Definition: vtkParallelRenderManager.h:638
vtkParallelRenderManager::RenderWindowInfo::UseCompositing
int UseCompositing
Definition: vtkParallelRenderManager.h:622
vtkParallelRenderManager::SetImageReductionFactor
virtual void SetImageReductionFactor(double factor)
Set/Get the reduction factor (for sort-last based parallel renderers).
vtkParallelRenderManager::SetMagnifyImageMethodToLinear
void SetMagnifyImageMethodToLinear()
Definition: vtkParallelRenderManager.h:318
vtkParallelRenderManager::LastRenderInFrontBuffer
virtual int LastRenderInFrontBuffer()
Returns 1 if the RenderWindow's last image is in the front buffer, 0 if it is in the back.
vtkParallelRenderManager::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkParallelRenderManager::WriteBackImages
int WriteBackImages
Definition: vtkParallelRenderManager.h:497
vtkParallelRenderManager::RenderWindowInfo::RenderWindowInfo
RenderWindowInfo()
Definition: vtkParallelRenderManager.h:629
vtkDoubleArray
dynamic, self-adjusting array of double
Definition: vtkDoubleArray.h:36
vtkParallelRenderManager::Viewports
vtkDoubleArray * Viewports
Definition: vtkParallelRenderManager.h:513
vtkParallelRenderManager::UseRGBA
int UseRGBA
Definition: vtkParallelRenderManager.h:501
vtkParallelRenderManager::GetPixelData
virtual void GetPixelData(int x1, int y1, int x2, int y2, vtkUnsignedCharArray *data)
vtkParallelRenderManager::SetDefaultRenderEventPropagation
static void SetDefaultRenderEventPropagation(bool val)
Get/Set the default value used for RenderEventPropagation when a new instance of vtkParallelRenderMan...
Definition: vtkParallelRenderManager.h:191
vtkParallelRenderManager::RendererInfo::Save
void Save(vtkMultiProcessStream &stream)
vtkRenderWindow
create a window for renderers to draw into
Definition: vtkRenderWindow.h:85
vtkParallelRenderManager::ProcessRendererInformation
virtual bool ProcessRendererInformation(vtkRenderer *, vtkMultiProcessStream &)
Definition: vtkParallelRenderManager.h:554
vtkParallelRenderManager::SetMagnifyImageMethodToNearest
void SetMagnifyImageMethodToNearest()
Definition: vtkParallelRenderManager.h:317
vtkParallelRenderManager::LightInfo::Type
double Type
Definition: vtkParallelRenderManager.h:665
vtkParallelRenderManager::RenderTime
double RenderTime
Definition: vtkParallelRenderManager.h:523
vtkParallelRenderManager::InitializeOffScreen
virtual void InitializeOffScreen()
Make all rendering windows not viewable set as off screen rendering.
vtkParallelRenderManager::RenderRMI
virtual void RenderRMI()
vtkParallelRenderManager::MagnifyImageNearest
static void MagnifyImageNearest(vtkUnsignedCharArray *fullImage, const int fullImageSize[2], vtkUnsignedCharArray *reducedImage, const int reducedImageSize[2], const int fullImageViewport[4]=nullptr, const int reducedImageViewport[4]=nullptr)
vtkParallelRenderManager::LocalComputeVisiblePropBounds
virtual void LocalComputeVisiblePropBounds(vtkRenderer *ren, double bounds[6])
Called by ComputeVisiblePropBoundsRMI to get the bounds of a local renderer.
vtkParallelRenderManager::FullImage
vtkUnsignedCharArray * FullImage
Definition: vtkParallelRenderManager.h:506
vtkParallelRenderManager::TileWindows
void TileWindows(int xsize, int ysize, int nColumns)
Given the x and y size of the render windows, reposition them in a tile of n columns.
vtkParallelRenderManager::ObservingAbort
int ObservingAbort
Definition: vtkParallelRenderManager.h:485
vtkParallelRenderManager::ChooseBuffer
virtual int ChooseBuffer()
Select buffer to read from / render into.
vtkParallelRenderManager::ReducedImageUpToDate
int ReducedImageUpToDate
Definition: vtkParallelRenderManager.h:510
vtkParallelRenderManager::ResetCameraClippingRange
virtual void ResetCameraClippingRange(vtkRenderer *ren)