00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00033 #ifndef __vtkImageIdealHighPass_h
00034 #define __vtkImageIdealHighPass_h
00035 
00036 
00037 #include "vtkThreadedImageAlgorithm.h"
00038 
00039 class VTK_IMAGING_EXPORT vtkImageIdealHighPass : public vtkThreadedImageAlgorithm
00040 {
00041 public:
00042   static vtkImageIdealHighPass *New();
00043   vtkTypeMacro(vtkImageIdealHighPass,vtkThreadedImageAlgorithm);
00044   void PrintSelf(ostream& os, vtkIndent indent);
00045 
00047 
00050   vtkSetVector3Macro(CutOff,double);
00051   void SetCutOff(double v) {this->SetCutOff(v, v, v);}
00052   void SetXCutOff(double v);
00053   void SetYCutOff(double v);
00054   void SetZCutOff(double v);
00055   vtkGetVector3Macro(CutOff,double);
00056   double GetXCutOff() {return this->CutOff[0];}
00057   double GetYCutOff() {return this->CutOff[1];}
00058   double GetZCutOff() {return this->CutOff[2];}
00060 
00061 protected:
00062   vtkImageIdealHighPass();
00063   ~vtkImageIdealHighPass() {};
00064 
00065   double CutOff[3];
00066   
00067   void ThreadedRequestData(vtkInformation *request,
00068                            vtkInformationVector **inputVector,
00069                            vtkInformationVector *outputVector,
00070                            vtkImageData ***inData, vtkImageData **outData,
00071                            int outExt[6], int id);
00072 private:
00073   vtkImageIdealHighPass(const vtkImageIdealHighPass&);  
00074   void operator=(const vtkImageIdealHighPass&);  
00075 };
00076 
00077 #endif
00078 
00079 
00080