Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

vtkCompositeManager Class Reference

An object to composite multiple render windows. More...

#include <vtkCompositeManager.h>

Inheritance diagram for vtkCompositeManager:

Inheritance graph
[legend]
Collaboration diagram for vtkCompositeManager:

Collaboration graph
[legend]
List of all members.

Public Types

enum  Tags {
  RENDER_RMI_TAG = 12721, COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG = 56563, WIN_INFO_TAG = 22134, REN_INFO_TAG = 22135,
  BOUNDS_TAG = 94135
}

Public Methods

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
void InitializePieces ()
void InitializeOffScreen ()
void InitializeRMIs ()
float GetZ (int x, int y)
virtual vtkRenderWindowGetRenderWindow ()
void SetRenderWindow (vtkRenderWindow *renWin)
void StartInteractor ()
void ExitInteractor ()
void StartRender ()
void EndRender ()
void RenderRMI ()
void ResetCamera (vtkRenderer *ren)
void ResetCameraClippingRange (vtkRenderer *ren)
void ComputeVisiblePropBoundsRMI ()
void SetReductionFactor (int factor)
virtual int GetReductionFactor ()
virtual void SetUseChar (int)
virtual int GetUseChar ()
virtual void UseCharOn ()
virtual void UseCharOff ()
virtual void SetUseCompositing (int)
virtual int GetUseCompositing ()
virtual void UseCompositingOn ()
virtual void UseCompositingOff ()
virtual double GetGetBuffersTime ()
virtual double GetSetBuffersTime ()
virtual double GetCompositeTime ()
virtual double GetMaxRenderTime ()
virtual void SetController (vtkMultiProcessController *)
virtual vtkMultiProcessControllerGetController ()
virtual void CheckForAbortRender ()
virtual int CheckForAbortComposite ()

Static Public Methods

int IsTypeOf (const char *type)
vtkCompositeManager * SafeDownCast (vtkObject *o)

Protected Methods

 vtkCompositeManager ()
 ~vtkCompositeManager ()
 vtkCompositeManager (const vtkCompositeManager &)
void operator= (const vtkCompositeManager &)
virtual void CompositeBuffer (int width, int height, int useCharFlag, void *pBuf, float *zBuf, void *pTmp, float *zTmp)=0
void Composite ()
virtual void ComputeVisiblePropBounds (vtkRenderer *ren, float bounds[6])
void SetRendererSize (int x, int y)
float * MagnifyBuffer (float *localPdata, int windowSize[2])
void SetRenderWindowInteractor (vtkRenderWindowInteractor *iren)

Protected Attributes

vtkRenderWindowRenderWindow
vtkRenderWindowInteractorRenderWindowInteractor
vtkMultiProcessControllerController
unsigned long StartInteractorTag
unsigned long EndInteractorTag
unsigned long StartTag
unsigned long EndTag
unsigned long ResetCameraTag
unsigned long ResetCameraClippingRangeTag
int UseChar
int UseCompositing
float * PData
float * ZData
int RendererSize [2]
int ReductionFactor
int Lock
double GetBuffersTime
double SetBuffersTime
double CompositeTime
double MaxRenderTime
vtkTimerLogTimer

Detailed Description

An object to composite multiple render windows.

Date:
2001/10/31 16:36:11
Revision:
1.2

vtkCompositeManager operates in multiple processes. Each compositer has a render window. They use vtkMultiProcessControllers to comunicate the color and depth buffer to process 0's render window. Subclass implementation may not handle transparency well.

Attention:
You should set up the renders and render window interactor before setting the compositers render window. We set up observers on the renderer, An have no easy way of knowing when the renderers change. We could create AddRenderer and RemoveRenderer events ...
See also:
vtkMultiProcessController vtkRenderWindow vtkTreeComposite.

Definition at line 70 of file vtkCompositeManager.h.


Member Enumeration Documentation

enum vtkCompositeManager::Tags
 

Enumeration values:
RENDER_RMI_TAG 
COMPUTE_VISIBLE_PROP_BOUNDS_RMI_TAG 
WIN_INFO_TAG 
REN_INFO_TAG 
BOUNDS_TAG 

Definition at line 155 of file vtkCompositeManager.h.


Constructor & Destructor Documentation

vtkCompositeManager::vtkCompositeManager   [protected]
 

vtkCompositeManager::~vtkCompositeManager   [protected]
 

vtkCompositeManager::vtkCompositeManager const vtkCompositeManager &    [protected]
 


Member Function Documentation

virtual const char* vtkCompositeManager::GetClassName   [virtual]
 

Return the class name as a string. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkTreeComposite.

int vtkCompositeManager::IsTypeOf const char *    type [static]
 

Return 1 if this class type 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 vtkObject.

Reimplemented in vtkTreeComposite.

virtual int vtkCompositeManager::IsA const char *    type [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 vtkObject.

Reimplemented in vtkTreeComposite.

vtkCompositeManager* vtkCompositeManager::SafeDownCast vtkObject   o [static]
 

Will cast the supplied object to vtkObject* is this is a safe operation (i.e., a safe downcast); otherwise NULL is returned. This method is defined in all subclasses of vtkObject with the vtkTypeMacro found in vtkSetGet.h.

Reimplemented from vtkObject.

Reimplemented in vtkTreeComposite.

void vtkCompositeManager::PrintSelf ostream &    os,
vtkIndent    indent
[virtual]
 

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.

Reimplemented in vtkTreeComposite.

virtual vtkRenderWindow* vtkCompositeManager::GetRenderWindow   [virtual]
 

Set/Get the RenderWindow to use for compositing. We add a start and end observer to the window.

void vtkCompositeManager::SetRenderWindow vtkRenderWindow   renWin
 

Set/Get the RenderWindow to use for compositing. We add a start and end observer to the window.

void vtkCompositeManager::InitializePieces  
 

This method sets the piece and number of pieces for each actor with a polydata mapper. My other option is to do it every render, but that would force a partioning scheme.

void vtkCompositeManager::InitializeOffScreen  
 

turn off screen rendering on for the

void vtkCompositeManager::StartInteractor  
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::ExitInteractor  
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::StartRender  
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::EndRender  
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::RenderRMI  
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::ResetCamera vtkRenderer   ren
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::ResetCameraClippingRange vtkRenderer   ren
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::ComputeVisiblePropBoundsRMI  
 

Callbacks that initialize and finish the compositing.

void vtkCompositeManager::InitializeRMIs  
 

If the user wants to handle the event loop, then they must call this method to initialize the RMIs.

void vtkCompositeManager::SetReductionFactor int    factor
 

The reduction facor makes the transfered images smaller to decrease the render time. The final image is pixel replicated to be the original size. This option can be used by an interactor style to help get desired frame rates. The factor only needs to be set on process 0. Call SetRenderWindow before calling SetReductionFactor.

virtual int vtkCompositeManager::GetReductionFactor   [virtual]
 

The reduction facor makes the transfered images smaller to decrease the render time. The final image is pixel replicated to be the original size. This option can be used by an interactor style to help get desired frame rates. The factor only needs to be set on process 0. Call SetRenderWindow before calling SetReductionFactor.

virtual void vtkCompositeManager::SetUseChar int    [virtual]
 

This flag tells the compositer to use char values for pixel data rather than float. Default is float. I have seen some artifacts on some systems with char.

virtual int vtkCompositeManager::GetUseChar   [virtual]
 

This flag tells the compositer to use char values for pixel data rather than float. Default is float. I have seen some artifacts on some systems with char.

virtual void vtkCompositeManager::UseCharOn   [virtual]
 

This flag tells the compositer to use char values for pixel data rather than float. Default is float. I have seen some artifacts on some systems with char.

virtual void vtkCompositeManager::UseCharOff   [virtual]
 

This flag tells the compositer to use char values for pixel data rather than float. Default is float. I have seen some artifacts on some systems with char.

virtual void vtkCompositeManager::SetUseCompositing int    [virtual]
 

This flag turns the compositer on or off.

virtual int vtkCompositeManager::GetUseCompositing   [virtual]
 

This flag turns the compositer on or off.

virtual void vtkCompositeManager::UseCompositingOn   [virtual]
 

This flag turns the compositer on or off.

virtual void vtkCompositeManager::UseCompositingOff   [virtual]
 

This flag turns the compositer on or off.

virtual double vtkCompositeManager::GetGetBuffersTime   [virtual]
 

Get the times to set/get the buffers, Composite, and the time it takes all processes to finish the rendering step.

virtual double vtkCompositeManager::GetSetBuffersTime   [virtual]
 

Get the times to set/get the buffers, Composite, and the time it takes all processes to finish the rendering step.

virtual double vtkCompositeManager::GetCompositeTime   [virtual]
 

Get the times to set/get the buffers, Composite, and the time it takes all processes to finish the rendering step.

virtual double vtkCompositeManager::GetMaxRenderTime   [virtual]
 

Get the times to set/get the buffers, Composite, and the time it takes all processes to finish the rendering step.

float vtkCompositeManager::GetZ int    x,
int    y
 

Get the value of the z buffer at a position.

virtual void vtkCompositeManager::SetController vtkMultiProcessController   [virtual]
 

Set/Get the controller use in compositing (set to the global controller by default) If not using the default, this must be called before any other methods.

virtual vtkMultiProcessController* vtkCompositeManager::GetController   [virtual]
 

Set/Get the controller use in compositing (set to the global controller by default) If not using the default, this must be called before any other methods.

virtual void vtkCompositeManager::CheckForAbortRender   [inline, virtual]
 

Used by call backs. Not intended to be called by the user. Empty methods that can be used by the subclass to interupt a parallel render.

Definition at line 167 of file vtkCompositeManager.h.

virtual int vtkCompositeManager::CheckForAbortComposite   [inline, virtual]
 

Used by call backs. Not intended to be called by the user. Empty methods that can be used by the subclass to interupt a parallel render.

Definition at line 168 of file vtkCompositeManager.h.

void vtkCompositeManager::operator= const vtkCompositeManager &    [protected]
 

virtual void vtkCompositeManager::CompositeBuffer int    width,
int    height,
int    useCharFlag,
void *    pBuf,
float *    zBuf,
void *    pTmp,
float *    zTmp
[protected, pure virtual]
 

Reimplemented in vtkTreeComposite.

void vtkCompositeManager::Composite   [protected]
 

virtual void vtkCompositeManager::ComputeVisiblePropBounds vtkRenderer   ren,
float    bounds[6]
[protected, virtual]
 

void vtkCompositeManager::SetRendererSize int    x,
int    y
[protected]
 

float* vtkCompositeManager::MagnifyBuffer float *    localPdata,
int    windowSize[2]
[protected]
 

void vtkCompositeManager::SetRenderWindowInteractor vtkRenderWindowInteractor   iren [protected]
 


Member Data Documentation

vtkRenderWindow* vtkCompositeManager::RenderWindow [protected]
 

Definition at line 188 of file vtkCompositeManager.h.

vtkRenderWindowInteractor* vtkCompositeManager::RenderWindowInteractor [protected]
 

Definition at line 189 of file vtkCompositeManager.h.

vtkMultiProcessController* vtkCompositeManager::Controller [protected]
 

Definition at line 190 of file vtkCompositeManager.h.

unsigned long vtkCompositeManager::StartInteractorTag [protected]
 

Definition at line 192 of file vtkCompositeManager.h.

unsigned long vtkCompositeManager::EndInteractorTag [protected]
 

Definition at line 193 of file vtkCompositeManager.h.

unsigned long vtkCompositeManager::StartTag [protected]
 

Definition at line 194 of file vtkCompositeManager.h.

unsigned long vtkCompositeManager::EndTag [protected]
 

Definition at line 195 of file vtkCompositeManager.h.

unsigned long vtkCompositeManager::ResetCameraTag [protected]
 

Definition at line 196 of file vtkCompositeManager.h.

unsigned long vtkCompositeManager::ResetCameraClippingRangeTag [protected]
 

Definition at line 197 of file vtkCompositeManager.h.

int vtkCompositeManager::UseChar [protected]
 

Definition at line 198 of file vtkCompositeManager.h.

int vtkCompositeManager::UseCompositing [protected]
 

Definition at line 199 of file vtkCompositeManager.h.

float* vtkCompositeManager::PData [protected]
 

Definition at line 207 of file vtkCompositeManager.h.

float* vtkCompositeManager::ZData [protected]
 

Definition at line 208 of file vtkCompositeManager.h.

int vtkCompositeManager::RendererSize[2] [protected]
 

Definition at line 209 of file vtkCompositeManager.h.

int vtkCompositeManager::ReductionFactor [protected]
 

Definition at line 212 of file vtkCompositeManager.h.

int vtkCompositeManager::Lock [protected]
 

Definition at line 219 of file vtkCompositeManager.h.

double vtkCompositeManager::GetBuffersTime [protected]
 

Definition at line 221 of file vtkCompositeManager.h.

double vtkCompositeManager::SetBuffersTime [protected]
 

Definition at line 222 of file vtkCompositeManager.h.

double vtkCompositeManager::CompositeTime [protected]
 

Definition at line 223 of file vtkCompositeManager.h.

double vtkCompositeManager::MaxRenderTime [protected]
 

Definition at line 224 of file vtkCompositeManager.h.

vtkTimerLog* vtkCompositeManager::Timer [protected]
 

Definition at line 227 of file vtkCompositeManager.h.


The documentation for this class was generated from the following file:
Generated on Thu Mar 28 14:28:09 2002 for VTK by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001