00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00028 #ifndef __vtkImageAppendComponents_h
00029 #define __vtkImageAppendComponents_h
00030
00031
00032 #include "vtkThreadedImageAlgorithm.h"
00033
00034 class VTK_IMAGING_EXPORT vtkImageAppendComponents : public vtkThreadedImageAlgorithm
00035 {
00036 public:
00037 static vtkImageAppendComponents *New();
00038 vtkTypeMacro(vtkImageAppendComponents,vtkThreadedImageAlgorithm);
00039
00044 virtual void ReplaceNthInputConnection(int idx, vtkAlgorithmOutput* input);
00045
00047
00051 void SetInput(int num, vtkDataObject *input);
00052 void SetInput(vtkDataObject *input) { this->SetInput(0, input); };
00054
00056
00059 vtkDataObject *GetInput(int num);
00060 vtkDataObject *GetInput() { return this->GetInput(0); };
00062
00066 int GetNumberOfInputs() { return this->GetNumberOfInputConnections(0); };
00067
00068 protected:
00069 vtkImageAppendComponents() {};
00070 ~vtkImageAppendComponents() {};
00071
00072 virtual int RequestInformation (vtkInformation *, vtkInformationVector **,
00073 vtkInformationVector *);
00074
00075 void ThreadedRequestData (vtkInformation* request,
00076 vtkInformationVector** inputVector,
00077 vtkInformationVector* outputVector,
00078 vtkImageData ***inData, vtkImageData **outData,
00079 int ext[6], int id);
00080
00081
00082 virtual int FillInputPortInformation(int, vtkInformation*);
00083
00084 private:
00085 vtkImageAppendComponents(const vtkImageAppendComponents&);
00086 void operator=(const vtkImageAppendComponents&);
00087 };
00088
00089 #endif
00090
00091
00092
00093