Go to the documentation of this file.
40 #ifndef vtkAlgorithm_h
41 #define vtkAlgorithm_h
47 class vtkAlgorithmInternals;
137 int requestFromOutputPort,
138 unsigned long* mtime);
258 int fieldAssociation,
261 int fieldAssociation,
262 int fieldAttributeType);
282 const char* fieldAssociation,
283 const char* attributeTypeorName);
355 { this->SetInputDataObject(0,
data); }
364 { this->AddInputDataObject(0,
data); }
374 return this->GetOutputPort(0); }
397 return this->GetInputAlgorithm(0, 0);
408 return this->GetInputExecutive(0, 0);
424 return this->GetInputInformation(0, 0);
500 int piece,
int numPieces,
int ghostLevel);
508 this->SetUpdateExtent(0, piece, numPieces, ghostLevel);
519 this->SetUpdateExtent(0,
extent);
528 return this->GetUpdateExtent(0);
534 this->GetUpdateExtent(0, x0, x1, y0, y1, z0, z1);
537 int& x0,
int& x1,
int& y0,
int& y1,
541 this->GetUpdateExtent(0,
extent);
551 return this->GetUpdatePiece(0);
556 return this->GetUpdateNumberOfPieces(0);
561 return this->GetUpdateGhostLevel(0);
744 { this->SetInputDataObject(
port,
input); }
746 { this->AddInputDataObject(
port,
input); }
755 vtkAlgorithmInternals* AlgorithmInternal;
756 static void ConnectionAdd(
vtkAlgorithm* producer,
int producerPort,
758 static void ConnectionRemove(
vtkAlgorithm* producer,
int producerPort,
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, int connection, vtkInformationVector **inputVector)
int InputPortIndexInRange(int index, const char *action)
virtual vtkExecutive * CreateDefaultExecutive()
virtual void SetReleaseDataFlag(int)
virtual void Register(vtkObjectBase *o)
void SetProgressText(const char *ptext)
virtual void AddInputDataObject(int port, vtkDataObject *data)
int GetTotalNumberOfInputConnections()
virtual void SetNumberOfInputConnections(int port, int n)
int GetInputArrayAssociation(int idx, vtkDataObject *input)
vtkInformation * Information
GLsizei GLsizei GLenum GLenum const GLvoid * data
#define vtkGetObjectMacro(name, type)
void GetUpdateExtent(int extent[6])
static vtkInformationIntegerKey * CAN_PRODUCE_SUB_EXTENT()
void SetUpdateExtent(int port, int piece, int numPieces, int ghostLevel)
static vtkInformationIntegerKey * PORT_REQUIREMENTS_FILLED()
#define VTKCOMMONEXECUTIONMODEL_EXPORT
void SetUpdateExtent(int extent[6])
static vtkInformationIntegerKey * INPUT_IS_OPTIONAL()
virtual void RemoveInputConnection(int port, int idx)
virtual void RemoveInputConnection(int port, vtkAlgorithmOutput *input)
int GetNumberOfInputPorts()
int OutputPortIndexInRange(int index, const char *action)
vtkAlgorithmOutput * GetOutputPort()
void UpdateProgress(double amount)
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)
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkDataObject *input, int &association)
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, int connection, vtkInformationVector **inputVector, int &association)
vtkInformation * GetInputPortInformation(int port)
virtual int ModifyRequest(vtkInformation *request, int when)
void SetProgressObserver(vtkProgressObserver *)
int GetInputArrayAssociation(int idx, vtkInformationVector **inputVector)
int GetUpdateGhostLevel()
int GetNumberOfOutputPorts()
vtkDataArray * GetInputArrayToProcess(int idx, vtkInformationVector **inputVector)
void SetUpdateExtent(int piece, int numPieces, int ghostLevel)
#define vtkTypeMacro(thisClass, superclass)
virtual void PropagateUpdateExtent()
abstract base class for most VTK objects
virtual void SetExecutive(vtkExecutive *executive)
void SetInputDataInternal(int port, vtkDataObject *input)
vtkInformation * GetInputArrayFieldInformation(int idx, vtkInformationVector **inputVector)
abstract superclass for arrays of numeric data
vtkDataArray * GetInputArrayToProcess(int idx, int connection, vtkInformationVector **inputVector)
virtual void SetNumberOfInputPorts(int n)
GLenum GLenum GLenum input
virtual void UnRegister(vtkObjectBase *o)
vtkExecutive * GetInputExecutive(int port, int index)
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkInformationVector **inputVector)
int GetUpdatePiece(int port)
vtkExecutive * GetExecutive()
int UpdateExtentIsEmpty(vtkInformation *pinfo, int extentType)
virtual void SetInputArrayToProcess(int idx, int port, int connection, const char *fieldAssociation, const char *attributeTypeorName)
void ReleaseDataFlagOff()
void GetUpdateExtent(int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
vtkDataObject * GetOutputDataObject(int port)
vtkProgressObserver * ProgressObserver
vtkInformation * GetInputInformation(int port, int index)
void SetUpdateExtent(int port, int extent[6])
vtkDataArray * GetInputArrayToProcess(int idx, int connection, vtkInformationVector **inputVector, int &association)
int UpdateExtentIsEmpty(vtkInformation *pinfo, vtkDataObject *output)
#define vtkSetClampMacro(name, type, min, max)
void PrintSelf(ostream &os, vtkIndent indent)
GLuint const GLchar * name
virtual void AddInputConnection(int port, vtkAlgorithmOutput *input)
Superclass for all pipeline executives in VTK.
create and manipulate unsorted lists of objects
virtual int GetReleaseDataFlag()
virtual void RemoveAllInputConnections(int port)
void ConvertTotalInputToPortConnection(int ind, int &port, int &conn)
vtkAlgorithmOutput * GetInputConnection(int port, int index)
int GetUpdateNumberOfPieces()
abstract base class for most VTK objects
void GetUpdateExtent(int port, int extent[6])
vtkAlgorithm * GetInputAlgorithm(int port, int index, int &algPort)
vtkDataObject * GetInputDataObject(int port, int connection)
vtkAlgorithmOutput * GetOutputPort(int index)
a simple class to control print indentation
vtkDataArray * GetInputArrayToProcess(int idx, vtkInformationVector **inputVector, int &association)
vtkInformation * GetOutputPortInformation(int port)
#define vtkGetMacro(name, type)
virtual void AddInputConnection(vtkAlgorithmOutput *input)
vtkGetStringMacro(ExtensionsString)
int SetUpdateExtentToWholeExtent(int port)
Detect and break reference loops.
int SetUpdateExtentToWholeExtent()
virtual void SetInputArrayToProcess(int idx, vtkInformation *info)
Abstract superclass for all arrays.
vtkDataArray * GetInputArrayToProcess(int idx, vtkDataObject *input, int &association)
vtkBooleanMacro(IgnoreDriverBugs, bool)
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
virtual void SetInputArrayToProcess(int idx, int port, int connection, int fieldAssociation, int fieldAttributeType)
vtkSetMacro(IgnoreDriverBugs, bool)
static vtkAlgorithm * New()
virtual int ProcessRequest(vtkInformation *request, vtkInformationVector **inInfo, vtkInformationVector *outInfo)
vtkInformation * GetInputInformation()
vtkDataArray * GetInputArrayToProcess(int idx, vtkDataObject *input)
vtkAlgorithm * GetInputAlgorithm()
virtual void UpdateInformation()
int * GetUpdateExtent(int port)
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkInformationVector **inputVector, int &association)
Proxy object to connect input/output ports.
vtkExecutive * GetInputExecutive()
vtkInformation * GetInputArrayInformation(int idx)
virtual void UpdateWholeExtent()
int GetUpdateNumberOfPieces(int port)
vtkAlgorithm * GetInputAlgorithm(int port, int index)
static void SetDefaultExecutivePrototype(vtkExecutive *proto)
void GetUpdateExtent(int port, int &x0, int &x1, int &y0, int &y1, int &z0, int &z1)
virtual void SetNthInputConnection(int port, int index, vtkAlgorithmOutput *input)
virtual void UpdateDataObject()
virtual int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, unsigned long *mtime)
virtual void SetInformation(vtkInformation *)
virtual void SetNumberOfOutputPorts(int n)
Basic class to optionally replace vtkAlgorithm progress functionality.
int GetNumberOfInputConnections(int port)
virtual void ReportReferences(vtkGarbageCollector *)
general representation of visualization data
static vtkExecutive * DefaultExecutivePrototype
virtual void SetInputArrayToProcess(int idx, int port, int connection, int fieldAssociation, const char *name)
int ProcessRequest(vtkInformation *request, vtkCollection *inInfo, vtkInformationVector *outInfo)
virtual int FillOutputPortInformation(int port, vtkInformation *info)
virtual void SetInputConnection(vtkAlgorithmOutput *input)
int GetInputArrayAssociation(int idx, int connection, vtkInformationVector **inputVector)
void AddInputDataInternal(int port, vtkDataObject *input)
virtual void SetInputDataObject(int port, vtkDataObject *data)
vtkInformation * GetOutputInformation(int port)
int GetUpdateGhostLevel(int port)
vtkAbstractArray * GetInputAbstractArrayToProcess(int idx, vtkDataObject *input)