00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00029 #ifndef __vtkImageCorrelation_h
00030 #define __vtkImageCorrelation_h
00031
00032
00033
00034 #include "vtkThreadedImageAlgorithm.h"
00035
00036 class VTK_IMAGING_EXPORT vtkImageCorrelation : public vtkThreadedImageAlgorithm
00037 {
00038 public:
00039 static vtkImageCorrelation *New();
00040 vtkTypeRevisionMacro(vtkImageCorrelation,vtkThreadedImageAlgorithm);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00044
00045 vtkSetClampMacro(Dimensionality,int,2,3);
00046 vtkGetMacro(Dimensionality,int);
00048
00050
00051 virtual void SetInput1(vtkDataObject *in) { this->SetInput(0,in); }
00052 virtual void SetInput2(vtkDataObject *in) { this->SetInput(1,in); }
00054
00055 protected:
00056 vtkImageCorrelation();
00057 ~vtkImageCorrelation() {};
00058
00059 int Dimensionality;
00060 virtual int RequestInformation (vtkInformation *,
00061 vtkInformationVector **,
00062 vtkInformationVector *);
00063 virtual int RequestUpdateExtent(vtkInformation*,
00064 vtkInformationVector**,
00065 vtkInformationVector*);
00066
00067 virtual void ThreadedRequestData(vtkInformation *request,
00068 vtkInformationVector **inputVector,
00069 vtkInformationVector *outputVector,
00070 vtkImageData ***inData,
00071 vtkImageData **outData,
00072 int extent[6], int threadId);
00073
00074 private:
00075 vtkImageCorrelation(const vtkImageCorrelation&);
00076 void operator=(const vtkImageCorrelation&);
00077 };
00078
00079 #endif
00080
00081
00082