SimpleITK  1.2.4
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 
54  public:
56 
59 
63 
65  typedef typelist::Append<BasicPixelIDTypeList, VectorPixelIDTypeList>::Type PixelIDTypeList;
66 
67 
68 
72  SITK_RETURN_SELF_TYPE_HEADER SetSigma ( double Sigma ) { this->m_Sigma = Sigma; return *this; }
73 
77  double GetSigma() const { return this->m_Sigma; }
78 
98  SITK_RETURN_SELF_TYPE_HEADER SetNormalizeAcrossScale ( bool NormalizeAcrossScale ) { this->m_NormalizeAcrossScale = NormalizeAcrossScale; return *this; }
99 
101  SITK_RETURN_SELF_TYPE_HEADER NormalizeAcrossScaleOn() { return this->SetNormalizeAcrossScale(true); }
102  SITK_RETURN_SELF_TYPE_HEADER NormalizeAcrossScaleOff() { return this->SetNormalizeAcrossScale(false); }
103 
106  bool GetNormalizeAcrossScale() const { return this->m_NormalizeAcrossScale; }
107 
108  typedef enum {ZeroOrder,FirstOrder,SecondOrder} OrderType;
109 
119  SITK_RETURN_SELF_TYPE_HEADER SetOrder ( OrderType Order ) { this->m_Order = Order; return *this; }
120 
130  OrderType GetOrder() const { return this->m_Order; }
131 
134  SITK_RETURN_SELF_TYPE_HEADER SetDirection ( unsigned int Direction ) { this->m_Direction = Direction; return *this; }
135 
138  unsigned int GetDirection() const { return this->m_Direction; }
140  std::string GetName() const { return std::string ("RecursiveGaussianImageFilter"); }
141 
143  std::string ToString() const;
144 
145 
147  Image Execute ( const Image& image1 );
148 
149 
151  Image Execute ( const Image& image1, double sigma, bool normalizeAcrossScale, RecursiveGaussianImageFilter::OrderType order, unsigned int direction );
152 
153  private:
154 
157  typedef Image (Self::*MemberFunctionType)( const Image& image1 );
158  template <class TImageType> Image ExecuteInternal ( const Image& image1 );
159 
160 
161  friend struct detail::MemberFunctionAddressor<MemberFunctionType>;
162 
163  nsstd::auto_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
164 
165 
166  /* */
167  double m_Sigma;
168  /* */
170  /* */
172  /* */
173  unsigned int m_Direction;
174  };
175 
176 
185  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 );
186 
187  }
188 }
189 #endif
#define SITKBasicFilters_EXPORT
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
typelist::Append< BasicPixelIDTypeList, VectorPixelIDTypeList >::Type PixelIDTypeList
Self & SetNormalizeAcrossScale(bool NormalizeAcrossScale)
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 Image class for SimpleITK.
Definition: sitkImage.h:78
Base class for computing IIR convolution with an approximation of a Gaussian kernel.
The base interface for SimpleITK filters that take one input image.