Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts

itkDerivativeImageFilter.h

Go to the documentation of this file.
00001 /*========================================================================= 00002 00003 Program: Insight Segmentation & Registration Toolkit 00004 Module: $RCSfile: itkDerivativeImageFilter.h,v $ 00005 Language: C++ 00006 Date: $Date: 2003/09/10 14:28:46 $ 00007 Version: $Revision: 1.18 $ 00008 00009 Copyright (c) Insight Software Consortium. All rights reserved. 00010 See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details. 00011 00012 This software is distributed WITHOUT ANY WARRANTY; without even 00013 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00014 PURPOSE. See the above copyright notices for more information. 00015 00016 =========================================================================*/ 00017 #ifndef __itkDerivativeImageFilter_h 00018 #define __itkDerivativeImageFilter_h 00019 00020 #include "itkImageToImageFilter.h" 00021 #include "itkImage.h" 00022 00023 namespace itk 00024 { 00042 template <class TInputImage, class TOutputImage> 00043 class ITK_EXPORT DerivativeImageFilter : 00044 public ImageToImageFilter< TInputImage, TOutputImage > 00045 { 00046 public: 00048 typedef DerivativeImageFilter Self; 00049 typedef ImageToImageFilter< TInputImage, TOutputImage > Superclass; 00050 typedef SmartPointer<Self> Pointer; 00051 typedef SmartPointer<const Self> ConstPointer; 00052 00055 typedef typename TOutputImage::PixelType OutputPixelType; 00056 typedef typename TOutputImage::InternalPixelType OutputInternalPixelType; 00057 typedef typename TInputImage::PixelType InputPixelType; 00058 typedef typename TInputImage::InternalPixelType InputInternalPixelType; 00059 00062 itkStaticConstMacro(ImageDimension, unsigned int, 00063 TOutputImage::ImageDimension); 00064 00066 typedef TInputImage InputImageType; 00067 typedef TOutputImage OutputImageType; 00068 00070 itkNewMacro(Self); 00071 00073 itkTypeMacro(DerivativeImageFilter, ImageToImageFilter); 00074 00076 itkSetMacro(Order, unsigned int); 00077 itkGetMacro(Order, unsigned int); 00078 itkSetMacro(Direction, unsigned int); 00079 itkGetMacro(Direction, unsigned int); 00080 00083 void SetUseImageSpacingOn() 00084 { this->SetUseImageSpacing(true); } 00085 00088 void SetUseImageSpacingOff() 00089 { this->SetUseImageSpacing(false); } 00090 00093 itkSetMacro(UseImageSpacing, bool); 00094 itkGetMacro(UseImageSpacing, bool); 00095 00103 virtual void GenerateInputRequestedRegion() throw(InvalidRequestedRegionError); 00104 00105 protected: 00106 DerivativeImageFilter() 00107 { 00108 m_Order = 1; 00109 m_Direction = 0; 00110 m_UseImageSpacing = true; 00111 } 00112 virtual ~DerivativeImageFilter() {} 00113 void PrintSelf(std::ostream& os, Indent indent) const; 00114 00120 void GenerateData(); 00121 00122 private: 00123 DerivativeImageFilter(const Self&); //purposely not implemented 00124 void operator=(const Self&); //purposely not implemented 00125 00127 unsigned int m_Order; 00128 00130 unsigned int m_Direction; 00131 00132 bool m_UseImageSpacing; 00133 00134 }; 00135 00136 } // end namespace itk 00137 00138 #ifndef ITK_MANUAL_INSTANTIATION 00139 #include "itkDerivativeImageFilter.txx" 00140 #endif 00141 00142 #endif

Generated at Sat Mar 31 02:17:07 2007 for ITK by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2000