20 #ifndef __itkProcessObject_h
21 #define __itkProcessObject_h
119 {
return m_Inputs.size();}
128 virtual DataObjectPointerArraySizeType GetNumberOfValidRequiredInputs()
const;
134 {
return m_Outputs; }
136 {
return m_Outputs.size();}
140 itkSetMacro(AbortGenerateData,
bool);
144 itkGetConstReferenceMacro(AbortGenerateData,
bool);
147 itkBooleanMacro(AbortGenerateData);
153 itkSetClampMacro(Progress,
float,0.0f,1.0f);
158 itkGetConstReferenceMacro(Progress,
float);
165 void UpdateProgress(
float amount);
185 virtual void Update();
193 virtual void UpdateLargestPossibleRegion();
207 virtual void UpdateOutputInformation();
211 virtual void PropagateRequestedRegion(
DataObject *output);
214 virtual void UpdateOutputData(
DataObject *output);
230 virtual void ResetPipeline();
246 virtual DataObjectPointer MakeOutput(
unsigned int idx);
253 virtual void SetReleaseDataFlag(
bool flag);
254 virtual bool GetReleaseDataFlag()
const;
270 itkSetMacro(ReleaseDataBeforeUpdateFlag,
bool);
271 itkGetConstReferenceMacro(ReleaseDataBeforeUpdateFlag,
bool);
272 itkBooleanMacro(ReleaseDataBeforeUpdateFlag);
277 itkGetConstReferenceMacro( NumberOfThreads,
int );
289 virtual void PrepareOutputs();
294 void PrintSelf(std::ostream& os,
Indent indent)
const;
298 virtual void SetNthInput(
unsigned int num,
DataObject *input);
301 itkSetMacro(NumberOfRequiredInputs,
unsigned int);
302 itkGetConstReferenceMacro(NumberOfRequiredInputs,
unsigned int);
309 virtual void PushBackInput(
const DataObject *input);
310 virtual void PopBackInput();
311 virtual void PushFrontInput(
const DataObject *input);
312 virtual void PopFrontInput();
316 void SetNumberOfInputs(
unsigned int num);
320 const DataObject * GetInput(
unsigned int idx)
const;
324 virtual void SetNthOutput(
unsigned int num,
DataObject *output);
326 virtual void RemoveOutput(
DataObject *output);
327 itkSetMacro(NumberOfRequiredOutputs,
unsigned int);
328 itkGetConstReferenceMacro(NumberOfRequiredOutputs,
unsigned int);
331 void SetNumberOfOutputs(
unsigned int num);
335 const DataObject * GetOutput(
unsigned int idx)
const;
350 virtual void GenerateInputRequestedRegion();
363 virtual void GenerateOutputRequestedRegion(
DataObject *output);
375 virtual void GenerateOutputInformation();
383 virtual void PropagateResetPipeline();
396 virtual void ReleaseInputs();
406 virtual void CacheInputReleaseDataFlags();
411 virtual void RestoreInputReleaseDataFlags();
425 void operator=(
const Self&);