Executive supporting partial updates.
More...
#include <vtkStreamingDemandDrivenPipeline.h>
Inherits vtkDemandDrivenPipeline.
|
virtual const char * | GetClassName () |
|
virtual int | IsA (const char *type) |
|
void | PrintSelf (ostream &os, vtkIndent indent) |
|
int | PropagateUpdateExtent (int outputPort) |
|
|
virtual int | ProcessRequest (vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo) |
|
|
virtual int | Update () |
|
virtual int | Update (int port) |
|
virtual int | UpdateWholeExtent () |
|
|
int | SetMaximumNumberOfPieces (int port, int n) |
|
int | SetMaximumNumberOfPieces (vtkInformation *, int n) |
|
int | GetMaximumNumberOfPieces (int port) |
|
int | GetMaximumNumberOfPieces (vtkInformation *) |
|
|
int | SetWholeExtent (vtkInformation *, int extent[6]) |
|
void | GetWholeExtent (vtkInformation *, int extent[6]) |
|
int * | GetWholeExtent (vtkInformation *) |
|
|
int | SetUpdateExtentToWholeExtent (int port) |
|
int | SetUpdateExtentToWholeExtent (vtkInformation *) |
|
|
int | SetUpdateExtent (int port, int extent[6]) |
|
int | SetUpdateExtent (vtkInformation *, int extent[6]) |
|
void | GetUpdateExtent (vtkInformation *, int extent[6]) |
|
int * | GetUpdateExtent (vtkInformation *) |
|
|
int | SetUpdateExtent (int port, int piece, int numPieces, int ghostLevel) |
|
int | SetUpdateExtent (vtkInformation *, int piece, int numPieces, int ghostLevel) |
|
int | SetUpdatePiece (vtkInformation *, int piece) |
|
int | GetUpdatePiece (vtkInformation *) |
|
int | SetUpdateNumberOfPieces (vtkInformation *, int n) |
|
int | GetUpdateNumberOfPieces (vtkInformation *) |
|
int | SetUpdateGhostLevel (vtkInformation *, int n) |
|
int | GetUpdateGhostLevel (vtkInformation *) |
|
int | SetUpdateResolution (int port, double r) |
|
int | SetUpdateResolution (vtkInformation *, double r) |
|
double | GetUpdateResolution (vtkInformation *) |
|
|
int | SetUpdateTimeSteps (int port, double *times, int length) |
|
int | SetUpdateTimeSteps (vtkInformation *, double *times, int length) |
|
int | SetUpdateTimeStep (int port, double time) |
|
|
int | SetRequestExactExtent (int port, int flag) |
|
int | GetRequestExactExtent (int port) |
|
|
int | SetExtentTranslator (int port, vtkExtentTranslator *translator) |
|
int | SetExtentTranslator (vtkInformation *, vtkExtentTranslator *translator) |
|
vtkExtentTranslator * | GetExtentTranslator (int port) |
|
vtkExtentTranslator * | GetExtentTranslator (vtkInformation *info) |
|
|
int | SetWholeBoundingBox (int port, double bb[6]) |
|
void | GetWholeBoundingBox (int port, double bb[6]) |
|
double * | GetWholeBoundingBox (int port) |
|
|
int | SetPieceBoundingBox (int port, double bb[6]) |
|
void | GetPieceBoundingBox (int port, double bb[6]) |
|
double * | GetPieceBoundingBox (int port) |
|
|
double | ComputePriority () |
|
virtual double | ComputePriority (int port) |
|
|
| vtkStreamingDemandDrivenPipeline () |
|
| ~vtkStreamingDemandDrivenPipeline () |
|
virtual int | NeedToExecuteBasedOnTime (vtkInformation *outInfo, vtkDataObject *dataObject) |
|
virtual int | NeedToExecuteBasedOnFastPathData (vtkInformation *outInfo) |
|
virtual int | ExecuteInformation (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual void | CopyDefaultInformation (vtkInformation *request, int direction, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual int | VerifyOutputInformation (int outputPort, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual int | NeedToExecuteData (int outputPort, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual void | ExecuteDataStart (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual void | ExecuteDataEnd (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual void | MarkOutputsGenerated (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
virtual void | ResetPipelineInformation (int port, vtkInformation *) |
|
|
virtual void | ResetUpdateInformation (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) |
|
Executive supporting partial updates.
vtkStreamingDemandDrivenPipeline is an executive that supports updating only a portion of the data set in the pipeline. This is the style of pipeline update that is provided by the old-style VTK 4.x pipeline. Instead of always updating an entire data set, this executive supports asking for pieces or sub-extents.
- Examples:
- vtkStreamingDemandDrivenPipeline (Examples)
- Tests:
- vtkStreamingDemandDrivenPipeline (Tests)
Definition at line 48 of file vtkStreamingDemandDrivenPipeline.h.
vtkStreamingDemandDrivenPipeline::vtkStreamingDemandDrivenPipeline |
( |
| ) |
|
|
protected |
vtkStreamingDemandDrivenPipeline::~vtkStreamingDemandDrivenPipeline |
( |
| ) |
|
|
protected |
virtual const char* vtkStreamingDemandDrivenPipeline::GetClassName |
( |
| ) |
|
|
virtual |
static int vtkStreamingDemandDrivenPipeline::IsTypeOf |
( |
const char * |
type | ) |
|
|
static |
virtual int vtkStreamingDemandDrivenPipeline::IsA |
( |
const char * |
type | ) |
|
|
virtual |
void vtkStreamingDemandDrivenPipeline::PrintSelf |
( |
ostream & |
os, |
|
|
vtkIndent |
indent |
|
) |
| |
Generalized interface for asking the executive to fullfill update requests.
virtual int vtkStreamingDemandDrivenPipeline::Update |
( |
| ) |
|
|
virtual |
Bring the outputs up-to-date.
virtual int vtkStreamingDemandDrivenPipeline::Update |
( |
int |
port | ) |
|
|
virtual |
Bring the outputs up-to-date.
virtual int vtkStreamingDemandDrivenPipeline::UpdateWholeExtent |
( |
| ) |
|
|
virtual |
Bring the outputs up-to-date.
int vtkStreamingDemandDrivenPipeline::PropagateUpdateExtent |
( |
int |
outputPort | ) |
|
Propagate the update request from the given output port back through the pipeline. Should be called only when information is up to date.
int vtkStreamingDemandDrivenPipeline::SetMaximumNumberOfPieces |
( |
int |
port, |
|
|
int |
n |
|
) |
| |
Set/Get the maximum number of pieces that can be requested from the given port. The maximum number of pieces is meta data for unstructured data sets. It gets set by the source during the update information call. A value of -1 indicates that there is no maximum.
int vtkStreamingDemandDrivenPipeline::SetMaximumNumberOfPieces |
( |
vtkInformation * |
, |
|
|
int |
n |
|
) |
| |
Set/Get the maximum number of pieces that can be requested from the given port. The maximum number of pieces is meta data for unstructured data sets. It gets set by the source during the update information call. A value of -1 indicates that there is no maximum.
int vtkStreamingDemandDrivenPipeline::GetMaximumNumberOfPieces |
( |
int |
port | ) |
|
Set/Get the maximum number of pieces that can be requested from the given port. The maximum number of pieces is meta data for unstructured data sets. It gets set by the source during the update information call. A value of -1 indicates that there is no maximum.
int vtkStreamingDemandDrivenPipeline::GetMaximumNumberOfPieces |
( |
vtkInformation * |
| ) |
|
Set/Get the maximum number of pieces that can be requested from the given port. The maximum number of pieces is meta data for unstructured data sets. It gets set by the source during the update information call. A value of -1 indicates that there is no maximum.
int vtkStreamingDemandDrivenPipeline::SetWholeExtent |
( |
vtkInformation * |
, |
|
|
int |
extent[6] |
|
) |
| |
Set/Get the whole extent of an output port. The whole extent is meta data for structured data sets. It gets set by the algorithm during the update information pass.
void vtkStreamingDemandDrivenPipeline::GetWholeExtent |
( |
vtkInformation * |
, |
|
|
int |
extent[6] |
|
) |
| |
Set/Get the whole extent of an output port. The whole extent is meta data for structured data sets. It gets set by the algorithm during the update information pass.
int* vtkStreamingDemandDrivenPipeline::GetWholeExtent |
( |
vtkInformation * |
| ) |
|
Set/Get the whole extent of an output port. The whole extent is meta data for structured data sets. It gets set by the algorithm during the update information pass.
int vtkStreamingDemandDrivenPipeline::SetUpdateExtentToWholeExtent |
( |
int |
port | ) |
|
If the whole input extent is required to generate the requested output extent, this method can be called to set the input update extent to the whole input extent. This method assumes that the whole extent is known (that UpdateInformation has been called)
int vtkStreamingDemandDrivenPipeline::SetUpdateExtentToWholeExtent |
( |
vtkInformation * |
| ) |
|
If the whole input extent is required to generate the requested output extent, this method can be called to set the input update extent to the whole input extent. This method assumes that the whole extent is known (that UpdateInformation has been called)
int vtkStreamingDemandDrivenPipeline::SetUpdateExtent |
( |
int |
port, |
|
|
int |
extent[6] |
|
) |
| |
Get/Set the update extent for output ports that use 3D extents.
int vtkStreamingDemandDrivenPipeline::SetUpdateExtent |
( |
vtkInformation * |
, |
|
|
int |
extent[6] |
|
) |
| |
Get/Set the update extent for output ports that use 3D extents.
void vtkStreamingDemandDrivenPipeline::GetUpdateExtent |
( |
vtkInformation * |
, |
|
|
int |
extent[6] |
|
) |
| |
Get/Set the update extent for output ports that use 3D extents.
int* vtkStreamingDemandDrivenPipeline::GetUpdateExtent |
( |
vtkInformation * |
| ) |
|
Get/Set the update extent for output ports that use 3D extents.
int vtkStreamingDemandDrivenPipeline::SetUpdateExtent |
( |
int |
port, |
|
|
int |
piece, |
|
|
int |
numPieces, |
|
|
int |
ghostLevel |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdateExtent |
( |
vtkInformation * |
, |
|
|
int |
piece, |
|
|
int |
numPieces, |
|
|
int |
ghostLevel |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdatePiece |
( |
vtkInformation * |
, |
|
|
int |
piece |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::GetUpdatePiece |
( |
vtkInformation * |
| ) |
|
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdateNumberOfPieces |
( |
vtkInformation * |
, |
|
|
int |
n |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::GetUpdateNumberOfPieces |
( |
vtkInformation * |
| ) |
|
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdateGhostLevel |
( |
vtkInformation * |
, |
|
|
int |
n |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::GetUpdateGhostLevel |
( |
vtkInformation * |
| ) |
|
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdateResolution |
( |
int |
port, |
|
|
double |
r |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdateResolution |
( |
vtkInformation * |
, |
|
|
double |
r |
|
) |
| |
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
double vtkStreamingDemandDrivenPipeline::GetUpdateResolution |
( |
vtkInformation * |
| ) |
|
Set/Get the update piece, update number of pieces, and update number of ghost levels for an output port. Similar to update extent in 3D.
int vtkStreamingDemandDrivenPipeline::SetUpdateTimeSteps |
( |
int |
port, |
|
|
double * |
times, |
|
|
int |
length |
|
) |
| |
Get/Set the update extent for output ports that use Temporal Extents
int vtkStreamingDemandDrivenPipeline::SetUpdateTimeSteps |
( |
vtkInformation * |
, |
|
|
double * |
times, |
|
|
int |
length |
|
) |
| |
Get/Set the update extent for output ports that use Temporal Extents
int vtkStreamingDemandDrivenPipeline::SetUpdateTimeStep |
( |
int |
port, |
|
|
double |
time |
|
) |
| |
Get/Set the update extent for output ports that use Temporal Extents
int vtkStreamingDemandDrivenPipeline::SetRequestExactExtent |
( |
int |
port, |
|
|
int |
flag |
|
) |
| |
This request flag indicates whether the requester can handle more data than requested for the given port. Right now it is used in vtkImageData. Image filters can return more data than requested. The the consumer cannot handle this (i.e. DataSetToDataSetFitler) the image will crop itself. This functionality used to be in ImageToStructuredPoints.
int vtkStreamingDemandDrivenPipeline::GetRequestExactExtent |
( |
int |
port | ) |
|
This request flag indicates whether the requester can handle more data than requested for the given port. Right now it is used in vtkImageData. Image filters can return more data than requested. The the consumer cannot handle this (i.e. DataSetToDataSetFitler) the image will crop itself. This functionality used to be in ImageToStructuredPoints.
int vtkStreamingDemandDrivenPipeline::SetExtentTranslator |
( |
int |
port, |
|
|
vtkExtentTranslator * |
translator |
|
) |
| |
Get/Set the object that will translate pieces into structured extents for an output port.
Get/Set the object that will translate pieces into structured extents for an output port.
Get/Set the object that will translate pieces into structured extents for an output port.
Get/Set the object that will translate pieces into structured extents for an output port.
int vtkStreamingDemandDrivenPipeline::SetWholeBoundingBox |
( |
int |
port, |
|
|
double |
bb[6] |
|
) |
| |
Set/Get the whole bounding box of an output port data object. The whole whole bounding box is meta data for data sets. It gets set by the algorithm during the update information pass.
void vtkStreamingDemandDrivenPipeline::GetWholeBoundingBox |
( |
int |
port, |
|
|
double |
bb[6] |
|
) |
| |
Set/Get the whole bounding box of an output port data object. The whole whole bounding box is meta data for data sets. It gets set by the algorithm during the update information pass.
double* vtkStreamingDemandDrivenPipeline::GetWholeBoundingBox |
( |
int |
port | ) |
|
Set/Get the whole bounding box of an output port data object. The whole whole bounding box is meta data for data sets. It gets set by the algorithm during the update information pass.
int vtkStreamingDemandDrivenPipeline::SetPieceBoundingBox |
( |
int |
port, |
|
|
double |
bb[6] |
|
) |
| |
Set/Get the piece bounding box of an output port data object. The piece bounding box is meta data for data sets. It gets set by the algorithm during the update extent information pass.
void vtkStreamingDemandDrivenPipeline::GetPieceBoundingBox |
( |
int |
port, |
|
|
double |
bb[6] |
|
) |
| |
Set/Get the piece bounding box of an output port data object. The piece bounding box is meta data for data sets. It gets set by the algorithm during the update extent information pass.
double* vtkStreamingDemandDrivenPipeline::GetPieceBoundingBox |
( |
int |
port | ) |
|
Set/Get the piece bounding box of an output port data object. The piece bounding box is meta data for data sets. It gets set by the algorithm during the update extent information pass.
Key defining a request to propagate the update extent upstream.
Key defining a request to propagate information about the update extent downstream.
Key defining to propagate resolution changes up the pipeline.
Key for an algorithm to store in a request to tell this executive to keep executing it.
Key to store an extent translator in pipeline information.
Keys to store an update request in pipeline information.
Keys to store an update request in pipeline information.
Keys to store an update request in pipeline information.
Keys to store an update request in pipeline information.
Keys to store an update request in pipeline information.
Key for combining the update extents requested by all consumers, so that the final extent that is produced satisfies all consumers.
This is set if the extent was set through extent translation. GenerateGhostLevelArray() is called only when this is set.
Key to store the whole extent provided in pipeline information.
This is set if the update extent is not restricted to the whole extent, for sources that can generate an extent of any requested size.
Key to store the maximum number of pieces provided in pipeline information.
Key to store the bounding box of the entire data set in pipeline information.
Key to store the bounding box of a portion of the data set in pipeline information.
Key to specify the request for exact extent in pipeline information.
Key to store available time steps.
Key to store available time range for continuous sources.
Update time steps requested by the pipeline.
Key that specifies from 0.0 to 1.0 the pipeline computed priority of this update extent. 0.0 means does not contribute and can be skipped.
Key that specifies a requested resolution level for this update extent. 0.0 is very low and 1.0 is full resolution.
Used internally to validate meta information as it flows through pipeline
The following keys are meant to be used by an algorithm that works with temporal data. Rather than re-executing the pipeline for each timestep, if the reader, as part of its API, contains a faster way to read temporal data, algorithms may use these keys to request temporal data from the reader. See also: vtkExtractArraysOverTime.
double vtkStreamingDemandDrivenPipeline::ComputePriority |
( |
| ) |
|
|
inline |
Issues pipeline request to determine and return the priority of the piece described by the current update extent. The priority is a number between 0.0 and 1.0 with 0 meaning skippable (REQUEST_DATA not needed) and 1.0 meaning important.
Definition at line 275 of file vtkStreamingDemandDrivenPipeline.h.
virtual double vtkStreamingDemandDrivenPipeline::ComputePriority |
( |
int |
port | ) |
|
|
virtual |
Issues pipeline request to determine and return the priority of the piece described by the current update extent. The priority is a number between 0.0 and 1.0 with 0 meaning skippable (REQUEST_DATA not needed) and 1.0 meaning important.
Called before RequestUpdateExtent() pass on the algorithm. Here we remove all update-related keys from the input information. Currently this only removes the fast-path related keys.
virtual int vtkStreamingDemandDrivenPipeline::NeedToExecuteBasedOnFastPathData |
( |
vtkInformation * |
outInfo | ) |
|
|
protectedvirtual |
virtual void vtkStreamingDemandDrivenPipeline::ResetPipelineInformation |
( |
int |
port, |
|
|
vtkInformation * |
|
|
) |
| |
|
protectedvirtual |
int vtkStreamingDemandDrivenPipeline::ContinueExecuting |
|
protected |
int vtkStreamingDemandDrivenPipeline::LastPropogateUpdateExtentShortCircuited |
|
protected |
The documentation for this class was generated from the following file: