VTK
Functions
Information Keys

The VTK pipeline relies on algorithms providing information about their input and output and responding to requests. The information objects used to perform these actions map known keys to values. This is a list of keys that information objects use and what each key should be used for. More...

Functions

static vtkInformationIntegerKeyvtkAlgorithm::INPUT_IS_OPTIONAL ()
 Keys used to specify input port requirements. More...
 
static vtkInformationIntegerKeyvtkAlgorithm::INPUT_IS_REPEATABLE ()
 
static vtkInformationInformationVectorKeyvtkAlgorithm::INPUT_REQUIRED_FIELDS ()
 
static vtkInformationStringVectorKeyvtkAlgorithm::INPUT_REQUIRED_DATA_TYPE ()
 
static vtkInformationInformationVectorKeyvtkAlgorithm::INPUT_ARRAYS_TO_PROCESS ()
 
static vtkInformationIntegerKeyvtkAlgorithm::INPUT_PORT ()
 
static vtkInformationIntegerKeyvtkAlgorithm::INPUT_CONNECTION ()
 
static vtkInformationIntegerKeyvtkAlgorithm::CAN_PRODUCE_SUB_EXTENT ()
 This key tells the executive that a particular output port is capable of producing an arbitrary subextent of the whole extent. More...
 
static vtkInformationIntegerKeyvtkAlgorithm::CAN_HANDLE_PIECE_REQUEST ()
 Key that tells the pipeline that a particular algorithm can or cannot handle piece request. More...
 
static vtkInformationRequestKeyvtkDemandDrivenPipeline::REQUEST_DATA_OBJECT ()
 Key defining a request to make sure the output data objects exist. More...
 
static vtkInformationRequestKeyvtkDemandDrivenPipeline::REQUEST_INFORMATION ()
 Key defining a request to make sure the output information is up to date. More...
 
static vtkInformationRequestKeyvtkDemandDrivenPipeline::REQUEST_DATA ()
 Key defining a request to make sure the output data are up to date. More...
 
static vtkInformationRequestKeyvtkDemandDrivenPipeline::REQUEST_DATA_NOT_GENERATED ()
 Key defining a request to mark outputs that will NOT be generated during a REQUEST_DATA. More...
 
static vtkInformationIntegerKeyvtkDemandDrivenPipeline::RELEASE_DATA ()
 Key to specify in pipeline information the request that data be released after it is used. More...
 
static vtkInformationIntegerKeyvtkDemandDrivenPipeline::DATA_NOT_GENERATED ()
 Key to store a mark for an output that will not be generated. More...
 
static vtkInformationRequestKeyvtkStreamingDemandDrivenPipeline::REQUEST_UPDATE_EXTENT ()
 Key defining a request to propagate the update extent upstream. More...
 
static vtkInformationRequestKeyvtkStreamingDemandDrivenPipeline::REQUEST_UPDATE_TIME ()
 Key defining a request to propagate the update extent upstream. More...
 
static vtkInformationRequestKeyvtkStreamingDemandDrivenPipeline::REQUEST_TIME_DEPENDENT_INFORMATION ()
 Key defining a request to make sure the meta information is up to date. More...
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::CONTINUE_EXECUTING ()
 Key for an algorithm to store in a request to tell this executive to keep executing it. More...
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::UPDATE_EXTENT_INITIALIZED ()
 Keys to store an update request in pipeline information. More...
 
static vtkInformationIntegerVectorKeyvtkStreamingDemandDrivenPipeline::UPDATE_EXTENT ()
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::UPDATE_PIECE_NUMBER ()
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::UPDATE_NUMBER_OF_PIECES ()
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::UPDATE_NUMBER_OF_GHOST_LEVELS ()
 
static vtkInformationIntegerVectorKeyvtkStreamingDemandDrivenPipeline::COMBINED_UPDATE_EXTENT ()
 Key for combining the update extents requested by all consumers, so that the final extent that is produced satisfies all consumers. More...
 
static vtkInformationIntegerVectorKeyvtkStreamingDemandDrivenPipeline::WHOLE_EXTENT ()
 Key to store the whole extent provided in pipeline information. More...
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::UNRESTRICTED_UPDATE_EXTENT ()
 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. More...
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::EXACT_EXTENT ()
 Key to specify the request for exact extent in pipeline information. More...
 
static vtkInformationDoubleVectorKeyvtkStreamingDemandDrivenPipeline::TIME_STEPS ()
 Key to store available time steps. More...
 
static vtkInformationDoubleVectorKeyvtkStreamingDemandDrivenPipeline::TIME_RANGE ()
 Key to store available time range for continuous sources. More...
 
static vtkInformationDoubleKeyvtkStreamingDemandDrivenPipeline::UPDATE_TIME_STEP ()
 Update time steps requested by the pipeline. More...
 
static vtkInformationIntegerKeyvtkStreamingDemandDrivenPipeline::TIME_DEPENDENT_INFORMATION ()
 Whether there are time dependent meta information if there is, the pipeline will perform two extra passes to gather the time dependent information. More...
 
static vtkInformationDoubleVectorKeyvtkStreamingDemandDrivenPipeline::BOUNDS ()
 key to record the bounds of a dataset. More...
 
static vtkInformationDoubleKeyvtkStreamingDemandDrivenPipeline::PREVIOUS_UPDATE_TIME_STEP ()
 Keep track of the update time request corresponding to the previous executing. More...
 

Detailed Description

The VTK pipeline relies on algorithms providing information about their input and output and responding to requests. The information objects used to perform these actions map known keys to values. This is a list of keys that information objects use and what each key should be used for.

Function Documentation

◆ INPUT_IS_OPTIONAL()

static vtkInformationIntegerKey* vtkAlgorithm::INPUT_IS_OPTIONAL ( )
static

Keys used to specify input port requirements.

◆ INPUT_IS_REPEATABLE()

static vtkInformationIntegerKey* vtkAlgorithm::INPUT_IS_REPEATABLE ( )
static

◆ INPUT_REQUIRED_FIELDS()

static vtkInformationInformationVectorKey* vtkAlgorithm::INPUT_REQUIRED_FIELDS ( )
static

◆ INPUT_REQUIRED_DATA_TYPE()

static vtkInformationStringVectorKey* vtkAlgorithm::INPUT_REQUIRED_DATA_TYPE ( )
static

◆ INPUT_ARRAYS_TO_PROCESS()

static vtkInformationInformationVectorKey* vtkAlgorithm::INPUT_ARRAYS_TO_PROCESS ( )
static

◆ INPUT_PORT()

static vtkInformationIntegerKey* vtkAlgorithm::INPUT_PORT ( )
static

◆ INPUT_CONNECTION()

static vtkInformationIntegerKey* vtkAlgorithm::INPUT_CONNECTION ( )
static

◆ CAN_PRODUCE_SUB_EXTENT()

static vtkInformationIntegerKey* vtkAlgorithm::CAN_PRODUCE_SUB_EXTENT ( )
static

This key tells the executive that a particular output port is capable of producing an arbitrary subextent of the whole extent.

Many image sources and readers fall into this category but some such as the legacy structured data readers cannot support this feature.

◆ CAN_HANDLE_PIECE_REQUEST()

static vtkInformationIntegerKey* vtkAlgorithm::CAN_HANDLE_PIECE_REQUEST ( )
static

Key that tells the pipeline that a particular algorithm can or cannot handle piece request.

If a filter cannot handle piece requests and is asked for a piece, the executive will flag an error. If a structured data source cannot handle piece requests but can produce sub-extents (CAN_PRODUCE_SUB_EXTENT), the executive will use an extent translator to split the extent into pieces. Otherwise, if a source cannot handle piece requests, the executive will ask for the whole data for piece 0 and not execute the source for other pieces.

◆ REQUEST_DATA_OBJECT()

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_DATA_OBJECT ( )
static

Key defining a request to make sure the output data objects exist.

◆ REQUEST_INFORMATION()

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_INFORMATION ( )
static

Key defining a request to make sure the output information is up to date.

◆ REQUEST_DATA()

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_DATA ( )
static

Key defining a request to make sure the output data are up to date.

◆ REQUEST_DATA_NOT_GENERATED()

static vtkInformationRequestKey* vtkDemandDrivenPipeline::REQUEST_DATA_NOT_GENERATED ( )
static

Key defining a request to mark outputs that will NOT be generated during a REQUEST_DATA.

◆ RELEASE_DATA()

static vtkInformationIntegerKey* vtkDemandDrivenPipeline::RELEASE_DATA ( )
static

Key to specify in pipeline information the request that data be released after it is used.

◆ DATA_NOT_GENERATED()

static vtkInformationIntegerKey* vtkDemandDrivenPipeline::DATA_NOT_GENERATED ( )
static

Key to store a mark for an output that will not be generated.

Algorithms use this to tell the executive that they will not generate certain outputs for a REQUEST_DATA.

◆ REQUEST_UPDATE_EXTENT()

static vtkInformationRequestKey* vtkStreamingDemandDrivenPipeline::REQUEST_UPDATE_EXTENT ( )
static

Key defining a request to propagate the update extent upstream.

◆ REQUEST_UPDATE_TIME()

static vtkInformationRequestKey* vtkStreamingDemandDrivenPipeline::REQUEST_UPDATE_TIME ( )
static

Key defining a request to propagate the update extent upstream.

◆ REQUEST_TIME_DEPENDENT_INFORMATION()

static vtkInformationRequestKey* vtkStreamingDemandDrivenPipeline::REQUEST_TIME_DEPENDENT_INFORMATION ( )
static

Key defining a request to make sure the meta information is up to date.

◆ CONTINUE_EXECUTING()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::CONTINUE_EXECUTING ( )
static

Key for an algorithm to store in a request to tell this executive to keep executing it.

◆ UPDATE_EXTENT_INITIALIZED()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::UPDATE_EXTENT_INITIALIZED ( )
static

Keys to store an update request in pipeline information.

◆ UPDATE_EXTENT()

static vtkInformationIntegerVectorKey* vtkStreamingDemandDrivenPipeline::UPDATE_EXTENT ( )
static

◆ UPDATE_PIECE_NUMBER()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::UPDATE_PIECE_NUMBER ( )
static

◆ UPDATE_NUMBER_OF_PIECES()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::UPDATE_NUMBER_OF_PIECES ( )
static

◆ UPDATE_NUMBER_OF_GHOST_LEVELS()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::UPDATE_NUMBER_OF_GHOST_LEVELS ( )
static

◆ COMBINED_UPDATE_EXTENT()

static vtkInformationIntegerVectorKey* vtkStreamingDemandDrivenPipeline::COMBINED_UPDATE_EXTENT ( )
static

Key for combining the update extents requested by all consumers, so that the final extent that is produced satisfies all consumers.

◆ WHOLE_EXTENT()

static vtkInformationIntegerVectorKey* vtkStreamingDemandDrivenPipeline::WHOLE_EXTENT ( )
static

Key to store the whole extent provided in pipeline information.

◆ UNRESTRICTED_UPDATE_EXTENT()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::UNRESTRICTED_UPDATE_EXTENT ( )
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.

◆ EXACT_EXTENT()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::EXACT_EXTENT ( )
static

Key to specify the request for exact extent in pipeline information.

◆ TIME_STEPS()

static vtkInformationDoubleVectorKey* vtkStreamingDemandDrivenPipeline::TIME_STEPS ( )
static

Key to store available time steps.

◆ TIME_RANGE()

static vtkInformationDoubleVectorKey* vtkStreamingDemandDrivenPipeline::TIME_RANGE ( )
static

Key to store available time range for continuous sources.

◆ UPDATE_TIME_STEP()

static vtkInformationDoubleKey* vtkStreamingDemandDrivenPipeline::UPDATE_TIME_STEP ( )
static

Update time steps requested by the pipeline.

◆ TIME_DEPENDENT_INFORMATION()

static vtkInformationIntegerKey* vtkStreamingDemandDrivenPipeline::TIME_DEPENDENT_INFORMATION ( )
static

Whether there are time dependent meta information if there is, the pipeline will perform two extra passes to gather the time dependent information.

◆ BOUNDS()

static vtkInformationDoubleVectorKey* vtkStreamingDemandDrivenPipeline::BOUNDS ( )
static

key to record the bounds of a dataset.

◆ PREVIOUS_UPDATE_TIME_STEP()

static vtkInformationDoubleKey* vtkStreamingDemandDrivenPipeline::PREVIOUS_UPDATE_TIME_STEP ( )
staticprotected

Keep track of the update time request corresponding to the previous executing.

If the previous update request did not correspond to an existing time step and the reader chose a time step with it's own logic, the data time step will be different than the request. If the same time step is requested again, there is no need to re-execute the algorithm. We know that it does not have this time step.