VTK  9.3.20240329
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
vtkParallelRenderManager Class Referenceabstract

An object to control parallel rendering. More...

#include <vtkParallelRenderManager.h>

Inheritance diagram for vtkParallelRenderManager:
[legend]
Collaboration diagram for vtkParallelRenderManager:
[legend]

Classes

struct  LightInfo
 
struct  RendererInfo
 
struct  RenderWindowInfo
 

Public Types

enum  { NEAREST , LINEAR }
 
enum  Tags {
  RENDER_RMI_TAG = 34532 , COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG = 54636 , WIN_INFO_TAG = 87834 , REN_INFO_TAG = 87836 ,
  LIGHT_INFO_TAG = 87838 , REN_ID_TAG = 58794 , BOUNDS_TAG = 23543
}
 
typedef vtkObject Superclass
 

Public Member Functions

virtual vtkTypeBool IsA (const char *type)
 Return 1 if this class is the same type of (or a subclass of) the named class. More...
 
vtkParallelRenderManagerNewInstance () const
 
void PrintSelf (ostream &os, vtkIndent indent) override
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual vtkRenderWindowMakeRenderWindow ()
 Builds a vtkRenderWindow compatible with this render manager. More...
 
virtual vtkRendererMakeRenderer ()
 Builds a vtkRenderer compatible with this render manager. More...
 
virtual void InitializePieces ()
 This method sets the piece and number of pieces for each actor with a polydata mapper. More...
 
virtual void InitializeOffScreen ()
 Make all rendering windows not viewable set as off screen rendering. More...
 
virtual void StartInteractor ()
 Initializes the RMIs and then, if on root node, starts the interactor on the attached render window. More...
 
virtual void StartServices ()
 If on node other than root, starts serving RMI requests for parallel renders. More...
 
virtual void StopServices ()
 If on root node, stops the RMI processing on all service nodes. More...
 
virtual void InitializeRMIs ()
 
virtual void ResetAllCameras ()
 Resets the camera of each renderer contained in the RenderWindow. More...
 
virtual void ComputeVisiblePropBounds (vtkRenderer *ren, double bounds[6])
 Calculates the bounds by gathering information from all processes. More...
 
virtual void SetMaxImageReductionFactor (double)
 
virtual double GetMaxImageReductionFactor ()
 
virtual void SetImageReductionFactorForUpdateRate (double DesiredUpdateRate)
 Sets the ReductionFactor based on the given desired update rate and the rendering metrics taken from the last time UpdateServerInfo was called. More...
 
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. More...
 
virtual void CheckForAbortRender ()
 
virtual int CheckForAbortComposite ()
 
virtual vtkRenderWindowGetRenderWindow ()
 Set/Get the RenderWindow to use for compositing. More...
 
virtual void SetRenderWindow (vtkRenderWindow *renWin)
 Set/Get the RenderWindow to use for compositing. More...
 
virtual vtkMultiProcessControllerGetController ()
 Set/Get the vtkMultiProcessController which will handle communications for the parallel rendering. More...
 
virtual void SetController (vtkMultiProcessController *controller)
 Set/Get the vtkMultiProcessController which will handle communications for the parallel rendering. More...
 
virtual void StartRender ()
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void EndRender ()
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void SatelliteStartRender ()
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void SatelliteEndRender ()
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void RenderRMI ()
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void ResetCamera (vtkRenderer *ren)
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void ResetCameraClippingRange (vtkRenderer *ren)
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void ComputeVisiblePropBoundsRMI (int renderId)
 Callbacks that initialize and finish rendering and other tasks. More...
 
virtual void SetParallelRendering (int)
 Turns on/off parallel rendering. More...
 
virtual int GetParallelRendering ()
 Turns on/off parallel rendering. More...
 
virtual void ParallelRenderingOn ()
 Turns on/off parallel rendering. More...
 
virtual void ParallelRenderingOff ()
 Turns on/off parallel rendering. More...
 
virtual void SetRenderEventPropagation (int)
 Turns on/off render event propagation. More...
 
virtual int GetRenderEventPropagation ()
 Turns on/off render event propagation. More...
 
virtual void RenderEventPropagationOn ()
 Turns on/off render event propagation. More...
 
virtual void RenderEventPropagationOff ()
 Turns on/off render event propagation. More...
 
virtual void SetUseCompositing (int)
 This is used for tiled display rendering. More...
 
virtual int GetUseCompositing ()
 This is used for tiled display rendering. More...
 
virtual void UseCompositingOn ()
 This is used for tiled display rendering. More...
 
virtual void UseCompositingOff ()
 This is used for tiled display rendering. More...
 
virtual void SetImageReductionFactor (double factor)
 Set/Get the reduction factor (for sort-last based parallel renderers). More...
 
virtual double GetImageReductionFactor ()
 Set/Get the reduction factor (for sort-last based parallel renderers). More...
 
virtual void SetAutoImageReductionFactor (int)
 If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render. More...
 
virtual int GetAutoImageReductionFactor ()
 If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render. More...
 
virtual void AutoImageReductionFactorOn ()
 If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render. More...
 
virtual void AutoImageReductionFactorOff ()
 If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render. More...
 
virtual double GetRenderTime ()
 Get rendering metrics. More...
 
virtual double GetImageProcessingTime ()
 Get rendering metrics. More...
 
virtual int GetSyncRenderWindowRenderers ()
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void SetSyncRenderWindowRenderers (int)
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void SyncRenderWindowRenderersOn ()
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void SyncRenderWindowRenderersOff ()
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void AddRenderer (vtkRenderer *)
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void RemoveRenderer (vtkRenderer *)
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void RemoveAllRenderers ()
 By default, the state of all renderers in the root's render window is propagated to the rest of the processes. More...
 
virtual void SetWriteBackImages (int)
 If on (the default), the result of any image space manipulations are written back to the render window frame buffer. More...
 
virtual int GetWriteBackImages ()
 If on (the default), the result of any image space manipulations are written back to the render window frame buffer. More...
 
virtual void WriteBackImagesOn ()
 If on (the default), the result of any image space manipulations are written back to the render window frame buffer. More...
 
virtual void WriteBackImagesOff ()
 If on (the default), the result of any image space manipulations are written back to the render window frame buffer. More...
 
virtual void SetMagnifyImages (int)
 If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window. More...
 
virtual int GetMagnifyImages ()
 If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window. More...
 
virtual void MagnifyImagesOn ()
 If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window. More...
 
virtual void MagnifyImagesOff ()
 If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window. More...
 
virtual void SetMagnifyImageMethod (int method)
 Sets the method used to magnify images. More...
 
virtual int GetMagnifyImageMethod ()
 Sets the method used to magnify images. More...
 
void SetMagnifyImageMethodToNearest ()
 Sets the method used to magnify images. More...
 
void SetMagnifyImageMethodToLinear ()
 Sets the method used to magnify images. More...
 
virtual void GetPixelData (vtkUnsignedCharArray *data)
 The most appropriate way to retrieve full size image data after a render. More...
 
virtual void GetPixelData (int x1, int y1, int x2, int y2, vtkUnsignedCharArray *data)
 The most appropriate way to retrieve full size image data after a render. More...
 
virtual void GetReducedPixelData (vtkUnsignedCharArray *data)
 The most appropriate way to retrieve reduced size image data after a render. More...
 
virtual void GetReducedPixelData (int x1, int y1, int x2, int y2, vtkUnsignedCharArray *data)
 The most appropriate way to retrieve reduced size image data after a render. More...
 
virtual int * GetFullImageSize ()
 Returns the full image size calculated at the last render. More...
 
virtual void GetFullImageSize (int &, int &)
 Returns the full image size calculated at the last render. More...
 
virtual void GetFullImageSize (int[2])
 Returns the full image size calculated at the last render. More...
 
virtual int * GetReducedImageSize ()
 Returns the reduced image size calculated at the last render. More...
 
virtual void GetReducedImageSize (int &, int &)
 Returns the reduced image size calculated at the last render. More...
 
virtual void GetReducedImageSize (int[2])
 Returns the reduced image size calculated at the last render. More...
 
virtual void SetUseRGBA (int)
 Get/Set if all Images must use RGBA instead of RGB. More...
 
virtual int GetUseRGBA ()
 Get/Set if all Images must use RGBA instead of RGB. More...
 
virtual void SetForceRenderWindowSize (int)
 If ForceRenderWindowSize is set to true, the render manager will use the RenderWindowSize ivar instead of getting the size from the render window. More...
 
virtual int GetForceRenderWindowSize ()
 If ForceRenderWindowSize is set to true, the render manager will use the RenderWindowSize ivar instead of getting the size from the render window. More...
 
virtual void SetForcedRenderWindowSize (int, int)
 If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window. More...
 
void SetForcedRenderWindowSize (int[2])
 If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window. More...
 
virtual int * GetForcedRenderWindowSize ()
 If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window. More...
 
virtual void GetForcedRenderWindowSize (int &, int &)
 If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window. More...
 
virtual void GetForcedRenderWindowSize (int[2])
 If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window. More...
 
virtual void SetUseBackBuffer (int)
 The default is to allow the use of the back buffer for compositing. More...
 
virtual int GetUseBackBuffer ()
 The default is to allow the use of the back buffer for compositing. More...
 
virtual void UseBackBufferOn ()
 The default is to allow the use of the back buffer for compositing. More...
 
virtual void UseBackBufferOff ()
 The default is to allow the use of the back buffer for compositing. More...
 
virtual void SetSynchronizeTileProperties (int)
 When set the render manager will synchronize the TileViewport and TileScale properties. More...
 
virtual int GetSynchronizeTileProperties ()
 When set the render manager will synchronize the TileViewport and TileScale properties. More...
 
virtual void SynchronizeTilePropertiesOn ()
 When set the render manager will synchronize the TileViewport and TileScale properties. More...
 
virtual void SynchronizeTilePropertiesOff ()
 When set the render manager will synchronize the TileViewport and TileScale properties. More...
 
virtual void GenericStartRenderCallback ()
 INTERNAL METHODS (DON NOT USE). More...
 
virtual void GenericEndRenderCallback ()
 INTERNAL METHODS (DON NOT USE). More...
 
- Public Member Functions inherited from vtkObject
 vtkBaseTypeMacro (vtkObject, vtkObjectBase)
 
virtual void DebugOn ()
 Turn debugging output on. More...
 
virtual void DebugOff ()
 Turn debugging output off. More...
 
bool GetDebug ()
 Get the value of the debug flag. More...
 
void SetDebug (bool debugFlag)
 Set the value of the debug flag. More...
 
virtual void Modified ()
 Update the modification time for this object. More...
 
virtual vtkMTimeType GetMTime ()
 Return this object's modified time. More...
 
void RemoveObserver (unsigned long tag)
 
void RemoveObservers (unsigned long event)
 
void RemoveObservers (const char *event)
 
void RemoveAllObservers ()
 
vtkTypeBool HasObserver (unsigned long event)
 
vtkTypeBool HasObserver (const char *event)
 
vtkTypeBool InvokeEvent (unsigned long event)
 
vtkTypeBool InvokeEvent (const char *event)
 
std::string GetObjectDescription () const override
 The object description printed in messages and PrintSelf output. More...
 
unsigned long AddObserver (unsigned long event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
unsigned long AddObserver (const char *event, vtkCommand *, float priority=0.0f)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkCommandGetCommand (unsigned long tag)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObserver (vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
void RemoveObservers (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (unsigned long event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
vtkTypeBool HasObserver (const char *event, vtkCommand *)
 Allow people to add/remove/invoke observers (callbacks) to any VTK object. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Overloads to AddObserver that allow developers to add class member functions as callbacks for events. More...
 
template<class U , class T >
unsigned long AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f)
 Allow user to set the AbortFlagOn() with the return value of the callback method. More...
 
vtkTypeBool InvokeEvent (unsigned long event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
vtkTypeBool InvokeEvent (const char *event, void *callData)
 This method invokes an event and return whether the event was aborted or not. More...
 
virtual void SetObjectName (const std::string &objectName)
 Set/get the name of this object for reporting purposes. More...
 
virtual std::string GetObjectName () const
 Set/get the name of this object for reporting purposes. More...
 
- Public Member Functions inherited from vtkObjectBase
const char * GetClassName () const
 Return the class name as a string. More...
 
virtual vtkIdType GetNumberOfGenerationsFromBase (const char *name)
 Given the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). More...
 
virtual void Delete ()
 Delete a VTK object. More...
 
virtual void FastDelete ()
 Delete a reference to this object. More...
 
void InitializeObjectBase ()
 
void Print (ostream &os)
 Print an object to an ostream. More...
 
void Register (vtkObjectBase *o)
 Increase the reference count (mark as used by another object). More...
 
virtual void UnRegister (vtkObjectBase *o)
 Decrease the reference count (release by another object). More...
 
int GetReferenceCount ()
 Return the current reference count of this object. More...
 
void SetReferenceCount (int)
 Sets the reference count. More...
 
bool GetIsInMemkind () const
 A local state flag that remembers whether this object lives in the normal or extended memory space. More...
 
virtual void PrintHeader (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual void PrintTrailer (ostream &os, vtkIndent indent)
 Methods invoked by print to print information about the object including superclasses. More...
 
virtual bool UsesGarbageCollector () const
 Indicate whether the class uses vtkGarbageCollector or not. More...
 

Static Public Member Functions

static vtkTypeBool IsTypeOf (const char *type)
 
static vtkParallelRenderManagerSafeDownCast (vtkObjectBase *o)
 
static void SetDefaultRenderEventPropagation (bool val)
 Get/Set the default value used for RenderEventPropagation when a new instance of vtkParallelRenderManager is created. More...
 
static bool GetDefaultRenderEventPropagation ()
 
- Static Public Member Functions inherited from vtkObject
static vtkObjectNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void BreakOnError ()
 This method is called when vtkErrorMacro executes. More...
 
static void SetGlobalWarningDisplay (vtkTypeBool val)
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOn ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static void GlobalWarningDisplayOff ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
static vtkTypeBool GetGlobalWarningDisplay ()
 This is a global flag that controls whether any debug, warning or error messages are displayed. More...
 
- Static Public Member Functions inherited from vtkObjectBase
static vtkTypeBool IsTypeOf (const char *name)
 Return 1 if this class type is the same type of (or a subclass of) the named class. More...
 
static vtkIdType GetNumberOfGenerationsFromBaseType (const char *name)
 Given a the name of a base class of this class type, return the distance of inheritance between this class type and the named class (how many generations of inheritance are there between this class and the named class). More...
 
static vtkObjectBaseNew ()
 Create an object with Debug turned off, modified time initialized to zero, and reference counting on. More...
 
static void SetMemkindDirectory (const char *directoryname)
 The name of a directory, ideally mounted -o dax, to memory map an extended memory space within. More...
 
static bool GetUsingMemkind ()
 A global state flag that controls whether vtkObjects are constructed in the usual way (the default) or within the extended memory space. More...
 

Protected Member Functions

virtual vtkObjectBaseNewInstanceInternal () const
 
 vtkParallelRenderManager ()
 
 ~vtkParallelRenderManager () override
 
virtual vtkRendererCollectionGetRenderers ()
 
virtual void SendWindowInformation ()
 Used to synchronize rendering information per frame. More...
 
virtual void ReceiveWindowInformation ()
 
virtual void SendRendererInformation (vtkRenderer *)
 
virtual void ReceiveRendererInformation (vtkRenderer *)
 
virtual void CollectWindowInformation (vtkMultiProcessStream &)
 Subclass should override these methods (instead of SendWindowInformation/ReceiveWindowInformation or SendRendererInformation/ReceiveRendererInformation) to collect or process meta-data to synchronize rendering information per frame. More...
 
virtual bool ProcessWindowInformation (vtkMultiProcessStream &)
 
virtual void CollectRendererInformation (vtkRenderer *, vtkMultiProcessStream &)
 
virtual bool ProcessRendererInformation (vtkRenderer *, vtkMultiProcessStream &)
 
virtual void SetRenderWindowSize ()
 Called in satellites to set the render window size to the current FullImageSize and ReducedImageSize (or vice versa). More...
 
virtual void LocalComputeVisiblePropBounds (vtkRenderer *ren, double bounds[6])
 Called by ComputeVisiblePropBoundsRMI to get the bounds of a local renderer. More...
 
virtual void MagnifyReducedImage ()
 When called, fills FullImage. More...
 
virtual void WriteFullImage ()
 Write the full image back to the RenderWindow. More...
 
virtual void ReadReducedImage ()
 Reads in the reduced image from the RenderWindow. More...
 
virtual int LastRenderInFrontBuffer ()
 Returns 1 if the RenderWindow's last image is in the front buffer, 0 if it is in the back. More...
 
virtual int ChooseBuffer ()
 Select buffer to read from / render into. More...
 
virtual void SetRenderWindowPixelData (vtkUnsignedCharArray *pixels, const int pixelDimensions[2])
 Sets the current render window's pixel data. More...
 
virtual int ImageReduceRenderer (vtkRenderer *)
 Returns true if the image for the given renderer should be rendered at a reduced size to be magnified later. More...
 
void AddRenderWindowEventHandlers ()
 Add/Remove event handlers for the render window. More...
 
void RemoveRenderWindowEventHandlers ()
 Add/Remove event handlers for the render window. More...
 
virtual void PreRenderProcessing ()=0
 Here is a good place to handle processing of data before and after render. More...
 
virtual void PostRenderProcessing ()=0
 Here is a good place to handle processing of data before and after render. More...
 
- Protected Member Functions inherited from vtkObject
 vtkObject ()
 
 ~vtkObject () override
 
void RegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void UnRegisterInternal (vtkObjectBase *, vtkTypeBool check) override
 
void InternalGrabFocus (vtkCommand *mouseEvents, vtkCommand *keypressEvents=nullptr)
 These methods allow a command to exclusively grab all events. More...
 
void InternalReleaseFocus ()
 These methods allow a command to exclusively grab all events. More...
 
- Protected Member Functions inherited from vtkObjectBase
 vtkObjectBase ()
 
virtual ~vtkObjectBase ()
 
virtual void ReportReferences (vtkGarbageCollector *)
 
 vtkObjectBase (const vtkObjectBase &)
 
void operator= (const vtkObjectBase &)
 

Protected Attributes

vtkRenderWindowRenderWindow
 
vtkMultiProcessControllerController
 
vtkRendererCollectionRenderers
 
int ForceRenderWindowSize
 
int ForcedRenderWindowSize [2]
 
int RootProcessId
 The "root" node's process id. More...
 
int ObservingRenderWindow
 
int ObservingAbort
 
unsigned long StartRenderTag
 
unsigned long EndRenderTag
 
unsigned long ResetCameraTag
 
unsigned long ResetCameraClippingRangeTag
 
unsigned long AbortRenderCheckTag
 
double ImageReductionFactor
 
double MaxImageReductionFactor
 
int AutoImageReductionFactor
 
int WriteBackImages
 
int MagnifyImages
 
int MagnifyImageMethod
 
int UseRGBA
 
int SynchronizeTileProperties
 
int FullImageSize [2]
 
int ReducedImageSize [2]
 
vtkUnsignedCharArrayFullImage
 
vtkUnsignedCharArrayReducedImage
 
int FullImageUpToDate
 
int ReducedImageUpToDate
 
int RenderWindowImageUpToDate
 
vtkDoubleArrayViewports
 
int Lock
 
int ParallelRendering
 
int RenderEventPropagation
 
int UseCompositing
 
int SyncRenderWindowRenderers
 
vtkTimerLogTimer
 
double RenderTime
 
double ImageProcessingTime
 
double AverageTimePerPixel
 Used by SetImageReductionFactorForUpdateRate to smooth transitions transitions between image reduction factors. More...
 
int AddedRMIs
 
unsigned long RenderRMIId
 
unsigned long BoundsRMIId
 
int UseBackBuffer
 
- Protected Attributes inherited from vtkObject
bool Debug
 
vtkTimeStamp MTime
 
vtkSubjectHelper * SubjectHelper
 
std::string ObjectName
 
- Protected Attributes inherited from vtkObjectBase
std::atomic< int32_t > ReferenceCount
 
vtkWeakPointerBase ** WeakPointers
 

Static Protected Attributes

static bool DefaultRenderEventPropagation
 
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)
 Convenience functions for magnifying images. More...
 
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)
 Convenience functions for magnifying images. More...
 
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. More...
 

Additional Inherited Members

- Static Protected Member Functions inherited from vtkObjectBase
static vtkMallocingFunction GetCurrentMallocFunction ()
 
static vtkReallocingFunction GetCurrentReallocFunction ()
 
static vtkFreeingFunction GetCurrentFreeFunction ()
 
static vtkFreeingFunction GetAlternateFreeFunction ()
 

Detailed Description

An object to control parallel rendering.

vtkParallelRenderManager operates in multiple processes. It provides proper renderers and render windows for performing the parallel rendering correctly. It can also attach itself to render windows and propagate rendering events and camera views.

Attention
Many parallel rendering schemes do not correctly handle transparency. Unless otherwise documented, assume a sub class does not.
Todo:
Synchronization/barrier primitives.
Todo:
Query ranges of scalar values of objects in addition to the boundary in three-space
Events:
vtkCommand::EndEvent vtkCommand::StartEvent
Tests:
vtkParallelRenderManager (Tests)

Definition at line 49 of file vtkParallelRenderManager.h.

Member Typedef Documentation

◆ Superclass

Definition at line 52 of file vtkParallelRenderManager.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
NEAREST 
LINEAR 

Definition at line 293 of file vtkParallelRenderManager.h.

◆ Tags

Enumerator
RENDER_RMI_TAG 
COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG 
WIN_INFO_TAG 
REN_INFO_TAG 
LIGHT_INFO_TAG 
REN_ID_TAG 
BOUNDS_TAG 

Definition at line 396 of file vtkParallelRenderManager.h.

Constructor & Destructor Documentation

◆ vtkParallelRenderManager()

vtkParallelRenderManager::vtkParallelRenderManager ( )
protected

◆ ~vtkParallelRenderManager()

vtkParallelRenderManager::~vtkParallelRenderManager ( )
overrideprotected

Member Function Documentation

◆ IsTypeOf()

static vtkTypeBool vtkParallelRenderManager::IsTypeOf ( const char *  type)
static

◆ IsA()

virtual vtkTypeBool vtkParallelRenderManager::IsA ( const char *  name)
virtual

Return 1 if this class is the same type of (or a subclass of) the named class.

Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObjectBase.

Reimplemented in vtkImageRenderManager, and vtkCompositeRenderManager.

◆ SafeDownCast()

static vtkParallelRenderManager* vtkParallelRenderManager::SafeDownCast ( vtkObjectBase o)
static

◆ NewInstanceInternal()

virtual vtkObjectBase* vtkParallelRenderManager::NewInstanceInternal ( ) const
protectedvirtual

◆ NewInstance()

vtkParallelRenderManager* vtkParallelRenderManager::NewInstance ( ) const

◆ PrintSelf()

void vtkParallelRenderManager::PrintSelf ( ostream &  os,
vtkIndent  indent 
)
overridevirtual

Methods invoked by print to print information about the object including superclasses.

Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkObject.

◆ MakeRenderWindow()

virtual vtkRenderWindow* vtkParallelRenderManager::MakeRenderWindow ( )
virtual

Builds a vtkRenderWindow compatible with this render manager.

The user program is responsible for registering the render window with the SetRenderWindow method and calling Delete. It is not advisable to use a parallel render manager with a render window that was not built with this method.

◆ MakeRenderer()

virtual vtkRenderer* vtkParallelRenderManager::MakeRenderer ( )
virtual

Builds a vtkRenderer compatible with this render manager.

(Should we also register it?) The user program is responsible for calling Delete. It is not advisable to use a parallel render manager with a renderer that was not built with this method.

◆ GetRenderWindow()

virtual vtkRenderWindow* vtkParallelRenderManager::GetRenderWindow ( )
virtual

Set/Get the RenderWindow to use for compositing.

We add a start and end observer to the window.

◆ SetRenderWindow()

virtual void vtkParallelRenderManager::SetRenderWindow ( vtkRenderWindow renWin)
virtual

Set/Get the RenderWindow to use for compositing.

We add a start and end observer to the window.

◆ GetController()

virtual vtkMultiProcessController* vtkParallelRenderManager::GetController ( )
virtual

Set/Get the vtkMultiProcessController which will handle communications for the parallel rendering.

◆ SetController()

virtual void vtkParallelRenderManager::SetController ( vtkMultiProcessController controller)
virtual

Set/Get the vtkMultiProcessController which will handle communications for the parallel rendering.

◆ InitializePieces()

virtual void vtkParallelRenderManager::InitializePieces ( )
virtual

This method sets the piece and number of pieces for each actor with a polydata mapper.

◆ InitializeOffScreen()

virtual void vtkParallelRenderManager::InitializeOffScreen ( )
virtual

Make all rendering windows not viewable set as off screen rendering.

To make all renderwindows on screen rendering again, call OffScreenRenderingOff on all the render windows. This class assumes the window on root node is the only one viewable. Subclasses should change this as necessary.

◆ StartInteractor()

virtual void vtkParallelRenderManager::StartInteractor ( )
virtual

Initializes the RMIs and then, if on root node, starts the interactor on the attached render window.

Otherwise, starts processing RMIs. When the interactor returns, it breaks the RMI listening on all other processors.

◆ StartServices()

virtual void vtkParallelRenderManager::StartServices ( )
virtual

If on node other than root, starts serving RMI requests for parallel renders.

◆ StopServices()

virtual void vtkParallelRenderManager::StopServices ( )
virtual

If on root node, stops the RMI processing on all service nodes.

◆ StartRender()

virtual void vtkParallelRenderManager::StartRender ( )
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ EndRender()

virtual void vtkParallelRenderManager::EndRender ( )
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ SatelliteStartRender()

virtual void vtkParallelRenderManager::SatelliteStartRender ( )
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ SatelliteEndRender()

virtual void vtkParallelRenderManager::SatelliteEndRender ( )
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ RenderRMI()

virtual void vtkParallelRenderManager::RenderRMI ( )
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ ResetCamera()

virtual void vtkParallelRenderManager::ResetCamera ( vtkRenderer ren)
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ ResetCameraClippingRange()

virtual void vtkParallelRenderManager::ResetCameraClippingRange ( vtkRenderer ren)
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ ComputeVisiblePropBoundsRMI()

virtual void vtkParallelRenderManager::ComputeVisiblePropBoundsRMI ( int  renderId)
virtual

Callbacks that initialize and finish rendering and other tasks.

◆ InitializeRMIs()

virtual void vtkParallelRenderManager::InitializeRMIs ( )
virtual

◆ ResetAllCameras()

virtual void vtkParallelRenderManager::ResetAllCameras ( )
virtual

Resets the camera of each renderer contained in the RenderWindow.

Should only be called in the "root" process, and all remote processes must be processing RMIs for this method to complete.

◆ ComputeVisiblePropBounds()

virtual void vtkParallelRenderManager::ComputeVisiblePropBounds ( vtkRenderer ren,
double  bounds[6] 
)
virtual

Calculates the bounds by gathering information from all processes.

◆ SetParallelRendering()

virtual void vtkParallelRenderManager::SetParallelRendering ( int  )
virtual

Turns on/off parallel rendering.

When on (the default) the object responds to render events of the attached window, propagates the render event to other processors, and otherwise enables the parallel rendering process.

◆ GetParallelRendering()

virtual int vtkParallelRenderManager::GetParallelRendering ( )
virtual

Turns on/off parallel rendering.

When on (the default) the object responds to render events of the attached window, propagates the render event to other processors, and otherwise enables the parallel rendering process.

◆ ParallelRenderingOn()

virtual void vtkParallelRenderManager::ParallelRenderingOn ( )
virtual

Turns on/off parallel rendering.

When on (the default) the object responds to render events of the attached window, propagates the render event to other processors, and otherwise enables the parallel rendering process.

◆ ParallelRenderingOff()

virtual void vtkParallelRenderManager::ParallelRenderingOff ( )
virtual

Turns on/off parallel rendering.

When on (the default) the object responds to render events of the attached window, propagates the render event to other processors, and otherwise enables the parallel rendering process.

◆ SetRenderEventPropagation()

virtual void vtkParallelRenderManager::SetRenderEventPropagation ( int  )
virtual

Turns on/off render event propagation.

When on (the default) and ParallelRendering is on, process 0 will send an RMI call to all remote processes to perform a synchronized render. When off, render must be manually called on each process.

◆ GetRenderEventPropagation()

virtual int vtkParallelRenderManager::GetRenderEventPropagation ( )
virtual

Turns on/off render event propagation.

When on (the default) and ParallelRendering is on, process 0 will send an RMI call to all remote processes to perform a synchronized render. When off, render must be manually called on each process.

◆ RenderEventPropagationOn()

virtual void vtkParallelRenderManager::RenderEventPropagationOn ( )
virtual

Turns on/off render event propagation.

When on (the default) and ParallelRendering is on, process 0 will send an RMI call to all remote processes to perform a synchronized render. When off, render must be manually called on each process.

◆ RenderEventPropagationOff()

virtual void vtkParallelRenderManager::RenderEventPropagationOff ( )
virtual

Turns on/off render event propagation.

When on (the default) and ParallelRendering is on, process 0 will send an RMI call to all remote processes to perform a synchronized render. When off, render must be manually called on each process.

◆ SetDefaultRenderEventPropagation()

static void vtkParallelRenderManager::SetDefaultRenderEventPropagation ( bool  val)
inlinestatic

Get/Set the default value used for RenderEventPropagation when a new instance of vtkParallelRenderManager is created.

Set to true by default.

Definition at line 181 of file vtkParallelRenderManager.h.

◆ GetDefaultRenderEventPropagation()

static bool vtkParallelRenderManager::GetDefaultRenderEventPropagation ( )
inlinestatic

Definition at line 185 of file vtkParallelRenderManager.h.

◆ SetUseCompositing()

virtual void vtkParallelRenderManager::SetUseCompositing ( int  )
virtual

This is used for tiled display rendering.

When data has been duplicated on all processes, then we do not need to compositing. Cameras and renders are still propagated though.

◆ GetUseCompositing()

virtual int vtkParallelRenderManager::GetUseCompositing ( )
virtual

This is used for tiled display rendering.

When data has been duplicated on all processes, then we do not need to compositing. Cameras and renders are still propagated though.

◆ UseCompositingOn()

virtual void vtkParallelRenderManager::UseCompositingOn ( )
virtual

This is used for tiled display rendering.

When data has been duplicated on all processes, then we do not need to compositing. Cameras and renders are still propagated though.

◆ UseCompositingOff()

virtual void vtkParallelRenderManager::UseCompositingOff ( )
virtual

This is used for tiled display rendering.

When data has been duplicated on all processes, then we do not need to compositing. Cameras and renders are still propagated though.

◆ SetImageReductionFactor()

virtual void vtkParallelRenderManager::SetImageReductionFactor ( double  factor)
virtual

Set/Get the reduction factor (for sort-last based parallel renderers).

The size of rendered image is divided by the reduction factor and then is blown up to the size of the current vtkRenderWindow. Setting higher reduction factors enables shorter image transfer times (which is often the bottleneck) but will greatly reduce image quality. A reduction factor of 2 or greater should only be used for intermediate images in interactive applications. A reduction factor of 1 (or less) will result in no change in image quality. A parallel render manager may ignore the image reduction factor if it will result in little or no performance enhancements (eg. it does not do image space manipulations).

◆ GetImageReductionFactor()

virtual double vtkParallelRenderManager::GetImageReductionFactor ( )
virtual

Set/Get the reduction factor (for sort-last based parallel renderers).

The size of rendered image is divided by the reduction factor and then is blown up to the size of the current vtkRenderWindow. Setting higher reduction factors enables shorter image transfer times (which is often the bottleneck) but will greatly reduce image quality. A reduction factor of 2 or greater should only be used for intermediate images in interactive applications. A reduction factor of 1 (or less) will result in no change in image quality. A parallel render manager may ignore the image reduction factor if it will result in little or no performance enhancements (eg. it does not do image space manipulations).

◆ SetMaxImageReductionFactor()

virtual void vtkParallelRenderManager::SetMaxImageReductionFactor ( double  )
virtual

◆ GetMaxImageReductionFactor()

virtual double vtkParallelRenderManager::GetMaxImageReductionFactor ( )
virtual

◆ SetImageReductionFactorForUpdateRate()

virtual void vtkParallelRenderManager::SetImageReductionFactorForUpdateRate ( double  DesiredUpdateRate)
virtual

Sets the ReductionFactor based on the given desired update rate and the rendering metrics taken from the last time UpdateServerInfo was called.

Note that if AutoReductionFactor is on, this function is called with the desired update rate of the render window automatically.

◆ SetAutoImageReductionFactor()

virtual void vtkParallelRenderManager::SetAutoImageReductionFactor ( int  )
virtual

If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render.

◆ GetAutoImageReductionFactor()

virtual int vtkParallelRenderManager::GetAutoImageReductionFactor ( )
virtual

If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render.

◆ AutoImageReductionFactorOn()

virtual void vtkParallelRenderManager::AutoImageReductionFactorOn ( )
virtual

If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render.

◆ AutoImageReductionFactorOff()

virtual void vtkParallelRenderManager::AutoImageReductionFactorOff ( )
virtual

If on, the ReductionFactor is automatically adjusted to best meet the the DesiredUpdateRate in the current RenderWindow based on metrics from the last render.

◆ GetRenderTime()

virtual double vtkParallelRenderManager::GetRenderTime ( )
virtual

Get rendering metrics.

◆ GetImageProcessingTime()

virtual double vtkParallelRenderManager::GetImageProcessingTime ( )
virtual

Get rendering metrics.

◆ GetSyncRenderWindowRenderers()

virtual int vtkParallelRenderManager::GetSyncRenderWindowRenderers ( )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ SetSyncRenderWindowRenderers()

virtual void vtkParallelRenderManager::SetSyncRenderWindowRenderers ( int  )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ SyncRenderWindowRenderersOn()

virtual void vtkParallelRenderManager::SyncRenderWindowRenderersOn ( )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ SyncRenderWindowRenderersOff()

virtual void vtkParallelRenderManager::SyncRenderWindowRenderersOff ( )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ AddRenderer()

virtual void vtkParallelRenderManager::AddRenderer ( vtkRenderer )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ RemoveRenderer()

virtual void vtkParallelRenderManager::RemoveRenderer ( vtkRenderer )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ RemoveAllRenderers()

virtual void vtkParallelRenderManager::RemoveAllRenderers ( )
virtual

By default, the state of all renderers in the root's render window is propagated to the rest of the processes.

In order for this to work, all render windows must have the same renderers in the same order. If this is not the case, you can turn off the SyncRenderWindowRenderers. When this flag is off, the list of renderers held by this parallel render manager (initially empty) is synced. You can modify the list of renderers with the AddRenderer, RemoveRenderer, and RemoveAllRenderers methods.

◆ SetWriteBackImages()

virtual void vtkParallelRenderManager::SetWriteBackImages ( int  )
virtual

If on (the default), the result of any image space manipulations are written back to the render window frame buffer.

If off, the image stored in the frame buffer may not be correct. Either way, the correct frame buffer images may be read with vtkParallelRenderManager::GetPixelData. Turning WriteBackImages off may result in a speedup if the render window is not visible to the user and images are read back for further processing or transit.

◆ GetWriteBackImages()

virtual int vtkParallelRenderManager::GetWriteBackImages ( )
virtual

If on (the default), the result of any image space manipulations are written back to the render window frame buffer.

If off, the image stored in the frame buffer may not be correct. Either way, the correct frame buffer images may be read with vtkParallelRenderManager::GetPixelData. Turning WriteBackImages off may result in a speedup if the render window is not visible to the user and images are read back for further processing or transit.

◆ WriteBackImagesOn()

virtual void vtkParallelRenderManager::WriteBackImagesOn ( )
virtual

If on (the default), the result of any image space manipulations are written back to the render window frame buffer.

If off, the image stored in the frame buffer may not be correct. Either way, the correct frame buffer images may be read with vtkParallelRenderManager::GetPixelData. Turning WriteBackImages off may result in a speedup if the render window is not visible to the user and images are read back for further processing or transit.

◆ WriteBackImagesOff()

virtual void vtkParallelRenderManager::WriteBackImagesOff ( )
virtual

If on (the default), the result of any image space manipulations are written back to the render window frame buffer.

If off, the image stored in the frame buffer may not be correct. Either way, the correct frame buffer images may be read with vtkParallelRenderManager::GetPixelData. Turning WriteBackImages off may result in a speedup if the render window is not visible to the user and images are read back for further processing or transit.

◆ SetMagnifyImages()

virtual void vtkParallelRenderManager::SetMagnifyImages ( int  )
virtual

If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window.

◆ GetMagnifyImages()

virtual int vtkParallelRenderManager::GetMagnifyImages ( )
virtual

If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window.

◆ MagnifyImagesOn()

virtual void vtkParallelRenderManager::MagnifyImagesOn ( )
virtual

If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window.

◆ MagnifyImagesOff()

virtual void vtkParallelRenderManager::MagnifyImagesOff ( )
virtual

If on (the default), when the ImageReductionFactor is greater than 1 and WriteBackImages is on, the image will be magnified to fill the entire render window.

◆ SetMagnifyImageMethod()

virtual void vtkParallelRenderManager::SetMagnifyImageMethod ( int  method)
virtual

Sets the method used to magnify images.

Nearest simply replicates each pixel enough times to fill the image. Linear performs linear interpolation between the pixels.

◆ GetMagnifyImageMethod()

virtual int vtkParallelRenderManager::GetMagnifyImageMethod ( )
virtual

Sets the method used to magnify images.

Nearest simply replicates each pixel enough times to fill the image. Linear performs linear interpolation between the pixels.

◆ SetMagnifyImageMethodToNearest()

void vtkParallelRenderManager::SetMagnifyImageMethodToNearest ( )
inline

Sets the method used to magnify images.

Nearest simply replicates each pixel enough times to fill the image. Linear performs linear interpolation between the pixels.

Definition at line 307 of file vtkParallelRenderManager.h.

◆ SetMagnifyImageMethodToLinear()

void vtkParallelRenderManager::SetMagnifyImageMethodToLinear ( )
inline

Sets the method used to magnify images.

Nearest simply replicates each pixel enough times to fill the image. Linear performs linear interpolation between the pixels.

Definition at line 308 of file vtkParallelRenderManager.h.

◆ MagnifyImage()

virtual void vtkParallelRenderManager::MagnifyImage ( vtkUnsignedCharArray fullImage,
const int  fullImageSize[2],
vtkUnsignedCharArray reducedImage,
const int  reducedImageSize[2],
const int  fullImageViewport[4] = nullptr,
const int  reducedImageViewport[4] = nullptr 
)
virtual

Convenience functions for magnifying images.

◆ MagnifyImageNearest()

static void vtkParallelRenderManager::MagnifyImageNearest ( vtkUnsignedCharArray fullImage,
const int  fullImageSize[2],
vtkUnsignedCharArray reducedImage,
const int  reducedImageSize[2],
const int  fullImageViewport[4] = nullptr,
const int  reducedImageViewport[4] = nullptr 
)
static

Convenience functions for magnifying images.

◆ MagnifyImageLinear()

static void vtkParallelRenderManager::MagnifyImageLinear ( vtkUnsignedCharArray fullImage,
const int  fullImageSize[2],
vtkUnsignedCharArray reducedImage,
const int  reducedImageSize[2],
const int  fullImageViewport[4] = nullptr,
const int  reducedImageViewport[4] = nullptr 
)
static

Convenience functions for magnifying images.

◆ GetPixelData() [1/2]

virtual void vtkParallelRenderManager::GetPixelData ( vtkUnsignedCharArray data)
virtual

The most appropriate way to retrieve full size image data after a render.

Will work regardless of whether WriteBackImages or MagnifyImage is on or off. The data returned may be a shallow copy of an internal array. Therefore, the data may be invalid after the next render or if the ParallelRenderManager is destroyed.

◆ GetPixelData() [2/2]

virtual void vtkParallelRenderManager::GetPixelData ( int  x1,
int  y1,
int  x2,
int  y2,
vtkUnsignedCharArray data 
)
virtual

The most appropriate way to retrieve full size image data after a render.

Will work regardless of whether WriteBackImages or MagnifyImage is on or off. The data returned may be a shallow copy of an internal array. Therefore, the data may be invalid after the next render or if the ParallelRenderManager is destroyed.

◆ GetReducedPixelData() [1/2]

virtual void vtkParallelRenderManager::GetReducedPixelData ( vtkUnsignedCharArray data)
virtual

The most appropriate way to retrieve reduced size image data after a render.

Will work regardless of whether WriteBackImages or MagnifyImage is on or off. The data returned may be a shallow copy of an internal array. Therefore, the data may be invalid after the next render or if the ParallelRenderManager is destroyed.

◆ GetReducedPixelData() [2/2]

virtual void vtkParallelRenderManager::GetReducedPixelData ( int  x1,
int  y1,
int  x2,
int  y2,
vtkUnsignedCharArray data 
)
virtual

The most appropriate way to retrieve reduced size image data after a render.

Will work regardless of whether WriteBackImages or MagnifyImage is on or off. The data returned may be a shallow copy of an internal array. Therefore, the data may be invalid after the next render or if the ParallelRenderManager is destroyed.

◆ GetFullImageSize() [1/3]

virtual int* vtkParallelRenderManager::GetFullImageSize ( )
virtual

Returns the full image size calculated at the last render.

◆ GetFullImageSize() [2/3]

virtual void vtkParallelRenderManager::GetFullImageSize ( int &  ,
int &   
)
virtual

Returns the full image size calculated at the last render.

◆ GetFullImageSize() [3/3]

virtual void vtkParallelRenderManager::GetFullImageSize ( int  [2])
virtual

Returns the full image size calculated at the last render.

◆ GetReducedImageSize() [1/3]

virtual int* vtkParallelRenderManager::GetReducedImageSize ( )
virtual

Returns the reduced image size calculated at the last render.

◆ GetReducedImageSize() [2/3]

virtual void vtkParallelRenderManager::GetReducedImageSize ( int &  ,
int &   
)
virtual

Returns the reduced image size calculated at the last render.

◆ GetReducedImageSize() [3/3]

virtual void vtkParallelRenderManager::GetReducedImageSize ( int  [2])
virtual

Returns the reduced image size calculated at the last render.

◆ TileWindows()

void vtkParallelRenderManager::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.

◆ SetUseRGBA()

virtual void vtkParallelRenderManager::SetUseRGBA ( int  )
virtual

Get/Set if all Images must use RGBA instead of RGB.

By default, this flag is on.

◆ GetUseRGBA()

virtual int vtkParallelRenderManager::GetUseRGBA ( )
virtual

Get/Set if all Images must use RGBA instead of RGB.

By default, this flag is on.

◆ SetForceRenderWindowSize()

virtual void vtkParallelRenderManager::SetForceRenderWindowSize ( int  )
virtual

If ForceRenderWindowSize is set to true, the render manager will use the RenderWindowSize ivar instead of getting the size from the render window.

◆ GetForceRenderWindowSize()

virtual int vtkParallelRenderManager::GetForceRenderWindowSize ( )
virtual

If ForceRenderWindowSize is set to true, the render manager will use the RenderWindowSize ivar instead of getting the size from the render window.

◆ SetForcedRenderWindowSize() [1/2]

virtual void vtkParallelRenderManager::SetForcedRenderWindowSize ( int  ,
int   
)
virtual

If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window.

◆ SetForcedRenderWindowSize() [2/2]

void vtkParallelRenderManager::SetForcedRenderWindowSize ( int  [2])

If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window.

◆ GetForcedRenderWindowSize() [1/3]

virtual int* vtkParallelRenderManager::GetForcedRenderWindowSize ( )
virtual

If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window.

◆ GetForcedRenderWindowSize() [2/3]

virtual void vtkParallelRenderManager::GetForcedRenderWindowSize ( int &  ,
int &   
)
virtual

If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window.

◆ GetForcedRenderWindowSize() [3/3]

virtual void vtkParallelRenderManager::GetForcedRenderWindowSize ( int  [2])
virtual

If ForceRenderWindowSize is set to true, the render manager will use the Size ivar instead of getting the size from the render window.

◆ CheckForAbortRender()

virtual void vtkParallelRenderManager::CheckForAbortRender ( )
inlinevirtual

Definition at line 407 of file vtkParallelRenderManager.h.

◆ CheckForAbortComposite()

virtual int vtkParallelRenderManager::CheckForAbortComposite ( )
inlinevirtual

Definition at line 408 of file vtkParallelRenderManager.h.

◆ SetUseBackBuffer()

virtual void vtkParallelRenderManager::SetUseBackBuffer ( int  )
virtual

The default is to allow the use of the back buffer for compositing.

If set to false, this will prevent to manager from swapping buffers. This allows something else (for instance VisibleCellSelection) to control front/back buffer swapping.

◆ GetUseBackBuffer()

virtual int vtkParallelRenderManager::GetUseBackBuffer ( )
virtual

The default is to allow the use of the back buffer for compositing.

If set to false, this will prevent to manager from swapping buffers. This allows something else (for instance VisibleCellSelection) to control front/back buffer swapping.

◆ UseBackBufferOn()

virtual void vtkParallelRenderManager::UseBackBufferOn ( )
virtual

The default is to allow the use of the back buffer for compositing.

If set to false, this will prevent to manager from swapping buffers. This allows something else (for instance VisibleCellSelection) to control front/back buffer swapping.

◆ UseBackBufferOff()

virtual void vtkParallelRenderManager::UseBackBufferOff ( )
virtual

The default is to allow the use of the back buffer for compositing.

If set to false, this will prevent to manager from swapping buffers. This allows something else (for instance VisibleCellSelection) to control front/back buffer swapping.

◆ SetSynchronizeTileProperties()

virtual void vtkParallelRenderManager::SetSynchronizeTileProperties ( int  )
virtual

When set the render manager will synchronize the TileViewport and TileScale properties.

This may not be desirable in cases where there's some other mechanism to set the tile dimensions eg. Tile displays.

◆ GetSynchronizeTileProperties()

virtual int vtkParallelRenderManager::GetSynchronizeTileProperties ( )
virtual

When set the render manager will synchronize the TileViewport and TileScale properties.

This may not be desirable in cases where there's some other mechanism to set the tile dimensions eg. Tile displays.

◆ SynchronizeTilePropertiesOn()

virtual void vtkParallelRenderManager::SynchronizeTilePropertiesOn ( )
virtual

When set the render manager will synchronize the TileViewport and TileScale properties.

This may not be desirable in cases where there's some other mechanism to set the tile dimensions eg. Tile displays.

◆ SynchronizeTilePropertiesOff()

virtual void vtkParallelRenderManager::SynchronizeTilePropertiesOff ( )
virtual

When set the render manager will synchronize the TileViewport and TileScale properties.

This may not be desirable in cases where there's some other mechanism to set the tile dimensions eg. Tile displays.

◆ GenericStartRenderCallback()

virtual void vtkParallelRenderManager::GenericStartRenderCallback ( )
virtual

INTERNAL METHODS (DON NOT USE).

There are internal methods made public so that they can be called from callback functions.

◆ GenericEndRenderCallback()

virtual void vtkParallelRenderManager::GenericEndRenderCallback ( )
virtual

INTERNAL METHODS (DON NOT USE).

There are internal methods made public so that they can be called from callback functions.

◆ AddRenderWindowEventHandlers()

void vtkParallelRenderManager::AddRenderWindowEventHandlers ( )
protected

Add/Remove event handlers for the render window.

◆ RemoveRenderWindowEventHandlers()

void vtkParallelRenderManager::RemoveRenderWindowEventHandlers ( )
protected

Add/Remove event handlers for the render window.

◆ GetRenderers()

virtual vtkRendererCollection* vtkParallelRenderManager::GetRenderers ( )
protectedvirtual

◆ SendWindowInformation()

virtual void vtkParallelRenderManager::SendWindowInformation ( )
inlineprotectedvirtual

Used to synchronize rendering information per frame.

These are old methods provided for backward compatibility. One should look at using CollectWindowInformation(), ProcessWindowInformation() etc. for buffered sending of information over.

Definition at line 528 of file vtkParallelRenderManager.h.

◆ ReceiveWindowInformation()

virtual void vtkParallelRenderManager::ReceiveWindowInformation ( )
inlineprotectedvirtual

Definition at line 529 of file vtkParallelRenderManager.h.

◆ SendRendererInformation()

virtual void vtkParallelRenderManager::SendRendererInformation ( vtkRenderer )
inlineprotectedvirtual

Definition at line 530 of file vtkParallelRenderManager.h.

◆ ReceiveRendererInformation()

virtual void vtkParallelRenderManager::ReceiveRendererInformation ( vtkRenderer )
inlineprotectedvirtual

Definition at line 531 of file vtkParallelRenderManager.h.

◆ CollectWindowInformation()

virtual void vtkParallelRenderManager::CollectWindowInformation ( vtkMultiProcessStream )
inlineprotectedvirtual

Subclass should override these methods (instead of SendWindowInformation/ReceiveWindowInformation or SendRendererInformation/ReceiveRendererInformation) to collect or process meta-data to synchronize rendering information per frame.

Subclass should not use the Controller directly to send receive messages in any of these methods otherwise deadlocks may ensue.

Definition at line 541 of file vtkParallelRenderManager.h.

◆ ProcessWindowInformation()

virtual bool vtkParallelRenderManager::ProcessWindowInformation ( vtkMultiProcessStream )
inlineprotectedvirtual

Definition at line 542 of file vtkParallelRenderManager.h.

◆ CollectRendererInformation()

virtual void vtkParallelRenderManager::CollectRendererInformation ( vtkRenderer ,
vtkMultiProcessStream  
)
inlineprotectedvirtual

Definition at line 543 of file vtkParallelRenderManager.h.

◆ ProcessRendererInformation()

virtual bool vtkParallelRenderManager::ProcessRendererInformation ( vtkRenderer ,
vtkMultiProcessStream  
)
inlineprotectedvirtual

Definition at line 544 of file vtkParallelRenderManager.h.

◆ PreRenderProcessing()

virtual void vtkParallelRenderManager::PreRenderProcessing ( )
protectedpure virtual

Here is a good place to handle processing of data before and after render.

Implemented in vtkImageRenderManager, and vtkCompositeRenderManager.

◆ PostRenderProcessing()

virtual void vtkParallelRenderManager::PostRenderProcessing ( )
protectedpure virtual

Here is a good place to handle processing of data before and after render.

Implemented in vtkImageRenderManager, and vtkCompositeRenderManager.

◆ SetRenderWindowSize()

virtual void vtkParallelRenderManager::SetRenderWindowSize ( )
protectedvirtual

Called in satellites to set the render window size to the current FullImageSize and ReducedImageSize (or vice versa).

◆ LocalComputeVisiblePropBounds()

virtual void vtkParallelRenderManager::LocalComputeVisiblePropBounds ( vtkRenderer ren,
double  bounds[6] 
)
protectedvirtual

Called by ComputeVisiblePropBoundsRMI to get the bounds of a local renderer.

Override this method if the true bounds are different than those reported by the renderer.

◆ MagnifyReducedImage()

virtual void vtkParallelRenderManager::MagnifyReducedImage ( )
protectedvirtual

When called, fills FullImage.

◆ WriteFullImage()

virtual void vtkParallelRenderManager::WriteFullImage ( )
protectedvirtual

Write the full image back to the RenderWindow.

◆ ReadReducedImage()

virtual void vtkParallelRenderManager::ReadReducedImage ( )
protectedvirtual

Reads in the reduced image from the RenderWindow.

◆ LastRenderInFrontBuffer()

virtual int vtkParallelRenderManager::LastRenderInFrontBuffer ( )
protectedvirtual

Returns 1 if the RenderWindow's last image is in the front buffer, 0 if it is in the back.

◆ ChooseBuffer()

virtual int vtkParallelRenderManager::ChooseBuffer ( )
protectedvirtual

Select buffer to read from / render into.

◆ SetRenderWindowPixelData()

virtual void vtkParallelRenderManager::SetRenderWindowPixelData ( vtkUnsignedCharArray pixels,
const int  pixelDimensions[2] 
)
protectedvirtual

Sets the current render window's pixel data.

◆ ImageReduceRenderer()

virtual int vtkParallelRenderManager::ImageReduceRenderer ( vtkRenderer )
inlineprotectedvirtual

Returns true if the image for the given renderer should be rendered at a reduced size to be magnified later.

This method always returns true, but subclasses may render some renderers at a reduced size, magnify them, and then render the other renderers at full resolution.

Definition at line 605 of file vtkParallelRenderManager.h.

Member Data Documentation

◆ RenderWindow

vtkRenderWindow* vtkParallelRenderManager::RenderWindow
protected

Definition at line 455 of file vtkParallelRenderManager.h.

◆ Controller

vtkMultiProcessController* vtkParallelRenderManager::Controller
protected

Definition at line 456 of file vtkParallelRenderManager.h.

◆ Renderers

vtkRendererCollection* vtkParallelRenderManager::Renderers
protected

Definition at line 457 of file vtkParallelRenderManager.h.

◆ ForceRenderWindowSize

int vtkParallelRenderManager::ForceRenderWindowSize
protected

Definition at line 461 of file vtkParallelRenderManager.h.

◆ ForcedRenderWindowSize

int vtkParallelRenderManager::ForcedRenderWindowSize[2]
protected

Definition at line 462 of file vtkParallelRenderManager.h.

◆ RootProcessId

int vtkParallelRenderManager::RootProcessId
protected

The "root" node's process id.

This is the node which is listening for and propagating new render events from the RenderWindow. All processes on the controller must have the same value. This value must be set before SetRenderWindow method is called. In the constructor or the SetController methods are good places. By default this is set to 0.

Definition at line 472 of file vtkParallelRenderManager.h.

◆ ObservingRenderWindow

int vtkParallelRenderManager::ObservingRenderWindow
protected

Definition at line 474 of file vtkParallelRenderManager.h.

◆ ObservingAbort

int vtkParallelRenderManager::ObservingAbort
protected

Definition at line 475 of file vtkParallelRenderManager.h.

◆ StartRenderTag

unsigned long vtkParallelRenderManager::StartRenderTag
protected

Definition at line 477 of file vtkParallelRenderManager.h.

◆ EndRenderTag

unsigned long vtkParallelRenderManager::EndRenderTag
protected

Definition at line 478 of file vtkParallelRenderManager.h.

◆ ResetCameraTag

unsigned long vtkParallelRenderManager::ResetCameraTag
protected

Definition at line 479 of file vtkParallelRenderManager.h.

◆ ResetCameraClippingRangeTag

unsigned long vtkParallelRenderManager::ResetCameraClippingRangeTag
protected

Definition at line 480 of file vtkParallelRenderManager.h.

◆ AbortRenderCheckTag

unsigned long vtkParallelRenderManager::AbortRenderCheckTag
protected

Definition at line 481 of file vtkParallelRenderManager.h.

◆ ImageReductionFactor

double vtkParallelRenderManager::ImageReductionFactor
protected

Definition at line 483 of file vtkParallelRenderManager.h.

◆ MaxImageReductionFactor

double vtkParallelRenderManager::MaxImageReductionFactor
protected

Definition at line 484 of file vtkParallelRenderManager.h.

◆ AutoImageReductionFactor

int vtkParallelRenderManager::AutoImageReductionFactor
protected

Definition at line 485 of file vtkParallelRenderManager.h.

◆ WriteBackImages

int vtkParallelRenderManager::WriteBackImages
protected

Definition at line 487 of file vtkParallelRenderManager.h.

◆ MagnifyImages

int vtkParallelRenderManager::MagnifyImages
protected

Definition at line 488 of file vtkParallelRenderManager.h.

◆ MagnifyImageMethod

int vtkParallelRenderManager::MagnifyImageMethod
protected

Definition at line 489 of file vtkParallelRenderManager.h.

◆ UseRGBA

int vtkParallelRenderManager::UseRGBA
protected

Definition at line 491 of file vtkParallelRenderManager.h.

◆ SynchronizeTileProperties

int vtkParallelRenderManager::SynchronizeTileProperties
protected

Definition at line 492 of file vtkParallelRenderManager.h.

◆ FullImageSize

int vtkParallelRenderManager::FullImageSize[2]
protected

Definition at line 493 of file vtkParallelRenderManager.h.

◆ ReducedImageSize

int vtkParallelRenderManager::ReducedImageSize[2]
protected

Definition at line 494 of file vtkParallelRenderManager.h.

◆ FullImage

vtkUnsignedCharArray* vtkParallelRenderManager::FullImage
protected

Definition at line 496 of file vtkParallelRenderManager.h.

◆ ReducedImage

vtkUnsignedCharArray* vtkParallelRenderManager::ReducedImage
protected

Definition at line 497 of file vtkParallelRenderManager.h.

◆ FullImageUpToDate

int vtkParallelRenderManager::FullImageUpToDate
protected

Definition at line 499 of file vtkParallelRenderManager.h.

◆ ReducedImageUpToDate

int vtkParallelRenderManager::ReducedImageUpToDate
protected

Definition at line 500 of file vtkParallelRenderManager.h.

◆ RenderWindowImageUpToDate

int vtkParallelRenderManager::RenderWindowImageUpToDate
protected

Definition at line 501 of file vtkParallelRenderManager.h.

◆ Viewports

vtkDoubleArray* vtkParallelRenderManager::Viewports
protected

Definition at line 503 of file vtkParallelRenderManager.h.

◆ Lock

int vtkParallelRenderManager::Lock
protected

Definition at line 505 of file vtkParallelRenderManager.h.

◆ ParallelRendering

int vtkParallelRenderManager::ParallelRendering
protected

Definition at line 506 of file vtkParallelRenderManager.h.

◆ RenderEventPropagation

int vtkParallelRenderManager::RenderEventPropagation
protected

Definition at line 507 of file vtkParallelRenderManager.h.

◆ UseCompositing

int vtkParallelRenderManager::UseCompositing
protected

Definition at line 508 of file vtkParallelRenderManager.h.

◆ SyncRenderWindowRenderers

int vtkParallelRenderManager::SyncRenderWindowRenderers
protected

Definition at line 509 of file vtkParallelRenderManager.h.

◆ Timer

vtkTimerLog* vtkParallelRenderManager::Timer
protected

Definition at line 511 of file vtkParallelRenderManager.h.

◆ RenderTime

double vtkParallelRenderManager::RenderTime
protected

Definition at line 513 of file vtkParallelRenderManager.h.

◆ ImageProcessingTime

double vtkParallelRenderManager::ImageProcessingTime
protected

Definition at line 514 of file vtkParallelRenderManager.h.

◆ AverageTimePerPixel

double vtkParallelRenderManager::AverageTimePerPixel
protected

Used by SetImageReductionFactorForUpdateRate to smooth transitions transitions between image reduction factors.

Definition at line 520 of file vtkParallelRenderManager.h.

◆ AddedRMIs

int vtkParallelRenderManager::AddedRMIs
protected

Definition at line 665 of file vtkParallelRenderManager.h.

◆ RenderRMIId

unsigned long vtkParallelRenderManager::RenderRMIId
protected

Definition at line 666 of file vtkParallelRenderManager.h.

◆ BoundsRMIId

unsigned long vtkParallelRenderManager::BoundsRMIId
protected

Definition at line 667 of file vtkParallelRenderManager.h.

◆ UseBackBuffer

int vtkParallelRenderManager::UseBackBuffer
protected

Definition at line 668 of file vtkParallelRenderManager.h.

◆ DefaultRenderEventPropagation

bool vtkParallelRenderManager::DefaultRenderEventPropagation
staticprotected

Definition at line 670 of file vtkParallelRenderManager.h.


The documentation for this class was generated from the following file: