SimpleITK  1.0.1
sitkGradientRecursiveGaussianImageFilter.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 sitkGradientRecursiveGaussianImageFilter_h
19 #define sitkGradientRecursiveGaussianImageFilter_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 
51  public:
53 
57 
60 
62  typedef typelist::Append<BasicPixelIDTypeList, VectorPixelIDTypeList>::Type PixelIDTypeList;
63 
64 
65 
69  SITK_RETURN_SELF_TYPE_HEADER SetSigma ( double Sigma ) { this->m_Sigma = Sigma; return *this; }
70 
73  double GetSigma() const { return this->m_Sigma; }
74 
78  SITK_RETURN_SELF_TYPE_HEADER SetNormalizeAcrossScale ( bool NormalizeAcrossScale ) { this->m_NormalizeAcrossScale = NormalizeAcrossScale; return *this; }
79 
81  SITK_RETURN_SELF_TYPE_HEADER NormalizeAcrossScaleOn() { return this->SetNormalizeAcrossScale(true); }
82  SITK_RETURN_SELF_TYPE_HEADER NormalizeAcrossScaleOff() { return this->SetNormalizeAcrossScale(false); }
83 
87  bool GetNormalizeAcrossScale() const { return this->m_NormalizeAcrossScale; }
88 
92  SITK_RETURN_SELF_TYPE_HEADER SetUseImageDirection ( bool UseImageDirection ) { this->m_UseImageDirection = UseImageDirection; return *this; }
93 
95  SITK_RETURN_SELF_TYPE_HEADER UseImageDirectionOn() { return this->SetUseImageDirection(true); }
96  SITK_RETURN_SELF_TYPE_HEADER UseImageDirectionOff() { return this->SetUseImageDirection(false); }
97 
101  bool GetUseImageDirection() const { return this->m_UseImageDirection; }
103  std::string GetName() const { return std::string ("GradientRecursiveGaussianImageFilter"); }
104 
106  std::string ToString() const;
107 
108 
110  Image Execute ( const Image& image1 );
111 
112 
114  Image Execute ( const Image& image1, double sigma, bool normalizeAcrossScale, bool useImageDirection );
115 
116 
117  private:
118 
121  typedef Image (Self::*MemberFunctionType)( const Image& image1 );
122  template <class TImageType> Image ExecuteInternal ( const Image& image1 );
123 
124 
125 
126  friend struct detail::MemberFunctionAddressor<MemberFunctionType>;
127 
128  nsstd::auto_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
129 
130 
131  /* */
132  double m_Sigma;
133  /* */
136  };
137 
138 
139 
148  SITKBasicFilters_EXPORT Image GradientRecursiveGaussian ( const Image& image1, double sigma = 1.0, bool normalizeAcrossScale = false, bool useImageDirection = false );
149 
150  }
151 }
152 #endif
#define SITKBasicFilters_EXPORT
Computes the gradient of an image by convolution with the first derivative of a Gaussian.
The main Image class for SimpleITK.
Definition: sitkImage.h:54
Image GradientRecursiveGaussian(const Image &image1, double sigma=1.0, bool normalizeAcrossScale=false, bool useImageDirection=false)
Computes the gradient of an image by convolution with the first derivative of a Gaussian.
typelist::Append< BasicPixelIDTypeList, VectorPixelIDTypeList >::Type PixelIDTypeList
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
The base interface for SimpleITK filters that take one input image.