ParaView
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
vtkAMRStreamingVolumeRepresentation Class Reference

representation used for volume rendering AMR datasets with ability to stream blocks. More...

#include <vtkAMRStreamingVolumeRepresentation.h>

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

Public Types

enum  ResamplingModes { RESAMPLE_OVER_DATA_BOUNDS = 0, RESAMPLE_USING_VIEW_FRUSTUM = 1 }
 
typedef vtkPVDataRepresentation Superclass
 
- Public Types inherited from vtkPVDataRepresentation
typedef vtkDataRepresentation Superclass
 

Public Member Functions

virtual const char * GetClassName ()
 
virtual int IsA (const char *type)
 
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual int ProcessViewRequest (vtkInformationRequestKey *request_type, vtkInformation *inInfo, vtkInformation *outInfo)
 vtkAlgorithm::ProcessRequest() equivalent for rendering passes. More...
 
virtual void SetVisibility (bool val)
 Get/Set the visibility for this representation. More...
 
void SetNumberOfSamples (int x, int y, int z)
 Get/Set the resample buffer size. More...
 
void SetOrientation (double, double, double)
 
void SetOrigin (double, double, double)
 
void SetPickable (int val)
 
void SetPosition (double, double, double)
 
void SetScale (double, double, double)
 
void SetInterpolationType (int val)
 
void SetColor (vtkColorTransferFunction *lut)
 
void SetScalarOpacity (vtkPiecewiseFunction *pwf)
 
void SetScalarOpacityUnitDistance (double val)
 
void SetAmbient (double)
 
void SetDiffuse (double)
 
void SetSpecular (double)
 
void SetSpecularPower (double)
 
void SetShade (bool)
 
void SetIndependantComponents (bool)
 
void SetRequestedRenderMode (int)
 
void SetResamplingMode (int val)
 This control the logic used to determine how to place the resampling grid within the AMR bounds. More...
 
virtual int GetResamplingMode ()
 This control the logic used to determine how to place the resampling grid within the AMR bounds. More...
 
virtual void SetStreamingRequestSize (int)
 Set the number of blocks to request at a given time on a single process when streaming. More...
 
virtual int GetStreamingRequestSize ()
 Set the number of blocks to request at a given time on a single process when streaming. More...
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, const char *name)
 Set the input data arrays that this algorithm will process. More...
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
 Set the input data arrays that this algorithm will process. More...
 
virtual void SetInputArrayToProcess (int idx, vtkInformation *info)
 Set the input data arrays that this algorithm will process. More...
 
virtual void SetInputArrayToProcess (int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
 Set the input data arrays that this algorithm will process. More...
 
- Public Member Functions inherited from vtkPVDataRepresentation
void PrintSelf (ostream &os, vtkIndent indent)
 
virtual void MarkModified ()
 This is one of the most important functions. More...
 
virtual unsigned int Initialize (unsigned int minIdAvailable, unsigned int maxIdAvailable)
 Initialize the representation with an identifier range so each internal representation can own a unique ID. More...
 
unsigned int GetUniqueIdentifier ()
 Return 0 if the Initialize() method was not called otherwise a unique ID that will be shared across the processes for that same object. More...
 
virtual bool GetVisibility ()
 
virtual vtkDataObject * GetRenderedDataObject (int vtkNotUsed(port))
 Returns the data object that is rendered from the given input port. More...
 
virtual void SetForcedCacheKey (double val)
 Typically a representation decides whether to use cache based on the view's values for UseCache and CacheKey. More...
 
virtual void SetForceUseCache (bool val)
 
bool GetUsingCacheForUpdate ()
 Called by vtkPVDataRepresentationPipeline to see if using cache is valid and will be used for the update. More...
 
virtual bool GetNeedUpdate ()
 
virtual vtkAlgorithmOutput * GetInternalOutputPort ()
 Retrieves an output port for the input data object at the specified port and connection index. More...
 
virtual vtkAlgorithmOutput * GetInternalOutputPort (int port)
 
virtual vtkAlgorithmOutput * GetInternalOutputPort (int port, int conn)
 
vtkView * GetView () const
 Provides access to the view. More...
 
virtual void SetUpdateTime (double time)
 Set the update time. More...
 
virtual double GetUpdateTime ()
 Set the update time. More...
 
virtual bool GetUpdateTimeValid ()
 Set whether the UpdateTime is valid. More...
 
virtual void SetUseCache (bool)
 
virtual void SetCacheKey (double val)
 
virtual double GetCacheKey ()
 Returns whether caching is used and what key to use when caching is enabled. More...
 
virtual bool GetUseCache ()
 Returns whether caching is used and what key to use when caching is enabled. More...
 

Static Public Member Functions

static vtkAMRStreamingVolumeRepresentationNew ()
 
static int IsTypeOf (const char *type)
 
static vtkAMRStreamingVolumeRepresentationSafeDownCast (vtkObject *o)
 
- Static Public Member Functions inherited from vtkPVDataRepresentation
static int IsTypeOf (const char *type)
 
static vtkPVDataRepresentationSafeDownCast (vtkObject *o)
 

Protected Member Functions

 vtkAMRStreamingVolumeRepresentation ()
 
 ~vtkAMRStreamingVolumeRepresentation ()
 
virtual bool AddToView (vtkView *view)
 Adds the representation to the view. More...
 
virtual bool RemoveFromView (vtkView *view)
 Removes the representation to the view. More...
 
virtual int FillInputPortInformation (int port, vtkInformation *info)
 Fill input port information. More...
 
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 Overridden to check if the input pipeline is streaming capable. More...
 
virtual int RequestUpdateExtent (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
 Setup the block request. More...
 
virtual int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 Process the current input for volume rendering (if anything). More...
 
bool StreamingUpdate (vtkPVRenderView *view, const double view_planes[24])
 Returns true if this representation has a "next piece" that it streamed. More...
 
virtual bool GetStreamingCapablePipeline ()
 Returns true when the input pipeline supports streaming. More...
 
virtual bool GetInStreamingUpdate ()
 Returns true when StreamingUpdate() is being processed. More...
 
- Protected Member Functions inherited from vtkPVDataRepresentation
 vtkPVDataRepresentation ()
 
 ~vtkPVDataRepresentation ()
 
virtual bool IsCached (double cache_key)
 Subclasses should override this method when they support caching to indicate if the particular key is cached. More...
 
virtual vtkExecutive * CreateDefaultExecutive ()
 Create a default executive. More...
 
virtual int RequestUpdateTime (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
 

Protected Attributes

vtkSmartPointer< vtkDataObject > ProcessedData
 This is the data object generated processed by the most recent call to RequestData() while not streaming. More...
 
vtkSmartPointer< vtkDataObject > ProcessedPiece
 This is the data object generated processed by the most recent call to RequestData() while streaming. More...
 
vtkSmartPointer< vtkAMRStreamingPriorityQueuePriorityQueue
 vtkAMRStreamingPriorityQueue is a helper class we used to compute the order in which to request blocks from the input pipeline. More...
 
vtkSmartPointer< vtkResampledAMRImageSourceResampler
 vtkImageData source used to resample an AMR dataset into a uniform grid suitable for volume rendering. More...
 
vtkBoundingBox DataBounds
 Used to keep track of data bounds. More...
 
int ResamplingMode
 
int StreamingRequestSize
 
vtkSmartPointer< vtkSmartVolumeMapper > VolumeMapper
 Rendering components. More...
 
vtkSmartPointer< vtkVolumeProperty > Property
 Rendering components. More...
 
vtkSmartPointer< vtkPVLODVolumeActor
 Rendering components. More...
 
- Protected Attributes inherited from vtkPVDataRepresentation
double UpdateTime
 
bool UpdateTimeValid
 
unsigned int UniqueIdentifier
 

Detailed Description

representation used for volume rendering AMR datasets with ability to stream blocks.

vtkAMRStreamingVolumeRepresentation is a representation used for volume rendering AMR datasets with ability to stream blocks from the input pipeline.

Definition at line 42 of file vtkAMRStreamingVolumeRepresentation.h.

Member Typedef Documentation

§ Superclass

Definition at line 47 of file vtkAMRStreamingVolumeRepresentation.h.

Member Enumeration Documentation

§ ResamplingModes

Enumerator
RESAMPLE_OVER_DATA_BOUNDS 
RESAMPLE_USING_VIEW_FRUSTUM 

Definition at line 50 of file vtkAMRStreamingVolumeRepresentation.h.

Constructor & Destructor Documentation

§ vtkAMRStreamingVolumeRepresentation()

vtkAMRStreamingVolumeRepresentation::vtkAMRStreamingVolumeRepresentation ( )
protected

§ ~vtkAMRStreamingVolumeRepresentation()

vtkAMRStreamingVolumeRepresentation::~vtkAMRStreamingVolumeRepresentation ( )
protected

Member Function Documentation

§ New()

static vtkAMRStreamingVolumeRepresentation* vtkAMRStreamingVolumeRepresentation::New ( )
static

§ GetClassName()

virtual const char* vtkAMRStreamingVolumeRepresentation::GetClassName ( )
virtual

Reimplemented from vtkPVDataRepresentation.

§ IsTypeOf()

static int vtkAMRStreamingVolumeRepresentation::IsTypeOf ( const char *  type)
static

§ IsA()

virtual int vtkAMRStreamingVolumeRepresentation::IsA ( const char *  type)
virtual

Reimplemented from vtkPVDataRepresentation.

§ SafeDownCast()

static vtkAMRStreamingVolumeRepresentation* vtkAMRStreamingVolumeRepresentation::SafeDownCast ( vtkObject *  o)
static

§ PrintSelf()

void vtkAMRStreamingVolumeRepresentation::PrintSelf ( ostream &  os,
vtkIndent  indent 
)

§ SetResamplingMode()

void vtkAMRStreamingVolumeRepresentation::SetResamplingMode ( int  val)

This control the logic used to determine how to place the resampling grid within the AMR bounds.

  • RESAMPLE_OVER_DATA_BOUNDS implies that the amr volume is set to the data bounds and is not updated as the user interacts.
  • RESAMPLE_USING_VIEW_FRUSTUM indicates that the uniform grid must be repositioned when the camera changes using the current view frustum.

§ GetResamplingMode()

virtual int vtkAMRStreamingVolumeRepresentation::GetResamplingMode ( )
virtual

This control the logic used to determine how to place the resampling grid within the AMR bounds.

  • RESAMPLE_OVER_DATA_BOUNDS implies that the amr volume is set to the data bounds and is not updated as the user interacts.
  • RESAMPLE_USING_VIEW_FRUSTUM indicates that the uniform grid must be repositioned when the camera changes using the current view frustum.

§ ProcessViewRequest()

virtual int vtkAMRStreamingVolumeRepresentation::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 from vtkPVDataRepresentation.

§ SetVisibility()

virtual void vtkAMRStreamingVolumeRepresentation::SetVisibility ( bool  val)
virtual

Get/Set the visibility for this representation.

When the visibility of representation of false, all view passes are ignored.

Reimplemented from vtkPVDataRepresentation.

§ SetNumberOfSamples()

void vtkAMRStreamingVolumeRepresentation::SetNumberOfSamples ( int  x,
int  y,
int  z 
)

Get/Set the resample buffer size.

This controls the resolution at which the data is resampled.

§ SetStreamingRequestSize()

virtual void vtkAMRStreamingVolumeRepresentation::SetStreamingRequestSize ( int  )
virtual

Set the number of blocks to request at a given time on a single process when streaming.

§ GetStreamingRequestSize()

virtual int vtkAMRStreamingVolumeRepresentation::GetStreamingRequestSize ( )
virtual

Set the number of blocks to request at a given time on a single process when streaming.

§ SetInputArrayToProcess() [1/4]

virtual void vtkAMRStreamingVolumeRepresentation::SetInputArrayToProcess ( int  idx,
int  port,
int  connection,
int  fieldAssociation,
const char *  name 
)
virtual

Set the input data arrays that this algorithm will process.

§ SetInputArrayToProcess() [2/4]

virtual void vtkAMRStreamingVolumeRepresentation::SetInputArrayToProcess ( int  idx,
int  port,
int  connection,
int  fieldAssociation,
int  fieldAttributeType 
)
inlinevirtual

Set the input data arrays that this algorithm will process.

Definition at line 106 of file vtkAMRStreamingVolumeRepresentation.h.

§ SetInputArrayToProcess() [3/4]

virtual void vtkAMRStreamingVolumeRepresentation::SetInputArrayToProcess ( int  idx,
vtkInformation *  info 
)
inlinevirtual

Set the input data arrays that this algorithm will process.

Definition at line 112 of file vtkAMRStreamingVolumeRepresentation.h.

§ SetInputArrayToProcess() [4/4]

virtual void vtkAMRStreamingVolumeRepresentation::SetInputArrayToProcess ( int  idx,
int  port,
int  connection,
const char *  fieldAssociation,
const char *  attributeTypeorName 
)
inlinevirtual

Set the input data arrays that this algorithm will process.

Definition at line 116 of file vtkAMRStreamingVolumeRepresentation.h.

§ SetOrientation()

void vtkAMRStreamingVolumeRepresentation::SetOrientation ( double  ,
double  ,
double   
)

§ SetOrigin()

void vtkAMRStreamingVolumeRepresentation::SetOrigin ( double  ,
double  ,
double   
)

§ SetPickable()

void vtkAMRStreamingVolumeRepresentation::SetPickable ( int  val)

§ SetPosition()

void vtkAMRStreamingVolumeRepresentation::SetPosition ( double  ,
double  ,
double   
)

§ SetScale()

void vtkAMRStreamingVolumeRepresentation::SetScale ( double  ,
double  ,
double   
)

§ SetInterpolationType()

void vtkAMRStreamingVolumeRepresentation::SetInterpolationType ( int  val)

§ SetColor()

void vtkAMRStreamingVolumeRepresentation::SetColor ( vtkColorTransferFunction *  lut)

§ SetScalarOpacity()

void vtkAMRStreamingVolumeRepresentation::SetScalarOpacity ( vtkPiecewiseFunction *  pwf)

§ SetScalarOpacityUnitDistance()

void vtkAMRStreamingVolumeRepresentation::SetScalarOpacityUnitDistance ( double  val)

§ SetAmbient()

void vtkAMRStreamingVolumeRepresentation::SetAmbient ( double  )

§ SetDiffuse()

void vtkAMRStreamingVolumeRepresentation::SetDiffuse ( double  )

§ SetSpecular()

void vtkAMRStreamingVolumeRepresentation::SetSpecular ( double  )

§ SetSpecularPower()

void vtkAMRStreamingVolumeRepresentation::SetSpecularPower ( double  )

§ SetShade()

void vtkAMRStreamingVolumeRepresentation::SetShade ( bool  )

§ SetIndependantComponents()

void vtkAMRStreamingVolumeRepresentation::SetIndependantComponents ( bool  )

§ SetRequestedRenderMode()

void vtkAMRStreamingVolumeRepresentation::SetRequestedRenderMode ( int  )

§ AddToView()

virtual bool vtkAMRStreamingVolumeRepresentation::AddToView ( vtkView *  view)
protectedvirtual

Adds the representation to the view.

This is called from vtkView::AddRepresentation(). Subclasses should override this method. Returns true if the addition succeeds.

Reimplemented from vtkPVDataRepresentation.

§ RemoveFromView()

virtual bool vtkAMRStreamingVolumeRepresentation::RemoveFromView ( vtkView *  view)
protectedvirtual

Removes the representation to the view.

This is called from vtkView::RemoveRepresentation(). Subclasses should override this method. Returns true if the removal succeeds.

Reimplemented from vtkPVDataRepresentation.

§ FillInputPortInformation()

virtual int vtkAMRStreamingVolumeRepresentation::FillInputPortInformation ( int  port,
vtkInformation *  info 
)
protectedvirtual

Fill input port information.

§ RequestInformation()

virtual int vtkAMRStreamingVolumeRepresentation::RequestInformation ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protectedvirtual

Overridden to check if the input pipeline is streaming capable.

This method should check if streaming is enabled i.e. vtkPVView::GetEnableStreaming() and the input pipeline provides necessary AMR meta-data.

§ RequestUpdateExtent()

virtual int vtkAMRStreamingVolumeRepresentation::RequestUpdateExtent ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
)
protectedvirtual

Setup the block request.

During StreamingUpdate, this will request the blocks based on priorities determined by the vtkAMRStreamingPriorityQueue, otherwise it doesn't make any specific request. AMR sources can treat the absence of specific block request to mean various things. It's expected that read only the root block (or a few more) in that case.

Reimplemented from vtkPVDataRepresentation.

§ RequestData()

virtual int vtkAMRStreamingVolumeRepresentation::RequestData ( vtkInformation *  ,
vtkInformationVector **  ,
vtkInformationVector *   
)
protectedvirtual

Process the current input for volume rendering (if anything).

When not in StreamingUpdate, this also initializes the priority queue since the input AMR may have totally changed, including its structure.

Reimplemented from vtkPVDataRepresentation.

§ GetStreamingCapablePipeline()

virtual bool vtkAMRStreamingVolumeRepresentation::GetStreamingCapablePipeline ( )
protectedvirtual

Returns true when the input pipeline supports streaming.

It is set in RequestInformation().

§ GetInStreamingUpdate()

virtual bool vtkAMRStreamingVolumeRepresentation::GetInStreamingUpdate ( )
protectedvirtual

Returns true when StreamingUpdate() is being processed.

§ StreamingUpdate()

bool vtkAMRStreamingVolumeRepresentation::StreamingUpdate ( vtkPVRenderView view,
const double  view_planes[24] 
)
protected

Returns true if this representation has a "next piece" that it streamed.

This method will update the PriorityQueue using the view planes specified and then call Update() on the representation, making it reexecute and regenerate the outline for the next "piece" of data.

Member Data Documentation

§ ProcessedData

vtkSmartPointer<vtkDataObject> vtkAMRStreamingVolumeRepresentation::ProcessedData
protected

This is the data object generated processed by the most recent call to RequestData() while not streaming.

This is non-empty only on the data-server nodes.

Definition at line 228 of file vtkAMRStreamingVolumeRepresentation.h.

§ ProcessedPiece

vtkSmartPointer<vtkDataObject> vtkAMRStreamingVolumeRepresentation::ProcessedPiece
protected

This is the data object generated processed by the most recent call to RequestData() while streaming.

This is non-empty only on the data-server nodes.

Definition at line 235 of file vtkAMRStreamingVolumeRepresentation.h.

§ PriorityQueue

vtkSmartPointer<vtkAMRStreamingPriorityQueue> vtkAMRStreamingVolumeRepresentation::PriorityQueue
protected

vtkAMRStreamingPriorityQueue is a helper class we used to compute the order in which to request blocks from the input pipeline.

Implementations can come up with their own rules to decide the request order based on application and data type.

Definition at line 243 of file vtkAMRStreamingVolumeRepresentation.h.

§ Resampler

vtkSmartPointer<vtkResampledAMRImageSource> vtkAMRStreamingVolumeRepresentation::Resampler
protected

vtkImageData source used to resample an AMR dataset into a uniform grid suitable for volume rendering.

Definition at line 249 of file vtkAMRStreamingVolumeRepresentation.h.

§ VolumeMapper

vtkSmartPointer<vtkSmartVolumeMapper> vtkAMRStreamingVolumeRepresentation::VolumeMapper
protected

Rendering components.

Definition at line 255 of file vtkAMRStreamingVolumeRepresentation.h.

§ Property

vtkSmartPointer<vtkVolumeProperty> vtkAMRStreamingVolumeRepresentation::Property
protected

Rendering components.

Definition at line 256 of file vtkAMRStreamingVolumeRepresentation.h.

§ Actor

vtkSmartPointer<vtkPVLODVolume> vtkAMRStreamingVolumeRepresentation::Actor
protected

Rendering components.

Definition at line 257 of file vtkAMRStreamingVolumeRepresentation.h.

§ DataBounds

vtkBoundingBox vtkAMRStreamingVolumeRepresentation::DataBounds
protected

Used to keep track of data bounds.

Definition at line 263 of file vtkAMRStreamingVolumeRepresentation.h.

§ ResamplingMode

int vtkAMRStreamingVolumeRepresentation::ResamplingMode
protected

Definition at line 265 of file vtkAMRStreamingVolumeRepresentation.h.

§ StreamingRequestSize

int vtkAMRStreamingVolumeRepresentation::StreamingRequestSize
protected

Definition at line 266 of file vtkAMRStreamingVolumeRepresentation.h.


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