go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxFullSearchOptimizer.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright UMC Utrecht and contributors
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 __elxFullSearchOptimizer_h
19 #define __elxFullSearchOptimizer_h
20 
21 #include "elxIncludes.h" // include first to avoid MSVS warning
22 #include "itkFullSearchOptimizer.h"
23 #include <map>
24 
25 #include "itkNDImageBase.h"
26 
27 namespace elastix
28 {
29 
56 template< class TElastix >
57 class FullSearch :
58  public
60  public
61  OptimizerBase< TElastix >
62 {
63 public:
64 
66  typedef FullSearch Self;
69  typedef itk::SmartPointer< Self > Pointer;
70  typedef itk::SmartPointer< const Self > ConstPointer;
71 
73  itkNewMacro( Self );
74 
77 
82  elxClassNameMacro( "FullSearch" );
83 
98 
107 
111 
113  typedef std::map< unsigned int, std::string > DimensionNameMapType;
114  typedef typename DimensionNameMapType::const_iterator NameIteratorType;
115 
117  virtual void BeforeRegistration( void );
118 
119  virtual void BeforeEachResolution( void );
120 
121  virtual void AfterEachResolution( void );
122 
123  virtual void AfterEachIteration( void );
124 
125  virtual void AfterRegistration( void );
126 
130  itkGetObjectMacro( OptimizationSurface, NDImageType );
131 
132 protected:
133 
135  virtual ~FullSearch() {}
136 
138 
140 
145  //virtual int CheckSearchSpaceRangeDefinition(const std::string & fullFieldName,
146  // int errorcode, unsigned int entry_nr);
147  virtual bool CheckSearchSpaceRangeDefinition( const std::string & fullFieldName,
148  const bool found, const unsigned int entry_nr ) const;
149 
150 private:
151 
152  FullSearch( const Self & ); // purposely not implemented
153  void operator=( const Self & ); // purposely not implemented
154 
155 };
156 
157 } // end namespace elastix
158 
159 #ifndef ITK_MANUAL_INSTANTIATION
160 #include "elxFullSearchOptimizer.hxx"
161 #endif
162 
163 #endif // end #ifndef __elxFullSearchOptimizer_h
elastix::FullSearch::BeforeRegistration
virtual void BeforeRegistration(void)
elastix::FullSearch::RegistrationPointer
Superclass2::RegistrationPointer RegistrationPointer
Definition: elxFullSearchOptimizer.h:105
itkFullSearchOptimizer.h
elastix::FullSearch::ElastixType
Superclass2::ElastixType ElastixType
Definition: elxFullSearchOptimizer.h:100
elastix::FullSearch::SearchSpaceSizeType
Superclass1::SearchSpaceSizeType SearchSpaceSizeType
Definition: elxFullSearchOptimizer.h:97
itk::FullSearchOptimizer::RangeValueType
ParameterValueType RangeValueType
Definition: itkFullSearchOptimizer.h:75
elastix::OptimizerBase::RegistrationPointer
Superclass::RegistrationPointer RegistrationPointer
Definition: elxOptimizerBase.h:70
itk::NDImageBase
An image whose dimension can be specified at runtime.
Definition: itkNDImageBase.h:59
elastix::FullSearch::RegistrationType
Superclass2::RegistrationType RegistrationType
Definition: elxFullSearchOptimizer.h:104
SmartPointer< Self >
elastix::FullSearch::Superclass2
OptimizerBase< TElastix > Superclass2
Definition: elxFullSearchOptimizer.h:68
itk::FullSearchOptimizer::MeasureType
Superclass::MeasureType MeasureType
Definition: itkFullSearchOptimizer.h:72
elastix::FullSearch::ConfigurationPointer
Superclass2::ConfigurationPointer ConfigurationPointer
Definition: elxFullSearchOptimizer.h:103
elastix::FullSearch
An optimizer based on the itk::FullSearchOptimizer.
Definition: elxFullSearchOptimizer.h:62
elastix::OptimizerBase::RegistrationType
Superclass::RegistrationType RegistrationType
Definition: elxOptimizerBase.h:69
itk::FullSearchOptimizer::SearchSpacePointType
Array< ParameterValueType > SearchSpacePointType
Definition: itkFullSearchOptimizer.h:83
elastix::OptimizerBase::ConfigurationPointer
Superclass::ConfigurationPointer ConfigurationPointer
Definition: elxOptimizerBase.h:68
elastix::FullSearch::SearchSpaceType
Superclass1::SearchSpaceType SearchSpaceType
Definition: elxFullSearchOptimizer.h:92
elastix::FullSearch::Pointer
itk::SmartPointer< Self > Pointer
Definition: elxFullSearchOptimizer.h:69
elastix::FullSearch::NDImagePointer
NDImageType::Pointer NDImagePointer
Definition: elxFullSearchOptimizer.h:110
elastix::FullSearch::elxClassNameMacro
elxClassNameMacro("FullSearch")
itkNDImageBase.h
elastix::FullSearch::ParametersType
Superclass1::ParametersType ParametersType
Definition: elxFullSearchOptimizer.h:87
elastix::OptimizerBase
This class is the elastix base class for all Optimizers.
Definition: elxOptimizerBase.h:54
itk::FullSearchOptimizer
An optimizer based on full search.
Definition: itkFullSearchOptimizer.h:47
itk::FullSearchOptimizer::ParameterValueType
ParametersType::ValueType ParameterValueType
Definition: itkFullSearchOptimizer.h:74
elastix::FullSearch::DimensionNameMapType
std::map< unsigned int, std::string > DimensionNameMapType
Definition: elxFullSearchOptimizer.h:113
elastix::FullSearch::NameIteratorType
DimensionNameMapType::const_iterator NameIteratorType
Definition: elxFullSearchOptimizer.h:114
elastix::FullSearch::ConfigurationType
Superclass2::ConfigurationType ConfigurationType
Definition: elxFullSearchOptimizer.h:102
itk::FullSearchOptimizer::CostFunctionType
Superclass::CostFunctionType CostFunctionType
Definition: itkFullSearchOptimizer.h:70
elastix::FullSearch::RangeValueType
Superclass1::RangeValueType RangeValueType
Definition: elxFullSearchOptimizer.h:90
elastix::FullSearch::CheckSearchSpaceRangeDefinition
virtual bool CheckSearchSpaceRangeDefinition(const std::string &fullFieldName, const bool found, const unsigned int entry_nr) const
itk::FullSearchOptimizer::SearchSpaceIteratorType
SearchSpaceType::ConstIterator SearchSpaceIteratorType
Definition: itkFullSearchOptimizer.h:79
elastix::FullSearch::RangeType
Superclass1::RangeType RangeType
Definition: elxFullSearchOptimizer.h:91
elastix::OptimizerBase::ConfigurationType
Superclass::ConfigurationType ConfigurationType
Definition: elxOptimizerBase.h:67
elastix::FullSearch::AfterRegistration
virtual void AfterRegistration(void)
itk::FullSearchOptimizer::SearchSpacePointer
SearchSpaceType::Pointer SearchSpacePointer
Definition: itkFullSearchOptimizer.h:78
itk::FullSearchOptimizer::SearchSpaceIndexType
Array< IndexValueType > SearchSpaceIndexType
Definition: itkFullSearchOptimizer.h:87
elastix::FullSearch::AfterEachResolution
virtual void AfterEachResolution(void)
elastix::FullSearch::SearchSpaceIndexType
Superclass1::SearchSpaceIndexType SearchSpaceIndexType
Definition: elxFullSearchOptimizer.h:96
itk::FullSearchOptimizer::SearchSpaceSizeType
Array< SizeValueType > SearchSpaceSizeType
Definition: itkFullSearchOptimizer.h:90
elastix::FullSearch::~FullSearch
virtual ~FullSearch()
Definition: elxFullSearchOptimizer.h:135
elastix::FullSearch::MeasureType
Superclass1::MeasureType MeasureType
Definition: elxFullSearchOptimizer.h:88
elastix::FullSearch::ParameterValueType
Superclass1::ParameterValueType ParameterValueType
Definition: elxFullSearchOptimizer.h:89
elastix::FullSearch::FullSearch
FullSearch(const Self &)
elastix::OptimizerBase::ElastixPointer
Superclass::ElastixPointer ElastixPointer
Definition: elxOptimizerBase.h:66
elastix::FullSearch::AfterEachIteration
virtual void AfterEachIteration(void)
elxIncludes.h
elastix::FullSearch::SearchSpaceIteratorType
Superclass1::SearchSpaceIteratorType SearchSpaceIteratorType
Definition: elxFullSearchOptimizer.h:94
elastix::FullSearch::CostFunctionPointer
Superclass1::CostFunctionPointer CostFunctionPointer
Definition: elxFullSearchOptimizer.h:86
elastix::FullSearch::m_OptimizationSurface
NDImagePointer m_OptimizationSurface
Definition: elxFullSearchOptimizer.h:137
elastix::FullSearch::ElastixPointer
Superclass2::ElastixPointer ElastixPointer
Definition: elxFullSearchOptimizer.h:101
elastix::FullSearch::FullSearch
FullSearch()
elastix::FullSearch::CostFunctionType
Superclass1::CostFunctionType CostFunctionType
Definition: elxFullSearchOptimizer.h:85
elastix::FullSearch::operator=
void operator=(const Self &)
elastix::FullSearch::SearchSpacePointer
Superclass1::SearchSpacePointer SearchSpacePointer
Definition: elxFullSearchOptimizer.h:93
elastix::FullSearch::ConstPointer
itk::SmartPointer< const Self > ConstPointer
Definition: elxFullSearchOptimizer.h:70
elastix::FullSearch::NDImageType
itk::NDImageBase< float > NDImageType
Definition: elxFullSearchOptimizer.h:109
itk::FullSearchOptimizer::SearchSpaceType
MapContainer< unsigned int, RangeType > SearchSpaceType
Definition: itkFullSearchOptimizer.h:77
itk::FullSearchOptimizer::ParametersType
Superclass::ParametersType ParametersType
Definition: itkFullSearchOptimizer.h:69
elastix::FullSearch::m_SearchSpaceDimensionNames
DimensionNameMapType m_SearchSpaceDimensionNames
Definition: elxFullSearchOptimizer.h:139
elastix::OptimizerBase::ITKBaseType
itk::Optimizer ITKBaseType
Definition: elxOptimizerBase.h:73
elastix::FullSearch::Superclass1
itk::FullSearchOptimizer Superclass1
Definition: elxFullSearchOptimizer.h:67
elastix::FullSearch::Self
FullSearch Self
Definition: elxFullSearchOptimizer.h:66
elastix::FullSearch::SearchSpacePointType
Superclass1::SearchSpacePointType SearchSpacePointType
Definition: elxFullSearchOptimizer.h:95
elastix::FullSearch::BeforeEachResolution
virtual void BeforeEachResolution(void)
elastix::FullSearch::ITKBaseType
Superclass2::ITKBaseType ITKBaseType
Definition: elxFullSearchOptimizer.h:106
elastix::OptimizerBase::ElastixType
Superclass::ElastixType ElastixType
Definition: elxOptimizerBase.h:62
elastix
Definition: elxFixedGenericPyramid.h:25
itk::FullSearchOptimizer::CostFunctionPointer
Superclass::CostFunctionPointer CostFunctionPointer
Definition: itkFullSearchOptimizer.h:71
itk::FullSearchOptimizer::RangeType
FixedArray< RangeValueType, 3 > RangeType
Definition: itkFullSearchOptimizer.h:76


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.8.18 elastix logo