SimpleITK  2.0.0
sitkPasteImageFilter.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 sitkPasteImageFilter_h
19 #define sitkPasteImageFilter_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 
56  public:
58 
60  virtual ~PasteImageFilter();
61 
65 
68 \
69 
72  SITK_RETURN_SELF_TYPE_HEADER SetSourceSize ( std::vector<unsigned int> SourceSize ) { this->m_SourceSize = std::move(SourceSize); return *this; }
73 
76  std::vector<unsigned int> GetSourceSize() const { return this->m_SourceSize; }\
77 
80  SITK_RETURN_SELF_TYPE_HEADER SetSourceIndex ( std::vector<int> SourceIndex ) { this->m_SourceIndex = std::move(SourceIndex); return *this; }
81 
84  std::vector<int> GetSourceIndex() const { return this->m_SourceIndex; }\
85 
89  SITK_RETURN_SELF_TYPE_HEADER SetDestinationIndex ( std::vector<int> DestinationIndex ) { this->m_DestinationIndex = std::move(DestinationIndex); return *this; }
90 
94  std::vector<int> GetDestinationIndex() const { return this->m_DestinationIndex; }
95 
96 
105  SITK_RETURN_SELF_TYPE_HEADER SetDestinationSkipAxes ( std::vector<bool> DestinationSkipAxes ) { this->m_DestinationSkipAxes = std::move(DestinationSkipAxes); return *this; }
106 
115  std::vector<bool> GetDestinationSkipAxes() const { return this->m_DestinationSkipAxes; }
116 
117 
118 
120  std::string GetName() const { return std::string ("PasteImageFilter"); }
121 
123  std::string ToString() const;
124 
125 
127 #ifndef SWIG
128  Image Execute ( Image && destinationImage, const Image & sourceImage );
129  Image Execute ( Image && destinationImage, double constant);
130 #endif
131  Image Execute ( const Image & destinationImage, const Image & sourceImage );
132  Image Execute ( const Image & destinationImage, double constant);
133 
134 
135  private:
136 
139  using MemberFunctionType = Image (Self::*)( const Image * destinationImage, const Image * sourceImage );
140  template <class TImageType> Image ExecuteInternal ( const Image * destinationImage, const Image * sourceImage );
141 
142  template <class TImageType, unsigned int OutputDimension>
143  Image ExecuteInternal ( const TImageType *destinationImage, const Image * sourceImage, std::integral_constant<unsigned int, OutputDimension> meta );
144  template <class TImageType>
145  Image ExecuteInternal ( const TImageType *destinationImage, const Image * sourceImage, std::integral_constant<unsigned int, 1> meta );
146 
147 
149 
150  std::unique_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
151 
152  using MemberFunction2Type = Image (Self::*)( const Image* image, double constant );
153  template <class TImageType> Image ExecuteInternal ( const Image* image, double constant );
155  std::unique_ptr<detail::MemberFunctionFactory<MemberFunction2Type> > m_MemberFactory2;
156 
157 
158  std::vector<unsigned int> m_SourceSize{std::vector<unsigned int>(SITK_MAX_DIMENSION, 1)};
159 
160  std::vector<int> m_SourceIndex{std::vector<int>(SITK_MAX_DIMENSION, 0)};
161 
162  std::vector<int> m_DestinationIndex{std::vector<int>(SITK_MAX_DIMENSION, 0)};
163 
164  std::vector<bool> m_DestinationSkipAxes{};
165 
166  bool m_InPlace{false};
167  };
168 
178 #ifndef SWIG
179  SITKBasicFilters_EXPORT Image Paste ( Image && destinationImage, const Image & sourceImage, std::vector<unsigned int> sourceSize = std::vector<unsigned int>(SITK_MAX_DIMENSION, 1), std::vector<int> sourceIndex = std::vector<int>(SITK_MAX_DIMENSION, 0), std::vector<int> destinationIndex = std::vector<int>(SITK_MAX_DIMENSION, 0), std::vector<bool> DestinationSkipAxes = std::vector<bool>() );
180 #endif
181  SITKBasicFilters_EXPORT Image Paste ( const Image & destinationImage, const Image & sourceImage, std::vector<unsigned int> sourceSize = std::vector<unsigned int>(SITK_MAX_DIMENSION, 1), std::vector<int> sourceIndex = std::vector<int>(SITK_MAX_DIMENSION, 0), std::vector<int> destinationIndex = std::vector<int>(SITK_MAX_DIMENSION, 0), std::vector<bool> DestinationSkipAxes = std::vector<bool>() );
182 
184  }
185 }
186 #endif
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:75
sitkBasicFilters.h
itk::simple::detail::MemberFunctionAddressor
Definition: sitkDetail.h:32
itk::simple::NonLabelPixelIDTypeList
typelist::Append< typelist::Append< BasicPixelIDTypeList, ComplexPixelIDTypeList >::Type, VectorPixelIDTypeList >::Type NonLabelPixelIDTypeList
Definition: sitkPixelIDTypeLists.h:180
itk::simple::PasteImageFilter::GetSourceIndex
std::vector< int > GetSourceIndex() const
Definition: sitkPasteImageFilter.h:84
itk::simple::PasteImageFilter::GetDestinationIndex
std::vector< int > GetDestinationIndex() const
Definition: sitkPasteImageFilter.h:94
itk::simple::PasteImageFilter::GetDestinationSkipAxes
std::vector< bool > GetDestinationSkipAxes() const
Definition: sitkPasteImageFilter.h:115
sitkImageFilter.h
itk::simple::Paste
Image Paste(Image &&destinationImage, const Image &sourceImage, std::vector< unsigned int > sourceSize=std::vector< unsigned int >(SITK_MAX_DIMENSION, 1), std::vector< int > sourceIndex=std::vector< int >(SITK_MAX_DIMENSION, 0), std::vector< int > destinationIndex=std::vector< int >(SITK_MAX_DIMENSION, 0), std::vector< bool > DestinationSkipAxes=std::vector< bool >())
Paste an image into another image.
itk::simple::PasteImageFilter::m_MemberFactory
std::unique_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Definition: sitkPasteImageFilter.h:150
itk::simple::PasteImageFilter::SetDestinationSkipAxes
Self & SetDestinationSkipAxes(std::vector< bool > DestinationSkipAxes)
Definition: sitkPasteImageFilter.h:105
SITK_MAX_DIMENSION
#define SITK_MAX_DIMENSION
Definition: sitkConfigure.h:30
itk::simple::PasteImageFilter::PixelIDTypeList
NonLabelPixelIDTypeList PixelIDTypeList
Definition: sitkPasteImageFilter.h:67
itk::simple::PasteImageFilter::MemberFunctionType
Image(Self::*)(const Image *destinationImage, const Image *sourceImage) MemberFunctionType
Definition: sitkPasteImageFilter.h:139
itk::simple::PasteImageFilter
Paste an image (or a constant value) into another image.
Definition: sitkPasteImageFilter.h:55
itk::simple::PasteImageFilter::SetDestinationIndex
Self & SetDestinationIndex(std::vector< int > DestinationIndex)
Definition: sitkPasteImageFilter.h:89
SITKBasicFilters_EXPORT
#define SITKBasicFilters_EXPORT
Definition: sitkBasicFilters.h:52
itk::simple::PasteImageFilter::SetSourceIndex
Self & SetSourceIndex(std::vector< int > SourceIndex)
Definition: sitkPasteImageFilter.h:80
itk::simple::PasteImageFilter::SetSourceSize
Self & SetSourceSize(std::vector< unsigned int > SourceSize)
Definition: sitkPasteImageFilter.h:72
itk
itk::simple::ImageFilter
The base interface for SimpleITK filters that take one input image.
Definition: sitkImageFilter.h:36
itk::Image
Definition: sitkPixelIDTypes.h:26
itk::simple::PasteImageFilter::GetSourceSize
std::vector< unsigned int > GetSourceSize() const
Definition: sitkPasteImageFilter.h:76
itk::simple::PasteImageFilter::m_MemberFactory2
std::unique_ptr< detail::MemberFunctionFactory< MemberFunction2Type > > m_MemberFactory2
Definition: sitkPasteImageFilter.h:155
itk::simple::PasteImageFilter::MemberFunction2Type
Image(Self::*)(const Image *image, double constant) MemberFunction2Type
Definition: sitkPasteImageFilter.h:152
itk::simple::PasteImageFilter::GetName
std::string GetName() const
Definition: sitkPasteImageFilter.h:120