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 vtkTypeMacro(vtkImageCorrelation,vtkThreadedImageAlgorithm);
00041 void PrintSelf(ostream& os, vtkIndent indent);
00042
00044
00046 vtkSetClampMacro(Dimensionality,int,2,3);
00047 vtkGetMacro(Dimensionality,int);
00049
00051 virtual void SetInput1(vtkDataObject *in) { this->SetInput(0,in); }
00052
00054 virtual void SetInput2(vtkDataObject *in) { this->SetInput(1,in); }
00055
00056 protected:
00057 vtkImageCorrelation();
00058 ~vtkImageCorrelation() {};
00059
00060 int Dimensionality;
00061 virtual int RequestInformation (vtkInformation *,
00062 vtkInformationVector **,
00063 vtkInformationVector *);
00064 virtual int RequestUpdateExtent(vtkInformation*,
00065 vtkInformationVector**,
00066 vtkInformationVector*);
00067
00068 virtual void ThreadedRequestData(vtkInformation *request,
00069 vtkInformationVector **inputVector,
00070 vtkInformationVector *outputVector,
00071 vtkImageData ***inData,
00072 vtkImageData **outData,
00073 int extent[6], int threadId);
00074
00075 private:
00076 vtkImageCorrelation(const vtkImageCorrelation&);
00077 void operator=(const vtkImageCorrelation&);
00078 };
00079
00080 #endif
00081
00082
00083