SimpleITK  
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::simple {
33 
44  public:
46 
48  virtual ~GaussianImageSource();
49 
53 
56 
57 
58 
59 \
60 
63  SITK_RETURN_SELF_TYPE_HEADER SetOutputPixelType ( PixelIDValueEnum OutputPixelType ) { this->m_OutputPixelType = OutputPixelType; return *this; }
64 
67  PixelIDValueEnum GetOutputPixelType() const { return this->m_OutputPixelType; }\
68 
71  SITK_RETURN_SELF_TYPE_HEADER SetSize ( std::vector<unsigned int> Size ) { this->m_Size = std::move(Size); return *this; }
72 
75  std::vector<unsigned int> GetSize() const { return this->m_Size; }\
76 
80  SITK_RETURN_SELF_TYPE_HEADER SetSigma ( std::vector<double> Sigma ) { this->m_Sigma = std::move(Sigma); return *this; }
81 
83  SITK_RETURN_SELF_TYPE_HEADER SetSigma( double value ) { this->m_Sigma = std::vector<double>(3, value); return *this; }
84 
88  std::vector<double> GetSigma() const { return this->m_Sigma; }\
89 
93  SITK_RETURN_SELF_TYPE_HEADER SetMean ( std::vector<double> Mean ) { this->m_Mean = std::move(Mean); return *this; }
94 
96  SITK_RETURN_SELF_TYPE_HEADER SetMean( double value ) { this->m_Mean = std::vector<double>(3, value); return *this; }
97 
101  std::vector<double> GetMean() const { return this->m_Mean; }\
102 
106  SITK_RETURN_SELF_TYPE_HEADER SetScale ( double Scale ) { this->m_Scale = Scale; return *this; }
107 
111  double GetScale() const { return this->m_Scale; }\
112 
115  SITK_RETURN_SELF_TYPE_HEADER SetOrigin ( std::vector<double> Origin ) { this->m_Origin = std::move(Origin); return *this; }
116 
119  std::vector<double> GetOrigin() const { return this->m_Origin; }\
120 
123  SITK_RETURN_SELF_TYPE_HEADER SetSpacing ( std::vector<double> Spacing ) { this->m_Spacing = std::move(Spacing); return *this; }
124 
127  std::vector<double> GetSpacing() const { return this->m_Spacing; }\
128 
131  SITK_RETURN_SELF_TYPE_HEADER SetDirection ( std::vector<double> Direction ) { this->m_Direction = Direction; return *this; }
132 
135  std::vector<double> GetDirection() const { return this->m_Direction; }\
136 
140  SITK_RETURN_SELF_TYPE_HEADER SetNormalized ( bool Normalized ) { this->m_Normalized = Normalized; return *this; }
141 
143  SITK_RETURN_SELF_TYPE_HEADER NormalizedOn() { return this->SetNormalized(true); }
144  SITK_RETURN_SELF_TYPE_HEADER NormalizedOff() { return this->SetNormalized(false); }
145 
149  bool GetNormalized() const { return this->m_Normalized; }
150 
152  std::string GetName() const { return std::string ("GaussianImageSource"); }
153 
155  std::string ToString() const;
156 
157 
160  Image Execute ( );
161 
162 
163  private:
164 
167  using MemberFunctionType = Image (Self::*)( );
168  template <class TImageType> Image ExecuteInternal ( );
169 
170 
172 
173  std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
174 
175 
176  PixelIDValueEnum m_OutputPixelType{itk::simple::sitkFloat32};
177 
178  std::vector<unsigned int> m_Size{std::vector<unsigned int>(3, 64)};
179 
180  std::vector<double> m_Sigma{std::vector<double>(3, 16.0)};
181 
182  std::vector<double> m_Mean{std::vector<double>(3, 32.0)};
183 
184  double m_Scale{255};
185 
186  std::vector<double> m_Origin{std::vector<double>(3, 0.0)};
187 
188  std::vector<double> m_Spacing{std::vector<double>(3, 1.0)};
189 
190  /* 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. */
191  std::vector<double> m_Direction{std::vector<double>()};
192 
193  bool m_Normalized{false};
194 
195 
196 
197 
198 
199  };
200 
201 
202 
211 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 );
212 }
213 #endif
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:76
itk::simple::GaussianImageSource::MemberFunctionType
Image(Self::*)() MemberFunctionType
Definition: sitkGaussianImageSource.h:167
itk::simple::GaussianImageSource::SetScale
Self & SetScale(double Scale)
Definition: sitkGaussianImageSource.h:106
itk::simple::GaussianImageSource::GetNormalized
bool GetNormalized() const
Definition: sitkGaussianImageSource.h:149
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:29
itk::simple::GaussianImageSource::SetSigma
Self & SetSigma(std::vector< double > Sigma)
Definition: sitkGaussianImageSource.h:80
itk::simple::GaussianImageSource::NormalizedOn
Self & NormalizedOn()
Definition: sitkGaussianImageSource.h:143
itk::simple::GaussianImageSource::SetNormalized
Self & SetNormalized(bool Normalized)
Definition: sitkGaussianImageSource.h:140
itk::simple::BasicPixelIDTypeList
typelist2::typelist< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t >, BasicPixelID< float >, BasicPixelID< double > > BasicPixelIDTypeList
Definition: sitkPixelIDTypeLists.h:51
itk::simple::GaussianImageSource
Generate an n-dimensional image of a Gaussian.
Definition: sitkGaussianImageSource.h:43
itk::simple::GaussianImageSource::SetDirection
Self & SetDirection(std::vector< double > Direction)
Definition: sitkGaussianImageSource.h:131
itk::simple::GaussianImageSource::PixelIDTypeList
BasicPixelIDTypeList PixelIDTypeList
Definition: sitkGaussianImageSource.h:55
itk::simple::GaussianImageSource::GetOrigin
std::vector< double > GetOrigin() const
Definition: sitkGaussianImageSource.h:119
itk::simple::PixelIDValueEnum
PixelIDValueEnum
Enumerated values of pixelIDs.
Definition: sitkPixelIDValues.h:100
sitkImageFilter.h
itk::simple::GaussianImageSource::GetMean
std::vector< double > GetMean() const
Definition: sitkGaussianImageSource.h:101
itk::simple::GaussianImageSource::GetSpacing
std::vector< double > GetSpacing() const
Definition: sitkGaussianImageSource.h:127
itk::simple::GaussianImageSource::GetDirection
std::vector< double > GetDirection() const
Definition: sitkGaussianImageSource.h:135
itk::simple::GaussianImageSource::GetScale
double GetScale() const
Definition: sitkGaussianImageSource.h:111
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:63
itk::simple::GaussianImageSource::SetMean
Self & SetMean(std::vector< double > Mean)
Definition: sitkGaussianImageSource.h:93
itk::simple::GaussianImageSource::m_MemberFactory
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Definition: sitkGaussianImageSource.h:173
SITKBasicFilters_EXPORT
#define SITKBasicFilters_EXPORT
Definition: sitkBasicFilters.h:52
itk::simple::GaussianImageSource::SetOrigin
Self & SetOrigin(std::vector< double > Origin)
Definition: sitkGaussianImageSource.h:115
itk::simple::GaussianImageSource::GetName
std::string GetName() const
Definition: sitkGaussianImageSource.h:152
itk::simple::GaussianImageSource::SetSpacing
Self & SetSpacing(std::vector< double > Spacing)
Definition: sitkGaussianImageSource.h:123
itk::simple::ImageFilter
The base interface for SimpleITK filters that take one input image.
Definition: sitkImageFilter.h:35
itk::simple::GaussianImageSource::SetSize
Self & SetSize(std::vector< unsigned int > Size)
Definition: sitkGaussianImageSource.h:71
itk::Image
Definition: sitkPixelIDTypes.h:28
itk::simple::GaussianImageSource::SetSigma
Self & SetSigma(double value)
Definition: sitkGaussianImageSource.h:83
itk::simple::GaussianImageSource::NormalizedOff
Self & NormalizedOff()
Definition: sitkGaussianImageSource.h:144
itk::simple
Definition: sitkAdditionalProcedures.h:28
itk::simple::GaussianImageSource::GetSize
std::vector< unsigned int > GetSize() const
Definition: sitkGaussianImageSource.h:75
itk::simple::GaussianImageSource::GetSigma
std::vector< double > GetSigma() const
Definition: sitkGaussianImageSource.h:88
itk::simple::GaussianImageSource::GetOutputPixelType
PixelIDValueEnum GetOutputPixelType() const
Definition: sitkGaussianImageSource.h:67
itk::simple::GaussianImageSource::SetMean
Self & SetMean(double value)
Definition: sitkGaussianImageSource.h:96