40 #ifndef __vtkAlgorithm_h
41 #define __vtkAlgorithm_h
46 class vtkAlgorithmInternals;
115 int requestFromOutputPort,
116 unsigned long* mtime);
145 int GetNumberOfInputPorts();
148 int GetNumberOfOutputPorts();
159 vtkSetMacro(AbortExecute,
int);
160 vtkGetMacro(AbortExecute,
int);
161 vtkBooleanMacro(AbortExecute,
int);
166 vtkSetClampMacro(Progress,
double,0.0,1.0);
167 vtkGetMacro(Progress,
double);
173 void UpdateProgress(
double amount);
181 void SetProgressText(
const char* ptext);
182 vtkGetStringMacro(ProgressText);
188 vtkGetMacro( ErrorCode,
unsigned long );
213 virtual void SetInputArrayToProcess(
int idx,
int port,
int connection,
214 int fieldAssociation,
216 virtual void SetInputArrayToProcess(
int idx,
int port,
int connection,
217 int fieldAssociation,
218 int fieldAttributeType);
219 virtual void SetInputArrayToProcess(
int idx,
vtkInformation *info);
237 virtual void SetInputArrayToProcess(
int idx,
int port,
int connection,
238 const char* fieldAssociation,
239 const char* attributeTypeorName);
250 void RemoveAllInputs();
302 return this->GetOutputPort(0); }
306 int GetNumberOfInputConnections(
int port);
309 int GetTotalNumberOfInputConnections();
315 virtual void Update();
319 virtual void UpdateInformation();
322 virtual void UpdateWholeExtent();
326 void ConvertTotalInputToPortConnection(
int ind,
int& port,
int& conn);
336 virtual void SetReleaseDataFlag(
int);
337 virtual int GetReleaseDataFlag();
338 void ReleaseDataFlagOn();
339 void ReleaseDataFlagOff();
355 static void SetDefaultExecutivePrototype(
vtkExecutive* proto);
360 virtual double ComputePriority();
387 virtual int FillInputPortInformation(
int port,
vtkInformation* info);
392 virtual int FillOutputPortInformation(
int port,
vtkInformation* info);
395 virtual void SetNumberOfInputPorts(
int n);
398 virtual void SetNumberOfOutputPorts(
int n);
401 int InputPortIndexInRange(
int index,
const char* action);
402 int OutputPortIndexInRange(
int index,
const char* action);
416 int GetInputArrayAssociation(
int idx,
int connection,
504 vtkSetMacro( ErrorCode,
unsigned long );
522 virtual void SetNthInputConnection(
int port,
int index,
530 virtual void SetNumberOfInputConnections(
int port,
int n);
538 vtkAlgorithmInternals* AlgorithmInternal;
539 static void ConnectionAdd(
vtkAlgorithm* producer,
int producerPort,
541 static void ConnectionRemove(
vtkAlgorithm* producer,
int producerPort,
543 static void ConnectionRemoveAllInput(
vtkAlgorithm* consumer,
int port);
544 static void ConnectionRemoveAllOutput(
vtkAlgorithm* producer,
int port);