VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkImageGradient.h 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 =========================================================================*/ 00031 #ifndef __vtkImageGradient_h 00032 #define __vtkImageGradient_h 00033 00034 #include "vtkThreadedImageAlgorithm.h" 00035 00036 class VTK_IMAGING_EXPORT vtkImageGradient : public vtkThreadedImageAlgorithm 00037 { 00038 public: 00039 static vtkImageGradient *New(); 00040 vtkTypeMacro(vtkImageGradient,vtkThreadedImageAlgorithm); 00041 void PrintSelf(ostream& os, vtkIndent indent); 00042 00044 00045 vtkSetClampMacro(Dimensionality,int,2,3); 00046 vtkGetMacro(Dimensionality,int); 00048 00050 00054 vtkSetMacro(HandleBoundaries, int); 00055 vtkGetMacro(HandleBoundaries, int); 00056 vtkBooleanMacro(HandleBoundaries, int); 00058 00059 protected: 00060 vtkImageGradient(); 00061 ~vtkImageGradient() {}; 00062 00063 int HandleBoundaries; 00064 int Dimensionality; 00065 00066 virtual int RequestInformation (vtkInformation*, 00067 vtkInformationVector**, 00068 vtkInformationVector*); 00069 virtual int RequestUpdateExtent(vtkInformation*, 00070 vtkInformationVector**, 00071 vtkInformationVector*); 00072 virtual int RequestData(vtkInformation*, 00073 vtkInformationVector**, 00074 vtkInformationVector*); 00075 00076 void ThreadedRequestData(vtkInformation*, 00077 vtkInformationVector**, 00078 vtkInformationVector*, 00079 vtkImageData*** inData, 00080 vtkImageData** outData, 00081 int outExt[6], 00082 int threadId); 00083 private: 00084 vtkImageGradient(const vtkImageGradient&); // Not implemented. 00085 void operator=(const vtkImageGradient&); // Not implemented. 00086 }; 00087 00088 #endif 00089 00090 00091