 |
VTK
9.1.0
|
Go to the documentation of this file.
100 #ifndef vtkAlgorithm_h
101 #define vtkAlgorithm_h
103 #include "vtkCommonExecutionModelModule.h"
108 class vtkAlgorithmInternals;
281 vtkGetMacro(Progress,
double);
289 void SetProgress(
double);
296 void UpdateProgress(
double amount);
311 void SetProgressShiftScale(
double shift,
double scale);
312 vtkGetMacro(ProgressShift,
double);
313 vtkGetMacro(ProgressScale,
double);
324 void SetProgressText(const
char* ptext);
325 vtkGetStringMacro(ProgressText);
333 vtkGetMacro(ErrorCode,
unsigned long);
402 virtual
void SetInputArrayToProcess(
403 int idx,
int port,
int connection,
int fieldAssociation, const
char*
name);
404 virtual
void SetInputArrayToProcess(
405 int idx,
int port,
int connection,
int fieldAssociation,
int fieldAttributeType);
432 virtual
void SetInputArrayToProcess(
int idx,
int port,
int connection,
433 const
char* fieldAssociation, const
char* attributeTypeorName);
445 void RemoveAllInputs();
505 virtual
void RemoveInputConnection(
int port,
int idx);
510 virtual
void RemoveAllInputConnections(
int port);
652 int piece,
int numPieces,
int ghostLevels,
const int extents[6] =
nullptr);
668 const int extents[6] =
nullptr);
741 this->GetUpdateExtent(0, x0, x1, y0, y1, z0, z1);
909 vtkSetMacro(ErrorCode,
unsigned long);
948 this->SetInputDataObject(
port, input);
952 this->AddInputDataObject(
port, input);
961 vtkAlgorithmInternals* AlgorithmInternal;
962 static void ConnectionAdd(
964 static void ConnectionRemove(
973 double ProgressShift;
974 double ProgressScale;
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, int connection, vtkInformationVector **inputVector)
Filters that have multiple connections on one port can use this signature.
int InputPortIndexInRange(int index, const char *action)
virtual vtkExecutive * CreateDefaultExecutive()
Create a default executive.
virtual void SetReleaseDataFlag(int)
Turn release data flag on or off for all output ports.
virtual void AddInputDataObject(int port, vtkDataObject *data)
Add the data-object as an input to this given port.
int GetTotalNumberOfInputConnections()
Get the total number of inputs for this algorithm.
virtual void SetNumberOfInputConnections(int port, int n)
Set the number of input connections on the given input port.
int GetInputArrayAssociation(int idx, vtkDataObject *input)
Filters that have multiple connections on one port can use this signature.
vtkInformation * Information
void ReleaseDataFlagOn()
Turn release data flag on or off for all output ports.
virtual void Update(int port)
Bring this algorithm's outputs up-to-date.
void GetUpdateExtent(int extent[6])
These functions return the update extent for output ports that use 3D extents.
virtual int UpdateTimeStep(double time, int piece=-1, int numPieces=1, int ghostLevels=0, const int extents[6]=nullptr)
Convenience method to update an algorithm after passing requests to its first output port.
static vtkInformationIntegerKey * PORT_REQUIREMENTS_FILLED()
void UnRegister(vtkObjectBase *o) override
Participate in garbage collection.
int GetNumberOfInputPorts()
Get the number of input ports used by the algorithm.
int OutputPortIndexInRange(int index, const char *action)
vtkAlgorithmOutput * GetOutputPort()
virtual void AddInputDataObject(vtkDataObject *data)
Superclass for all sources, filters, and sinks in VTK.
virtual void SetInputDataObject(vtkDataObject *data)
virtual int FillInputPortInformation(int port, vtkInformation *info)
Fill the input port information objects for this algorithm.
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkDataObject *input, int &association)
Filters that have multiple connections on one port can use this signature.
int HasExecutive()
Check whether this algorithm has an assigned executive.
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, int connection, vtkInformationVector **inputVector, int &association)
Filters that have multiple connections on one port can use this signature.
vtkInformation * GetInputPortInformation(int port)
Get the information object associated with an input port.
virtual int ModifyRequest(vtkInformation *request, int when)
This method gives the algorithm a chance to modify the contents of a request before or after (specifi...
void SetProgressObserver(vtkProgressObserver *)
If an ProgressObserver is set, the algorithm will report progress through it rather than directly.
int GetInputArrayAssociation(int idx, vtkInformationVector **inputVector)
Get the assocition of the actual data array for the input array specified by idx, this is only reason...
int GetUpdateGhostLevel()
These functions return the update extent for output ports that use piece extents.
int GetNumberOfOutputPorts()
Get the number of output ports provided by the algorithm.
vtkDataArray * GetInputArrayToProcess(int idx, vtkInformationVector **inputVector)
Get the actual data array for the input array specified by idx, this is only reasonable during the RE...
unsigned long ErrorCode
The error code contains a possible error that occurred while reading or writing the file.
virtual void PropagateUpdateExtent()
Propagate meta-data upstream.
abstract base class for most VTK objects
int GetUpdatePiece()
These functions return the update extent for output ports that use piece extents.
virtual void SetExecutive(vtkExecutive *executive)
Set this algorithm's executive.
void SetInputDataInternal(int port, vtkDataObject *input)
These methods are used by subclasses to implement methods to set data objects directly as input.
vtkInformation * GetInputArrayFieldInformation(int idx, vtkInformationVector **inputVector)
This method takes in an index (as specified in SetInputArrayToProcess) and a pipeline information vec...
abstract superclass for arrays of numeric data
vtkDataArray * GetInputArrayToProcess(int idx, int connection, vtkInformationVector **inputVector)
Filters that have multiple connections on one port can use this signature.
virtual void SetNumberOfInputPorts(int n)
Set the number of input ports used by the algorithm.
vtkExecutive * GetInputExecutive(int port, int index)
Returns the executive associated with a particular input connection.
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkInformationVector **inputVector)
Get the actual data array for the input array specified by idx, this is only reasonable during the RE...
int GetUpdatePiece(int port)
These functions return the update extent for output ports that use piece extents.
vtkExecutive * GetExecutive()
Get this algorithm's executive.
int UpdateExtentIsEmpty(vtkInformation *pinfo, int extentType)
This detects when the UpdateExtent will generate no data This condition is satisfied when the UpdateE...
void ReleaseDataFlagOff()
Turn release data flag on or off for all output ports.
void GetUpdateExtent(int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
These functions return the update extent for output ports that use 3D extents.
vtkProgressObserver * ProgressObserver
void Register(vtkObjectBase *o) override
Participate in garbage collection.
vtkInformation * GetInputInformation(int port, int index)
Return the information object that is associated with a particular input connection.
vtkDataArray * GetInputArrayToProcess(int idx, int connection, vtkInformationVector **inputVector, int &association)
Filters that have multiple connections on one port can use this signature.
int UpdateExtentIsEmpty(vtkInformation *pinfo, vtkDataObject *output)
This detects when the UpdateExtent will generate no data This condition is satisfied when the UpdateE...
Superclass for all pipeline executives in VTK.
create and manipulate ordered lists of objects
virtual int GetReleaseDataFlag()
Turn release data flag on or off for all output ports.
void ConvertTotalInputToPortConnection(int ind, int &port, int &conn)
Convenience routine to convert from a linear ordering of input connections to a port/connection pair.
#define VTK_SIZEHINT(...)
vtkAlgorithmOutput * GetInputConnection(int port, int index)
Get the algorithm output port connected to an input port.
int GetUpdateNumberOfPieces()
These functions return the update extent for output ports that use piece extents.
abstract base class for most VTK objects
void GetUpdateExtent(int port, int extent[6])
These functions return the update extent for output ports that use 3D extents.
vtkAlgorithm * GetInputAlgorithm(int port, int index, int &algPort)
Returns the algorithm and the output port index of that algorithm connected to a port-index pair.
virtual void Update()
Bring this algorithm's outputs up-to-date.
vtkAlgorithmOutput * GetOutputPort(int index)
Get a proxy object corresponding to the given output port of this algorithm.
a simple class to control print indentation
#define VTK_DEPRECATED_IN_9_0_0(reason)
virtual int UpdateExtent(const int extents[6])
Convenience method to update an algorithm after passing requests to its first output port.
vtkDataArray * GetInputArrayToProcess(int idx, vtkInformationVector **inputVector, int &association)
Get the actual data array for the input array specified by idx, this is only reasonable during the RE...
int * GetUpdateExtent()
These functions return the update extent for output ports that use 3D extents.
vtkInformation * GetOutputPortInformation(int port)
Get the information object associated with an output port.
vtkTypeBool ProcessRequest(vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
Version of ProcessRequest() that is wrapped.
Detect and break reference loops.
Abstract superclass for all arrays.
vtkDataArray * GetInputArrayToProcess(int idx, vtkDataObject *input, int &association)
Filters that have multiple connections on one port can use this signature.
static vtkAlgorithm * New()
void ReportReferences(vtkGarbageCollector *) override
vtkInformation * GetInputInformation()
Equivalent to GetInputInformation(0, 0)
vtkDataArray * GetInputArrayToProcess(int idx, vtkDataObject *input)
Filters that have multiple connections on one port can use this signature.
vtkAlgorithm * GetInputAlgorithm()
Equivalent to GetInputAlgorithm(0, 0).
virtual vtkTypeBool Update(int port, vtkInformationVector *requests)
This method enables the passing of data requests to the algorithm to be used during execution (in add...
virtual void UpdateInformation()
Bring the algorithm's information up-to-date.
int * GetUpdateExtent(int port)
These functions return the update extent for output ports that use 3D extents.
virtual int UpdatePiece(int piece, int numPieces, int ghostLevels, const int extents[6]=nullptr)
Convenience method to update an algorithm after passing requests to its first output port.
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkInformationVector **inputVector, int &association)
Get the actual data array for the input array specified by idx, this is only reasonable during the RE...
Proxy object to connect input/output ports.
vtkExecutive * GetInputExecutive()
Equivalent to GetInputExecutive(0, 0)
virtual void UpdateWholeExtent()
Bring this algorithm's outputs up-to-date.
int GetUpdateNumberOfPieces(int port)
These functions return the update extent for output ports that use piece extents.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkAlgorithm * GetInputAlgorithm(int port, int index)
Returns the algorithm connected to a port-index pair.
static void SetDefaultExecutivePrototype(vtkExecutive *proto)
If the DefaultExecutivePrototype is set, a copy of it is created in CreateDefaultExecutive() using Ne...
void GetUpdateExtent(int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
These functions return the update extent for output ports that use 3D extents.
virtual int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime)
A special version of ProcessRequest meant specifically for the pipeline modified time request.
virtual void SetNthInputConnection(int port, int index, vtkAlgorithmOutput *input)
Replace the Nth connection on the given input port.
virtual void UpdateDataObject()
Create output object(s).
virtual void SetInformation(vtkInformation *)
Set/Get the information object associated with this algorithm.
virtual void SetNumberOfOutputPorts(int n)
Set the number of output ports provided by the algorithm.
Basic class to optionally replace vtkAlgorithm progress functionality.
virtual vtkTypeBool Update(vtkInformation *requests)
Convenience method to update an algorithm after passing requests to its first output port.
int GetNumberOfInputConnections(int port)
Get the number of inputs currently connected to a port.
general representation of visualization data
static vtkExecutive * DefaultExecutivePrototype
virtual vtkTypeBool ProcessRequest(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
Upstream/Downstream requests form the generalized interface through which executives invoke a algorit...
virtual int FillOutputPortInformation(int port, vtkInformation *info)
Fill the output port information objects for this algorithm.
int GetInputArrayAssociation(int idx, int connection, vtkInformationVector **inputVector)
Filters that have multiple connections on one port can use this signature.
void AddInputDataInternal(int port, vtkDataObject *input)
DesiredOutputPrecision
Values used for setting the desired output precision for various algorithms.
vtkTypeUInt32 vtkMTimeType
vtkInformation * GetOutputInformation(int port)
Return the information object that is associated with a particular output port.
int GetUpdateGhostLevel(int port)
These functions return the update extent for output ports that use piece extents.
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkDataObject *input)
Filters that have multiple connections on one port can use this signature.