41 #ifndef vtkAlgorithm_h 42 #define vtkAlgorithm_h 44 #include "vtkCommonExecutionModelModule.h" 48 class vtkAlgorithmInternals;
192 int GetNumberOfInputPorts();
197 int GetNumberOfOutputPorts();
221 vtkGetMacro(Progress,
double);
228 VTK_LEGACY(
void SetProgress(
double));
235 void UpdateProgress(
double amount);
250 void SetProgressShiftScale(
double shift,
double scale);
251 vtkGetMacro(ProgressShift,
double);
252 vtkGetMacro(ProgressScale,
double);
263 void SetProgressText(
const char* ptext);
264 vtkGetStringMacro(ProgressText);
272 vtkGetMacro(ErrorCode,
unsigned long);
341 virtual void SetInputArrayToProcess(
342 int idx,
int port,
int connection,
int fieldAssociation,
const char*
name);
343 virtual void SetInputArrayToProcess(
344 int idx,
int port,
int connection,
int fieldAssociation,
int fieldAttributeType);
371 virtual void SetInputArrayToProcess(
int idx,
int port,
int connection,
372 const char* fieldAssociation,
const char* attributeTypeorName);
384 void RemoveAllInputs();
444 virtual void RemoveInputConnection(
int port,
int idx);
449 virtual void RemoveAllInputConnections(
int port);
482 int GetNumberOfInputConnections(
int port);
487 int GetTotalNumberOfInputConnections();
549 virtual void Update(
int port);
550 virtual void Update();
590 virtual int UpdatePiece(
591 int piece,
int numPieces,
int ghostLevels,
const int extents[6] =
nullptr);
598 virtual int UpdateExtent(
const int extents[6]);
606 virtual int UpdateTimeStep(
double time,
int piece = -1,
int numPieces = 1,
int ghostLevels = 0,
607 const int extents[6] =
nullptr);
612 virtual void UpdateInformation();
617 virtual void UpdateDataObject();
622 virtual void PropagateUpdateExtent();
627 virtual void UpdateWholeExtent();
633 void ConvertTotalInputToPortConnection(
int ind,
int&
port,
int& conn);
645 virtual void SetReleaseDataFlag(
int);
646 virtual int GetReleaseDataFlag();
647 void ReleaseDataFlagOn();
648 void ReleaseDataFlagOff();
668 static void SetDefaultExecutivePrototype(
vtkExecutive* proto);
680 this->GetUpdateExtent(0, x0, x1, y0, y1, z0, z1);
682 void GetUpdateExtent(
int port,
int& x0,
int& x1,
int& y0,
int& y1,
int& z0,
int& z1);
684 void GetUpdateExtent(
int port,
int extent[6]);
694 int GetUpdatePiece(
int port);
696 int GetUpdateNumberOfPieces(
int port);
698 int GetUpdateGhostLevel(
int port);
743 virtual void SetNumberOfInputPorts(
int n);
748 virtual void SetNumberOfOutputPorts(
int n);
751 int InputPortIndexInRange(
int index,
const char* action);
752 int OutputPortIndexInRange(
int index,
const char* action);
848 vtkSetMacro(ErrorCode,
unsigned long);
875 virtual void SetNumberOfInputConnections(
int port,
int n);
887 this->SetInputDataObject(
port, input);
891 this->AddInputDataObject(
port, input);
900 vtkAlgorithmInternals* AlgorithmInternal;
901 static void ConnectionAdd(
903 static void ConnectionRemove(
912 double ProgressShift;
913 double ProgressScale;
vtkAlgorithmOutput * GetOutputPort()
abstract base class for most VTK objects
DesiredOutputPrecision
Values used for setting the desired output precision for various algorithms.
virtual void Register(vtkObjectBase *o)
Increase the reference count (mark as used by another object).
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
void GetUpdateExtent(int extent[6])
These functions return the update extent for output ports that use 3D extents.
int GetUpdatePiece()
These functions return the update extent for output ports that use piece extents. ...
vtkTypeUInt32 vtkMTimeType
int * GetUpdateExtent()
These functions return the update extent for output ports that use 3D extents.
Abstract superclass for all arrays.
vtkAlgorithm * GetInputAlgorithm()
Equivalent to GetInputAlgorithm(0, 0).
vtkInformation * GetInputInformation()
Equivalent to GetInputInformation(0, 0)
virtual void AddInputDataObject(vtkDataObject *data)
Superclass for all pipeline executives in VTK.
void SetInputDataInternal(int port, vtkDataObject *input)
These methods are used by subclasses to implement methods to set data objects directly as input...
Detect and break reference loops.
Proxy object to connect input/output ports.
void AddInputDataInternal(int port, vtkDataObject *input)
Superclass for all sources, filters, and sinks in VTK.
vtkInformation * Information
virtual void UnRegister(vtkObjectBase *o)
Decrease the reference count (release by another object).
a simple class to control print indentation
virtual void ReportReferences(vtkGarbageCollector *)
int GetUpdateNumberOfPieces()
These functions return the update extent for output ports that use piece extents. ...
abstract superclass for arrays of numeric data
abstract base class for most VTK objects
#define VTK_SIZEHINT(...)
virtual void SetInputDataObject(vtkDataObject *data)
unsigned long ErrorCode
The error code contains a possible error that occurred while reading or writing the file...
create and manipulate ordered lists of objects
int GetUpdateGhostLevel()
These functions return the update extent for output ports that use piece extents. ...
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkProgressObserver * ProgressObserver
general representation of visualization data
vtkExecutive * GetInputExecutive()
Equivalent to GetInputExecutive(0, 0)
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.
Basic class to optionally replace vtkAlgorithm progress functionality.
static vtkExecutive * DefaultExecutivePrototype