VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkImageGradient.h,v $ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00028 #ifndef __vtkImageGradient_h 00029 #define __vtkImageGradient_h 00030 00031 #include "vtkThreadedImageAlgorithm.h" 00032 00033 class VTK_IMAGING_EXPORT vtkImageGradient : public vtkThreadedImageAlgorithm 00034 { 00035 public: 00036 static vtkImageGradient *New(); 00037 vtkTypeRevisionMacro(vtkImageGradient,vtkThreadedImageAlgorithm); 00038 void PrintSelf(ostream& os, vtkIndent indent); 00039 00041 00042 vtkSetClampMacro(Dimensionality,int,2,3); 00043 vtkGetMacro(Dimensionality,int); 00045 00047 00051 vtkSetMacro(HandleBoundaries, int); 00052 vtkGetMacro(HandleBoundaries, int); 00053 vtkBooleanMacro(HandleBoundaries, int); 00055 00056 protected: 00057 vtkImageGradient(); 00058 ~vtkImageGradient() {}; 00059 00060 int HandleBoundaries; 00061 int Dimensionality; 00062 00063 virtual int RequestInformation (vtkInformation*, 00064 vtkInformationVector**, 00065 vtkInformationVector*); 00066 virtual int RequestUpdateExtent(vtkInformation*, 00067 vtkInformationVector**, 00068 vtkInformationVector*); 00069 virtual int RequestData(vtkInformation*, 00070 vtkInformationVector**, 00071 vtkInformationVector*); 00072 00073 void ThreadedRequestData(vtkInformation*, 00074 vtkInformationVector**, 00075 vtkInformationVector*, 00076 vtkImageData*** inData, 00077 vtkImageData** outData, 00078 int outExt[6], 00079 int threadId); 00080 private: 00081 vtkImageGradient(const vtkImageGradient&); // Not implemented. 00082 void operator=(const vtkImageGradient&); // Not implemented. 00083 }; 00084 00085 #endif 00086 00087 00088