ParaView
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
vtkPVDataRepresentation Class Reference

#include <vtkPVDataRepresentation.h>

Inheritance diagram for vtkPVDataRepresentation:
Inheritance graph
[legend]
Collaboration diagram for vtkPVDataRepresentation:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void MarkModified ()
bool GetUsingCacheForUpdate ()
virtual bool GetNeedUpdate ()
virtual int ProcessViewRequest (vtkInformationRequestKey *request_type, vtkInformation *inInfo, vtkInformation *outInfo)
virtual void SetVisibility (bool val)
virtual bool GetVisibility ()
virtual vtkDataObjectGetRenderedDataObject (int vtkNotUsed(port))
virtual void SetUpdateTime (double time)
virtual double GetUpdateTime ()
virtual bool GetUpdateTimeValid ()
virtual void SetUseCache (bool use)
virtual void SetCacheKey (double val)
virtual void SetForcedCacheKey (double val)
virtual void SetForceUseCache (bool val)
virtual double GetCacheKey ()
virtual bool GetUseCache ()
virtual bool AddToView (vtkView *view)
virtual bool RemoveFromView (vtkView *view)
virtual vtkAlgorithmOutputGetInternalOutputPort ()
virtual vtkAlgorithmOutputGetInternalOutputPort (int port)
virtual vtkAlgorithmOutputGetInternalOutputPort (int port, int conn)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkPVDataRepresentationSafeDownCast (vtkObject *o)

Protected Member Functions

 vtkPVDataRepresentation ()
 ~vtkPVDataRepresentation ()
virtual vtkExecutiveCreateDefaultExecutive ()
virtual int RequestUpdateExtent (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual bool IsCached (double cache_key)
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)

Protected Attributes

double UpdateTime
bool UpdateTimeValid

Detailed Description

vtkPVDataRepresentation adds some ParaView specific API to data representations.

See also:
vtkPVDataRepresentationPipeline

Definition at line 30 of file vtkPVDataRepresentation.h.


Constructor & Destructor Documentation

vtkPVDataRepresentation::vtkPVDataRepresentation ( ) [protected]
vtkPVDataRepresentation::~vtkPVDataRepresentation ( ) [protected]

Member Function Documentation

virtual const char* vtkPVDataRepresentation::GetClassName ( ) [virtual]
static int vtkPVDataRepresentation::IsTypeOf ( const char *  type) [static]
virtual int vtkPVDataRepresentation::IsA ( const char *  type) [virtual]
static vtkPVDataRepresentation* vtkPVDataRepresentation::SafeDownCast ( vtkObject o) [static]
void vtkPVDataRepresentation::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]
virtual int vtkPVDataRepresentation::ProcessViewRequest ( vtkInformationRequestKey request_type,
vtkInformation inInfo,
vtkInformation outInfo 
) [virtual]

vtkAlgorithm::ProcessRequest() equivalent for rendering passes. This is typically called by the vtkView to request meta-data from the representations or ask them to perform certain tasks e.g. PrepareForRendering. Overridden to skip processing when visibility if off.

Reimplemented in vtkDataLabelRepresentation, vtkAMRVolumeRepresentation, vtkCubeAxesRepresentation, vtkUnstructuredGridVolumeRepresentation, vtkImageVolumeRepresentation, vtkChartRepresentation, vtkImageSliceRepresentation, vtkTextSourceRepresentation, vtkGeometryRepresentation, vtkCompositeRepresentation, and vtkGlyph3DRepresentation.

virtual void vtkPVDataRepresentation::MarkModified ( ) [virtual]

This is one of the most important functions. In VTK pipelines, it's very easy for the pipeline to decide when it needs to re-execute. vtkAlgorithm::Update() can go up the entire pipeline to see if any filters MTime changed (among other things) and if so, it can re-execute the pipeline. However in case of representations, the real input connection may only be present on the data-server nodes. In that case the vtkPVDataRepresentation::RequestData() will only get called on the data-server nodes. That means that representations won't be able to any data-delivery in RequestData(). We'd need some other mechanisms to synchronize data-delivery among processes. To avoid that conundrum, the vtkSMRepresentationProxy calls MarkModified() on all processes whenever any filter in the pipeline is modified. In this method, the vtkPVDataRepresentation subclasses should ensure that they mark all delivery related filters dirty in their RequestData to ensure they execute then next time they are updated. The vtkPVDataRepresentation also uses a special executive which avoids updating the representation unless MarkModified() was called since the last Update(), thus acting as a update-suppressor.

Reimplemented in vtkAMRVolumeRepresentation, vtkUnstructuredGridVolumeRepresentation, vtkImageVolumeRepresentation, vtkCubeAxesRepresentation, vtkCompositeRepresentation, vtkChartRepresentation, vtkImageSliceRepresentation, vtkGeometryRepresentation, vtkPVCompositeRepresentation, vtkSelectionRepresentation, vtkDataLabelRepresentation, vtkTextSourceRepresentation, and vtkSpreadSheetRepresentation.

virtual void vtkPVDataRepresentation::SetVisibility ( bool  val) [inline, virtual]
virtual bool vtkPVDataRepresentation::GetVisibility ( ) [virtual]

Get/Set the visibility for this representation. When the visibility of representation of false, all view passes are ignored.

Reimplemented in vtkDataLabelRepresentation.

virtual vtkDataObject* vtkPVDataRepresentation::GetRenderedDataObject ( int   vtkNotUsedport) [inline, virtual]

Returns the data object that is rendered from the given input port.

Definition at line 76 of file vtkPVDataRepresentation.h.

virtual void vtkPVDataRepresentation::SetUpdateTime ( double  time) [virtual]
virtual double vtkPVDataRepresentation::GetUpdateTime ( ) [virtual]

Set the update time.

virtual bool vtkPVDataRepresentation::GetUpdateTimeValid ( ) [virtual]

Set whether the UpdateTime is valid.

virtual void vtkPVDataRepresentation::SetUseCache ( bool  use) [inline, virtual]

This controls when to use cache and when using cache, what cached value to use for the next update. This class using a special executive so that is a data is cached, then it does not propagate any pipeline requests upstream. These ivars are updated by vtkPVView::Update() based on the corresponding variable values on the vtkPVView itself.

Reimplemented in vtkCompositeRepresentation, vtkPVCompositeRepresentation, and vtkSelectionRepresentation.

Definition at line 98 of file vtkPVDataRepresentation.h.

virtual void vtkPVDataRepresentation::SetCacheKey ( double  val) [inline, virtual]

This controls when to use cache and when using cache, what cached value to use for the next update. This class using a special executive so that is a data is cached, then it does not propagate any pipeline requests upstream. These ivars are updated by vtkPVView::Update() based on the corresponding variable values on the vtkPVView itself.

Reimplemented in vtkCompositeRepresentation, vtkPVCompositeRepresentation, and vtkSelectionRepresentation.

Definition at line 100 of file vtkPVDataRepresentation.h.

virtual void vtkPVDataRepresentation::SetForcedCacheKey ( double  val) [inline, virtual]

Typically UseCache and CacheKey are updated by the View and representations cache based on what the view tells it. However in some cases we may want to force a representation to cache irrespective of the view (e.g. comparative views). In which case these ivars can up set. If ForcedCacheKey is true, it overrides UseCache and CacheKey. Instead, ForcedCacheKey is used.

Reimplemented in vtkCompositeRepresentation, vtkPVCompositeRepresentation, and vtkSelectionRepresentation.

Definition at line 111 of file vtkPVDataRepresentation.h.

virtual void vtkPVDataRepresentation::SetForceUseCache ( bool  val) [inline, virtual]

Typically UseCache and CacheKey are updated by the View and representations cache based on what the view tells it. However in some cases we may want to force a representation to cache irrespective of the view (e.g. comparative views). In which case these ivars can up set. If ForcedCacheKey is true, it overrides UseCache and CacheKey. Instead, ForcedCacheKey is used.

Reimplemented in vtkCompositeRepresentation, vtkPVCompositeRepresentation, and vtkSelectionRepresentation.

Definition at line 113 of file vtkPVDataRepresentation.h.

virtual double vtkPVDataRepresentation::GetCacheKey ( ) [inline, virtual]

Returns whether caching is used and what key to use when caching is enabled.

Definition at line 120 of file vtkPVDataRepresentation.h.

virtual bool vtkPVDataRepresentation::GetUseCache ( ) [inline, virtual]

Returns whether caching is used and what key to use when caching is enabled.

Definition at line 122 of file vtkPVDataRepresentation.h.

bool vtkPVDataRepresentation::GetUsingCacheForUpdate ( )

Called by vtkPVDataRepresentationPipeline to see if using cache is valid and will be used for the update. If so, it bypasses all pipeline passes. Subclasses should override IsCached(double) to indicate if a particular entry is cached.

virtual bool vtkPVDataRepresentation::GetNeedUpdate ( ) [virtual]
virtual bool vtkPVDataRepresentation::AddToView ( vtkView view) [inline, virtual]
virtual bool vtkPVDataRepresentation::RemoveFromView ( vtkView view) [inline, virtual]
virtual vtkAlgorithmOutput* vtkPVDataRepresentation::GetInternalOutputPort ( ) [inline, virtual]

Retrieves an output port for the input data object at the specified port and connection index. This may be connected to the representation's internal pipeline. Overridden to use vtkPVTrivialProducer instead of vtkTrivialProducer

Reimplemented from vtkDataRepresentation.

Definition at line 149 of file vtkPVDataRepresentation.h.

virtual vtkAlgorithmOutput* vtkPVDataRepresentation::GetInternalOutputPort ( int  port) [inline, virtual]

Retrieves an output port for the input data object at the specified port and connection index. This may be connected to the representation's internal pipeline. Overridden to use vtkPVTrivialProducer instead of vtkTrivialProducer

Reimplemented from vtkDataRepresentation.

Definition at line 151 of file vtkPVDataRepresentation.h.

virtual vtkAlgorithmOutput* vtkPVDataRepresentation::GetInternalOutputPort ( int  port,
int  conn 
) [virtual]

Retrieves an output port for the input data object at the specified port and connection index. This may be connected to the representation's internal pipeline. Overridden to use vtkPVTrivialProducer instead of vtkTrivialProducer

Reimplemented from vtkDataRepresentation.

virtual bool vtkPVDataRepresentation::IsCached ( double  cache_key) [inline, protected, virtual]

Subclasses should override this method when they support caching to indicate if the particular key is cached. Default returns false.

Reimplemented in vtkGeometryRepresentation, vtkAMRVolumeRepresentation, vtkImageSliceRepresentation, vtkUnstructuredGridVolumeRepresentation, vtkImageVolumeRepresentation, vtkDataLabelRepresentation, vtkChartRepresentation, and vtkTextSourceRepresentation.

Definition at line 164 of file vtkPVDataRepresentation.h.

virtual vtkExecutive* vtkPVDataRepresentation::CreateDefaultExecutive ( ) [protected, virtual]

Create a default executive.

Reimplemented from vtkAlgorithm.

virtual int vtkPVDataRepresentation::RequestData ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]
virtual int vtkPVDataRepresentation::RequestUpdateExtent ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

Member Data Documentation

Definition at line 181 of file vtkPVDataRepresentation.h.

Definition at line 182 of file vtkPVDataRepresentation.h.


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