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  This file is part of the elastix software.
4 
5  Copyright (c) University Medical Center Utrecht. All rights reserved.
6  See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for
7  details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notices for more information.
12 
13 ======================================================================*/
14 
15 
16 #ifndef __elxFullSearchOptimizer_h
17 #define __elxFullSearchOptimizer_h
18 
19 #include "itkFullSearchOptimizer.h"
20 #include "elxIncludes.h"
21 #include <map>
22 
23 #include "itkNDImageBase.h"
24 
25 
26 namespace elastix
27 {
28 
55  template <class TElastix>
56  class FullSearch :
57  public
59  public
60  OptimizerBase<TElastix>
61  {
62  public:
63 
65  typedef FullSearch Self;
68  typedef itk::SmartPointer<Self> Pointer;
69  typedef itk::SmartPointer<const Self> ConstPointer;
70 
72  itkNewMacro( Self );
73 
75  itkTypeMacro( FullSearch, itk::FullSearchOptimizer );
76 
81  elxClassNameMacro( "FullSearch" );
82 
97 
106 
110 
112  typedef std::map<unsigned int, std::string> DimensionNameMapType;
113  typedef typename DimensionNameMapType::const_iterator NameIteratorType;
114 
116  virtual void BeforeRegistration( void );
117  virtual void BeforeEachResolution( void );
118  virtual void AfterEachResolution( void );
119  virtual void AfterEachIteration( void );
120  virtual void AfterRegistration( void );
124  itkGetObjectMacro( OptimizationSurface, NDImageType );
125 
126  protected:
127 
128  FullSearch();
129  virtual ~FullSearch() {};
130 
132 
134 
139  //virtual int CheckSearchSpaceRangeDefinition(const std::string & fullFieldName,
140  // int errorcode, unsigned int entry_nr);
141  virtual bool CheckSearchSpaceRangeDefinition( const std::string & fullFieldName,
142  const bool found, const unsigned int entry_nr ) const;
143 
144  private:
145 
146  FullSearch( const Self& ); // purposely not implemented
147  void operator=( const Self& ); // purposely not implemented
148 
149  }; // end class FullSearch
150 
151 } // end namespace elastix
152 
153 #ifndef ITK_MANUAL_INSTANTIATION
154 #include "elxFullSearchOptimizer.hxx"
155 #endif
156 
157 #endif // end #ifndef __elxFullSearchOptimizer_h
itk::NDImageBase< float > NDImageType
itk::FullSearchOptimizer Superclass1
Superclass::RegistrationPointer RegistrationPointer
Superclass2::ConfigurationPointer ConfigurationPointer
Superclass1::CostFunctionPointer CostFunctionPointer
FixedArray< RangeValueType, 3 > RangeType
Superclass1::SearchSpacePointer SearchSpacePointer
Superclass1::CostFunctionType CostFunctionType
Superclass1::ParametersType ParametersType
SmartPointer< Self > Pointer
Superclass1::MeasureType MeasureType
This class is the elastix base class for all Optimizers.
Superclass1::ParameterValueType ParameterValueType
DimensionNameMapType m_SearchSpaceDimensionNames
virtual bool CheckSearchSpaceRangeDefinition(const std::string &fullFieldName, const bool found, const unsigned int entry_nr) const
virtual void BeforeRegistration(void)
ParameterValueType RangeValueType
virtual void AfterRegistration(void)
Superclass1::SearchSpaceIndexType SearchSpaceIndexType
MapContainer< unsigned int, RangeType > SearchSpaceType
Superclass::ElastixType ElastixType
Superclass::CostFunctionType CostFunctionType
Superclass::ConfigurationPointer ConfigurationPointer
NDImageType::Pointer NDImagePointer
Superclass2::ConfigurationType ConfigurationType
Superclass1::RangeValueType RangeValueType
Superclass2::ElastixType ElastixType
SearchSpaceType::ConstIterator SearchSpaceIteratorType
void operator=(const Self &)
virtual void BeforeEachResolution(void)
Superclass::ElastixPointer ElastixPointer
SearchSpaceType::Pointer SearchSpacePointer
An optimizer based on the itk::FullSearchOptimizer.
elxClassNameMacro("FullSearch")
Superclass::ConfigurationType ConfigurationType
Superclass1::RangeType RangeType
Superclass1::SearchSpacePointType SearchSpacePointType
An image whose dimension can be specified at runtime.
Superclass::CostFunctionPointer CostFunctionPointer
Array< ParameterValueType > SearchSpacePointType
virtual void AfterEachIteration(void)
NDImagePointer m_OptimizationSurface
itk::SmartPointer< Self > Pointer
DimensionNameMapType::const_iterator NameIteratorType
itk::SmartPointer< const Self > ConstPointer
itk::Optimizer ITKBaseType
Array< SizeValueType > SearchSpaceSizeType
Array< IndexValueType > SearchSpaceIndexType
An optimizer based on full search.
Superclass2::ElastixPointer ElastixPointer
Superclass2::ITKBaseType ITKBaseType
Superclass1::SearchSpaceIteratorType SearchSpaceIteratorType
Superclass1::SearchSpaceType SearchSpaceType
Superclass2::RegistrationPointer RegistrationPointer
Superclass1::SearchSpaceSizeType SearchSpaceSizeType
virtual void AfterEachResolution(void)
ParametersType::ValueType ParameterValueType
Superclass::MeasureType MeasureType
OptimizerBase< TElastix > Superclass2
Superclass::ParametersType ParametersType
Superclass2::RegistrationType RegistrationType
Superclass::RegistrationType RegistrationType
std::map< unsigned int, std::string > DimensionNameMapType


Generated on 04-01-2014 for elastix by doxygen 1.8.5 elastix logo