VTK
|
Executive supporting partial updates. More...
#include <vtkStreamingDemandDrivenPipeline.h>
Public Types | |
typedef vtkDemandDrivenPipeline | Superclass |
![]() | |
typedef vtkExecutive | Superclass |
![]() | |
typedef vtkObject | Superclass |
enum | { RequestUpstream, RequestDownstream } |
enum | { BeforeForward, AfterForward } |
![]() | |
typedef vtkObjectBase | Superclass |
Public Member Functions | |
virtual int | IsA (const char *type) |
vtkStreamingDemandDrivenPipeline * | NewInstance () const |
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 | PropagateTime (int outputPort) |
int | UpdateTimeDependentInformation (int outputPort) |
int | SetRequestExactExtent (int port, int flag) |
int | GetRequestExactExtent (int port) |
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) |
![]() | |
vtkDemandDrivenPipeline * | NewInstance () const |
virtual int | SetReleaseDataFlag (int port, int n) |
virtual int | GetReleaseDataFlag (int port) |
virtual int | UpdatePipelineMTime () |
virtual int | UpdateDataObject () |
virtual int | UpdateInformation () |
virtual int | UpdateData (int outputPort) |
virtual int | ComputePipelineMTime (vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime) |
virtual unsigned long | GetPipelineMTime () |
![]() | |
vtkExecutive * | NewInstance () const |
vtkAlgorithm * | GetAlgorithm () |
int | GetNumberOfInputConnections (int port) |
virtual vtkInformation * | GetOutputInformation (int port) |
vtkInformationVector * | GetOutputInformation () |
vtkInformation * | GetInputInformation (int port, int connection) |
vtkInformationVector * | GetInputInformation (int port) |
vtkInformationVector ** | GetInputInformation () |
vtkExecutive * | GetInputExecutive (int port, int connection) |
int | GetNumberOfInputPorts () |
int | GetNumberOfOutputPorts () |
virtual vtkDataObject * | GetOutputData (int port) |
virtual void | SetOutputData (int port, vtkDataObject *, vtkInformation *info) |
virtual void | SetOutputData (int port, vtkDataObject *) |
virtual vtkDataObject * | GetInputData (int port, int connection) |
virtual vtkDataObject * | GetInputData (int port, int connection, vtkInformationVector **inInfoVec) |
void | SetSharedInputInformation (vtkInformationVector **inInfoVec) |
void | SetSharedOutputInformation (vtkInformationVector *outInfoVec) |
virtual void | Register (vtkObjectBase *o) |
virtual void | UnRegister (vtkObjectBase *o) |
virtual int | CallAlgorithm (vtkInformation *request, int direction, vtkInformationVector **inInfo, vtkInformationVector *outInfo) |
![]() | |
vtkObject * | NewInstance () const |
virtual void | DebugOn () |
virtual void | DebugOff () |
unsigned char | GetDebug () |
void | SetDebug (unsigned char debugFlag) |
virtual void | Modified () |
virtual unsigned long | GetMTime () |
unsigned long | AddObserver (unsigned long event, vtkCommand *, float priority=0.0f) |
unsigned long | AddObserver (const char *event, vtkCommand *, float priority=0.0f) |
vtkCommand * | GetCommand (unsigned long tag) |
void | RemoveObserver (vtkCommand *) |
void | RemoveObservers (unsigned long event, vtkCommand *) |
void | RemoveObservers (const char *event, vtkCommand *) |
int | HasObserver (unsigned long event, vtkCommand *) |
int | HasObserver (const char *event, vtkCommand *) |
void | RemoveObserver (unsigned long tag) |
void | RemoveObservers (unsigned long event) |
void | RemoveObservers (const char *event) |
void | RemoveAllObservers () |
int | HasObserver (unsigned long event) |
int | HasObserver (const char *event) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, void(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
template<class U , class T > | |
unsigned long | AddObserver (unsigned long event, U observer, bool(T::*callback)(vtkObject *, unsigned long, void *), float priority=0.0f) |
int | InvokeEvent (unsigned long event, void *callData) |
int | InvokeEvent (const char *event, void *callData) |
int | InvokeEvent (unsigned long event) |
int | InvokeEvent (const char *event) |
![]() | |
const char * | GetClassName () const |
virtual void | Delete () |
virtual void | FastDelete () |
void | Print (ostream &os) |
void | SetReferenceCount (int) |
void | PrintRevisions (ostream &) |
virtual void | PrintHeader (ostream &os, vtkIndent indent) |
virtual void | PrintTrailer (ostream &os, vtkIndent indent) |
int | GetReferenceCount () |
Static Protected Member Functions | |
static vtkInformationDoubleKey * | PREVIOUS_UPDATE_TIME_STEP () |
static vtkInformationIdTypeKey * | PREVIOUS_FAST_PATH_OBJECT_ID () |
static vtkInformationStringKey * | PREVIOUS_FAST_PATH_OBJECT_TYPE () |
static vtkInformationStringKey * | PREVIOUS_FAST_PATH_ID_TYPE () |
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.
Definition at line 51 of file vtkStreamingDemandDrivenPipeline.h.
Definition at line 55 of file vtkStreamingDemandDrivenPipeline.h.
|
protected |
|
protected |
|
static |
|
static |
|
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 vtkDemandDrivenPipeline.
Reimplemented in vtkCompositeDataPipeline, vtkThreadedStreamingPipeline, and vtkCachedStreamingDemandDrivenPipeline.
|
static |
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCompositeDataPipeline, vtkThreadedStreamingPipeline, and vtkCachedStreamingDemandDrivenPipeline.
vtkStreamingDemandDrivenPipeline* vtkStreamingDemandDrivenPipeline::NewInstance | ( | ) | const |
|
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 vtkDemandDrivenPipeline.
Reimplemented in vtkThreadedStreamingPipeline.
|
virtual |
Generalized interface for asking the executive to fulfill update requests.
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkThreadedStreamingPipeline.
|
virtual |
Bring the outputs up-to-date.
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCachedStreamingDemandDrivenPipeline.
|
virtual |
Bring the outputs up-to-date.
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCachedStreamingDemandDrivenPipeline.
|
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::PropagateTime | ( | int | outputPort | ) |
Propagate time through the pipeline. this is a special pass only necessary if there is temporal meta data that must be updated
int vtkStreamingDemandDrivenPipeline::UpdateTimeDependentInformation | ( | int | outputPort | ) |
Propagate time through the pipeline. this is a special pass only necessary if there is temporal meta data that must be updated
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.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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)
|
static |
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 | ( | int | port, |
int | x0, | ||
int | x1, | ||
int | y0, | ||
int | y1, | ||
int | z0, | ||
int | z1 | ||
) |
Get/Set the update extent for output ports that use 3D extents.
|
static |
Get/Set the update extent for output ports that use 3D extents.
|
static |
Get/Set the update extent for output ports that use 3D extents.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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.
|
static |
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::SetUpdateTimeStep | ( | int | port, |
double | time | ||
) |
Get/Set the update extent for output ports that use Temporal Extents
|
static |
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.
|
static |
Get/Set the object that will translate pieces into structured extents for an output port.
vtkExtentTranslator* vtkStreamingDemandDrivenPipeline::GetExtentTranslator | ( | int | port | ) |
Get/Set the object that will translate pieces into structured extents for an output port.
|
static |
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.
|
static |
Key defining a request to propagate the update extent upstream.
|
static |
|
static |
Key defining a request to make sure the meta information is up to date.
|
static |
Key defining a request to propagate information about the update extent downstream.
|
static |
Key defining a request to propagate information about the update extent downstream.
|
static |
Key defining to propagate resolution changes up the pipeline.
|
static |
Key for an algorithm to store in a request to tell this executive to keep executing it.
|
static |
Key to store an extent translator in pipeline information.
|
static |
Keys to store an update request in pipeline information.
|
static |
Keys to store an update request in pipeline information.
|
static |
Keys to store an update request in pipeline information.
|
static |
Keys to store an update request in pipeline information.
|
static |
Keys to store an update request in pipeline information.
|
static |
Key to store an update in the AMR level of resolution.
|
static |
Key for combining the update extents requested by all consumers, so that the final extent that is produced satisfies all consumers.
|
static |
This is set if the extent was set through extent translation. GenerateGhostLevelArray() is called only when this is set.
|
static |
Key to store the whole extent provided in pipeline information.
|
static |
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.
|
static |
Key to store the maximum number of pieces provided in pipeline information.
|
static |
Key to store the bounding box of the entire data set in pipeline information.
|
static |
Key to store the bounding box of a portion of the data set in pipeline information.
|
static |
Key used to reject unimportant pieces in streaming.
|
static |
Key to specify the request for exact extent in pipeline information.
|
static |
Key to store available time steps.
|
static |
Key to store available time range for continuous sources.
|
static |
Key to store the label that should be used for labelling the time in the UI
|
static |
Update time steps requested by the pipeline.
|
static |
Whether there are time dependent meta information if there is, the pipe will perform two extra passes to gather the time dependent information
|
static |
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.
|
static |
Key that specifies how many cells were in the piece at the head of the pipeline, so that work estimates can be made.
|
static |
Key that specifies a requested resolution level for this update extent. 0.0 is very low and 1.0 is full resolution.
|
static |
Used internally to validate meta information as it flows through pipeline
|
static |
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.
|
static |
|
static |
|
static |
|
static |
key to record the bounds of a dataset.
|
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 320 of file vtkStreamingDemandDrivenPipeline.h.
|
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.
|
protectedvirtual |
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.
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
protectedvirtual |
|
protectedvirtual |
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
|
protectedvirtual |
Reimplemented from vtkExecutive.
Reimplemented in vtkCompositeDataPipeline.
|
protectedvirtual |
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCompositeDataPipeline, and vtkCachedStreamingDemandDrivenPipeline.
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCompositeDataPipeline.
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCompositeDataPipeline.
|
protectedvirtual |
Reimplemented from vtkDemandDrivenPipeline.
Reimplemented in vtkCompositeDataPipeline.
|
protected |
Definition at line 405 of file vtkStreamingDemandDrivenPipeline.h.
|
protected |
Definition at line 407 of file vtkStreamingDemandDrivenPipeline.h.
|
protected |
Definition at line 410 of file vtkStreamingDemandDrivenPipeline.h.