SimpleITK  1.0.1
sitkRecursiveGaussianImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 *
3 * Copyright Insight Software Consortium
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18 #ifndef sitkRecursiveGaussianImageFilter_h
19 #define sitkRecursiveGaussianImageFilter_h
20 
21 /*
22  * WARNING: DO NOT EDIT THIS FILE!
23  * THIS FILE IS AUTOMATICALLY GENERATED BY THE SIMPLEITK BUILD PROCESS.
24  * Please look at sitkImageFilterTemplate.h.in to make changes.
25  */
26 
27 #include <memory>
28 
29 #include "sitkBasicFilters.h"
30 #include "sitkImageFilter.h"
31 
32 namespace itk {
33  namespace simple {
34 
60  public:
62 
66 
69 
71  typedef typelist::Append<BasicPixelIDTypeList, VectorPixelIDTypeList>::Type PixelIDTypeList;
72 
73 
74 
78  SITK_RETURN_SELF_TYPE_HEADER SetSigma ( double Sigma ) { this->m_Sigma = Sigma; return *this; }
79 
83  double GetSigma() const { return this->m_Sigma; }
84 
104  SITK_RETURN_SELF_TYPE_HEADER SetNormalizeAcrossScale ( bool NormalizeAcrossScale ) { this->m_NormalizeAcrossScale = NormalizeAcrossScale; return *this; }
105 
107  SITK_RETURN_SELF_TYPE_HEADER NormalizeAcrossScaleOn() { return this->SetNormalizeAcrossScale(true); }
108  SITK_RETURN_SELF_TYPE_HEADER NormalizeAcrossScaleOff() { return this->SetNormalizeAcrossScale(false); }
109 
112  bool GetNormalizeAcrossScale() const { return this->m_NormalizeAcrossScale; }
113 
114  typedef enum {ZeroOrder,FirstOrder,SecondOrder} OrderType;
115 
125  SITK_RETURN_SELF_TYPE_HEADER SetOrder ( OrderType Order ) { this->m_Order = Order; return *this; }
126 
136  OrderType GetOrder() const { return this->m_Order; }
137 
140  SITK_RETURN_SELF_TYPE_HEADER SetDirection ( unsigned int Direction ) { this->m_Direction = Direction; return *this; }
141 
144  unsigned int GetDirection() const { return this->m_Direction; }
146  std::string GetName() const { return std::string ("RecursiveGaussianImageFilter"); }
147 
149  std::string ToString() const;
150 
151 
153  Image Execute ( const Image& image1 );
154 
155 
157  Image Execute ( const Image& image1, double sigma, bool normalizeAcrossScale, RecursiveGaussianImageFilter::OrderType order, unsigned int direction );
158 
159 
160  private:
161 
164  typedef Image (Self::*MemberFunctionType)( const Image& image1 );
165  template <class TImageType> Image ExecuteInternal ( const Image& image1 );
166 
167 
168 
169  friend struct detail::MemberFunctionAddressor<MemberFunctionType>;
170 
171  nsstd::auto_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
172 
173 
174  /* */
175  double m_Sigma;
176  /* */
178  /* */
180  /* */
181  unsigned int m_Direction;
182  };
183 
184 
185 
194  SITKBasicFilters_EXPORT Image RecursiveGaussian ( const Image& image1, double sigma = 1.0, bool normalizeAcrossScale = false, RecursiveGaussianImageFilter::OrderType order = itk::simple::RecursiveGaussianImageFilter::ZeroOrder, unsigned int direction = 0u );
195 
196  }
197 }
198 #endif
#define SITKBasicFilters_EXPORT
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
typelist::Append< BasicPixelIDTypeList, VectorPixelIDTypeList >::Type PixelIDTypeList
Image RecursiveGaussian(const Image &image1, double sigma=1.0, bool normalizeAcrossScale=false, RecursiveGaussianImageFilter::OrderType order=itk::simple::RecursiveGaussianImageFilter::ZeroOrder, unsigned int direction=0u)
Base class for computing IIR convolution with an approximation of a Gaussian kernel.
The main Image class for SimpleITK.
Definition: sitkImage.h:54
Base class for computing IIR convolution with an approximation of a Gaussian kernel.
The base interface for SimpleITK filters that take one input image.