SimpleITK  2.0.0
sitkGaussianImageSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 *
3 * Copyright NumFOCUS
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 sitkGaussianImageSource_h
19 #define sitkGaussianImageSource_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 sitkImageSourceTemplate.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 
45  public:
47 
49  virtual ~GaussianImageSource();
50 
54 
57 
58 
59 
60 \
61 
64  SITK_RETURN_SELF_TYPE_HEADER SetOutputPixelType ( PixelIDValueEnum OutputPixelType ) { this->m_OutputPixelType = OutputPixelType; return *this; }
65 
68  PixelIDValueEnum GetOutputPixelType() const { return this->m_OutputPixelType; }\
69 
72  SITK_RETURN_SELF_TYPE_HEADER SetSize ( std::vector<unsigned int> Size ) { this->m_Size = std::move(Size); return *this; }
73 
76  std::vector<unsigned int> GetSize() const { return this->m_Size; }\
77 
81  SITK_RETURN_SELF_TYPE_HEADER SetSigma ( std::vector<double> Sigma ) { this->m_Sigma = std::move(Sigma); return *this; }
82 
84  SITK_RETURN_SELF_TYPE_HEADER SetSigma( double value ) { this->m_Sigma = std::vector<double>(3, value); return *this; }
85 
89  std::vector<double> GetSigma() const { return this->m_Sigma; }\
90 
94  SITK_RETURN_SELF_TYPE_HEADER SetMean ( std::vector<double> Mean ) { this->m_Mean = std::move(Mean); return *this; }
95 
97  SITK_RETURN_SELF_TYPE_HEADER SetMean( double value ) { this->m_Mean = std::vector<double>(3, value); return *this; }
98 
102  std::vector<double> GetMean() const { return this->m_Mean; }\
103 
107  SITK_RETURN_SELF_TYPE_HEADER SetScale ( double Scale ) { this->m_Scale = Scale; return *this; }
108 
112  double GetScale() const { return this->m_Scale; }\
113 
116  SITK_RETURN_SELF_TYPE_HEADER SetOrigin ( std::vector<double> Origin ) { this->m_Origin = std::move(Origin); return *this; }
117 
120  std::vector<double> GetOrigin() const { return this->m_Origin; }\
121 
124  SITK_RETURN_SELF_TYPE_HEADER SetSpacing ( std::vector<double> Spacing ) { this->m_Spacing = std::move(Spacing); return *this; }
125 
128  std::vector<double> GetSpacing() const { return this->m_Spacing; }\
129 
132  SITK_RETURN_SELF_TYPE_HEADER SetDirection ( std::vector<double> Direction ) { this->m_Direction = Direction; return *this; }
133 
136  std::vector<double> GetDirection() const { return this->m_Direction; }\
137 
141  SITK_RETURN_SELF_TYPE_HEADER SetNormalized ( bool Normalized ) { this->m_Normalized = Normalized; return *this; }
142 
144  SITK_RETURN_SELF_TYPE_HEADER NormalizedOn() { return this->SetNormalized(true); }
145  SITK_RETURN_SELF_TYPE_HEADER NormalizedOff() { return this->SetNormalized(false); }
146 
150  bool GetNormalized() const { return this->m_Normalized; }
151 
153  std::string GetName() const { return std::string ("GaussianImageSource"); }
154 
156  std::string ToString() const;
157 
158 
161  Image Execute ( );
162 
163 
164  private:
165 
168  using MemberFunctionType = Image (Self::*)( );
169  template <class TImageType> Image ExecuteInternal ( );
170 
171 
173 
174  std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
175 
176 
178 
179  std::vector<unsigned int> m_Size{std::vector<unsigned int>(3, 64)};
180 
181  std::vector<double> m_Sigma{std::vector<double>(3, 16.0)};
182 
183  std::vector<double> m_Mean{std::vector<double>(3, 32.0)};
184 
185  double m_Scale{255};
186 
187  std::vector<double> m_Origin{std::vector<double>(3, 0.0)};
188 
189  std::vector<double> m_Spacing{std::vector<double>(3, 1.0)};
190 
191  /* Passing a zero sized array, defaults to identiy matrix. The size of the array must exactly match the direction matrix for the dimension of the image. */
192  std::vector<double> m_Direction{std::vector<double>()};
193 
194  bool m_Normalized{false};
195 
196 
197 
198 
199 
200  };
201 
202 
203 
212 SITKBasicFilters_EXPORT Image GaussianSource ( PixelIDValueEnum outputPixelType = itk::simple::sitkFloat32, std::vector<unsigned int> size = std::vector<unsigned int>(3, 64), std::vector<double> sigma = std::vector<double>(3, 16.0), std::vector<double> mean = std::vector<double>(3, 32.0), double scale = 255, std::vector<double> origin = std::vector<double>(3, 0.0), std::vector<double> spacing = std::vector<double>(3, 1.0), std::vector<double> direction = std::vector<double>(), bool normalized = false );
213  }
214 }
215 #endif
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:75
itk::simple::GaussianImageSource::MemberFunctionType
Image(Self::*)() MemberFunctionType
Definition: sitkGaussianImageSource.h:168
itk::simple::GaussianImageSource::SetScale
Self & SetScale(double Scale)
Definition: sitkGaussianImageSource.h:107
itk::simple::GaussianImageSource::GetNormalized
bool GetNormalized() const
Definition: sitkGaussianImageSource.h:150
sitkBasicFilters.h
itk::simple::GaussianSource
Image GaussianSource(PixelIDValueEnum outputPixelType=itk::simple::sitkFloat32, std::vector< unsigned int > size=std::vector< unsigned int >(3, 64), std::vector< double > sigma=std::vector< double >(3, 16.0), std::vector< double > mean=std::vector< double >(3, 32.0), double scale=255, std::vector< double > origin=std::vector< double >(3, 0.0), std::vector< double > spacing=std::vector< double >(3, 1.0), std::vector< double > direction=std::vector< double >(), bool normalized=false)
Generate an n-dimensional image of a Gaussian.
itk::Size
itk::simple::detail::MemberFunctionAddressor
Definition: sitkDetail.h:32
itk::simple::GaussianImageSource::SetSigma
Self & SetSigma(std::vector< double > Sigma)
Definition: sitkGaussianImageSource.h:81
itk::simple::GaussianImageSource::NormalizedOn
Self & NormalizedOn()
Definition: sitkGaussianImageSource.h:144
itk::simple::GaussianImageSource::SetNormalized
Self & SetNormalized(bool Normalized)
Definition: sitkGaussianImageSource.h:141
itk::simple::GaussianImageSource
Generate an n-dimensional image of a Gaussian.
Definition: sitkGaussianImageSource.h:44
itk::simple::GaussianImageSource::SetDirection
Self & SetDirection(std::vector< double > Direction)
Definition: sitkGaussianImageSource.h:132
itk::simple::GaussianImageSource::PixelIDTypeList
BasicPixelIDTypeList PixelIDTypeList
Definition: sitkGaussianImageSource.h:56
itk::simple::GaussianImageSource::GetOrigin
std::vector< double > GetOrigin() const
Definition: sitkGaussianImageSource.h:120
itk::simple::PixelIDValueEnum
PixelIDValueEnum
Enumerated values of pixelIDs.
Definition: sitkPixelIDValues.h:90
itk::simple::BasicPixelIDTypeList
typelist::MakeTypeList< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t >, BasicPixelID< float >, BasicPixelID< double > >::Type BasicPixelIDTypeList
Definition: sitkPixelIDTypeLists.h:53
sitkImageFilter.h
itk::simple::GaussianImageSource::GetMean
std::vector< double > GetMean() const
Definition: sitkGaussianImageSource.h:102
itk::simple::GaussianImageSource::GetSpacing
std::vector< double > GetSpacing() const
Definition: sitkGaussianImageSource.h:128
itk::simple::GaussianImageSource::GetDirection
std::vector< double > GetDirection() const
Definition: sitkGaussianImageSource.h:136
itk::simple::GaussianImageSource::GetScale
double GetScale() const
Definition: sitkGaussianImageSource.h:112
itk::simple::Mean
Image Mean(const Image &image1, std::vector< unsigned int > radius=std::vector< unsigned int >(3, 1))
Applies an averaging filter to an image.
itk::simple::GaussianImageSource::SetOutputPixelType
Self & SetOutputPixelType(PixelIDValueEnum OutputPixelType)
Definition: sitkGaussianImageSource.h:64
itk::simple::GaussianImageSource::SetMean
Self & SetMean(std::vector< double > Mean)
Definition: sitkGaussianImageSource.h:94
itk::simple::sitkFloat32
@ sitkFloat32
32 bit float
Definition: sitkPixelIDValues.h:100
itk::simple::GaussianImageSource::m_MemberFactory
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Definition: sitkGaussianImageSource.h:174
SITKBasicFilters_EXPORT
#define SITKBasicFilters_EXPORT
Definition: sitkBasicFilters.h:52
itk::simple::GaussianImageSource::SetOrigin
Self & SetOrigin(std::vector< double > Origin)
Definition: sitkGaussianImageSource.h:116
itk::simple::GaussianImageSource::GetName
std::string GetName() const
Definition: sitkGaussianImageSource.h:153
itk
itk::simple::GaussianImageSource::SetSpacing
Self & SetSpacing(std::vector< double > Spacing)
Definition: sitkGaussianImageSource.h:124
itk::simple::ImageFilter
The base interface for SimpleITK filters that take one input image.
Definition: sitkImageFilter.h:36
itk::simple::GaussianImageSource::SetSize
Self & SetSize(std::vector< unsigned int > Size)
Definition: sitkGaussianImageSource.h:72
itk::Image
Definition: sitkPixelIDTypes.h:26
itk::simple::GaussianImageSource::SetSigma
Self & SetSigma(double value)
Definition: sitkGaussianImageSource.h:84
itk::simple::GaussianImageSource::NormalizedOff
Self & NormalizedOff()
Definition: sitkGaussianImageSource.h:145
itk::simple::GaussianImageSource::GetSize
std::vector< unsigned int > GetSize() const
Definition: sitkGaussianImageSource.h:76
itk::simple::GaussianImageSource::GetSigma
std::vector< double > GetSigma() const
Definition: sitkGaussianImageSource.h:89
itk::simple::GaussianImageSource::GetOutputPixelType
PixelIDValueEnum GetOutputPixelType() const
Definition: sitkGaussianImageSource.h:68
itk::simple::GaussianImageSource::SetMean
Self & SetMean(double value)
Definition: sitkGaussianImageSource.h:97