SimpleITK  1.0.1
sitkLandmarkBasedTransformInitializerFilter.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 sitkLandmarkBasedTransformInitializerFilter_h
19 #define sitkLandmarkBasedTransformInitializerFilter_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 
61  public:
63 
67 
70 
72  typedef typelist::MakeTypeList<BasicPixelID<float> >::Type PixelIDTypeList;
73 
74 
75 
79  SITK_RETURN_SELF_TYPE_HEADER SetFixedLandmarks ( const std::vector<double> & FixedLandmarks ) { this->m_FixedLandmarks = FixedLandmarks; return *this; }
80 
84  std::vector<double> GetFixedLandmarks() const { return this->m_FixedLandmarks; }
85 
89  SITK_RETURN_SELF_TYPE_HEADER SetMovingLandmarks ( const std::vector<double> & MovingLandmarks ) { this->m_MovingLandmarks = MovingLandmarks; return *this; }
90 
94  std::vector<double> GetMovingLandmarks() const { return this->m_MovingLandmarks; }
95 
99  SITK_RETURN_SELF_TYPE_HEADER SetLandmarkWeight ( const std::vector<double> & LandmarkWeight ) { this->m_LandmarkWeight = LandmarkWeight; return *this; }
100 
104  std::vector<double> GetLandmarkWeight() const { return this->m_LandmarkWeight; }
105 
109  SITK_RETURN_SELF_TYPE_HEADER SetReferenceImage ( const Image & ReferenceImage ) { this->m_ReferenceImage = ReferenceImage; return *this; }
110 
113  Image GetReferenceImage() const { return this->m_ReferenceImage; }
114 
118  SITK_RETURN_SELF_TYPE_HEADER SetBSplineNumberOfControlPoints ( unsigned int BSplineNumberOfControlPoints ) { this->m_BSplineNumberOfControlPoints = BSplineNumberOfControlPoints; return *this; }
119 
123  unsigned int GetBSplineNumberOfControlPoints() const { return this->m_BSplineNumberOfControlPoints; }
125  std::string GetName() const { return std::string ("LandmarkBasedTransformInitializerFilter"); }
126 
128  std::string ToString() const;
129 
130 
132  Transform Execute ( const Transform & transform );
133 
134 
136  Transform Execute ( const Transform & transform, const std::vector<double> & fixedLandmarks, const std::vector<double> & movingLandmarks, const std::vector<double> & landmarkWeight, const Image & referenceImage, unsigned int numberOfControlPoints );
137 
138 
139  private:
140 
143  typedef Transform (Self::*MemberFunctionType)( const Transform * transform );
144  template <class TImageType> Transform ExecuteInternal ( const Transform * transform );
145 
146 
147 
148  friend struct detail::MemberFunctionAddressor<MemberFunctionType>;
149 
150  nsstd::auto_ptr<detail::MemberFunctionFactory<MemberFunctionType> > m_MemberFactory;
151 
152 
153  /* */
154  std::vector<double> m_FixedLandmarks;
155  /* */
156  std::vector<double> m_MovingLandmarks;
157  /* */
158  std::vector<double> m_LandmarkWeight;
161  };
162 
163 
164 
173  SITKBasicFilters_EXPORT Transform LandmarkBasedTransformInitializer ( const Transform & transform, const std::vector<double> & fixedLandmarks = std::vector<double>(), const std::vector<double> & movingLandmarks = std::vector<double>(), const std::vector<double> & landmarkWeight = std::vector<double>(), const Image & referenceImage = Image(), unsigned int numberOfControlPoints = 4u );
174 
175  }
176 }
177 #endif
Self & SetMovingLandmarks(const std::vector< double > &MovingLandmarks)
Self & SetFixedLandmarks(const std::vector< double > &FixedLandmarks)
#define SITKBasicFilters_EXPORT
typelist::MakeTypeList< BasicPixelID< float > >::Type PixelIDTypeList
A simplified wrapper around a variety of ITK transforms.
Definition: sitkTransform.h:83
Self & SetBSplineNumberOfControlPoints(unsigned int BSplineNumberOfControlPoints)
The main Image class for SimpleITK.
Definition: sitkImage.h:54
Transform LandmarkBasedTransformInitializer(const Transform &transform, const std::vector< double > &fixedLandmarks=std::vector< double >(), const std::vector< double > &movingLandmarks=std::vector< double >(), const std::vector< double > &landmarkWeight=std::vector< double >(), const Image &referenceImage=Image(), unsigned int numberOfControlPoints=4u)
itk::simple::LandmarkBasedTransformInitializerFilter Procedural Interface
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
The base interface for SimpleITK filters that take one input image.
Self & SetLandmarkWeight(const std::vector< double > &LandmarkWeight)