![]() |
Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages |
00001 /*====================================================================== 00002 00003 This file is part of the elastix software. 00004 00005 Copyright (c) University Medical Center Utrecht. All rights reserved. 00006 See src/CopyrightElastix.txt or http://elastix.isi.uu.nl/legal.php for 00007 details. 00008 00009 This software is distributed WITHOUT ANY WARRANTY; without even 00010 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. See the above copyright notices for more information. 00012 00013 ======================================================================*/ 00014 00015 #ifndef __elxRSGDEachParameterApart_h 00016 #define __elxRSGDEachParameterApart_h 00017 00018 #include "itkRSGDEachParameterApartOptimizer.h" 00019 #include "elxIncludes.h" 00020 00021 namespace elastix 00022 { 00023 using namespace itk; 00024 00069 template <class TElastix> 00070 class RSGDEachParameterApart : 00071 public 00072 itk::RSGDEachParameterApartOptimizer, 00073 public 00074 OptimizerBase<TElastix> 00075 { 00076 public: 00077 00079 typedef RSGDEachParameterApart Self; 00080 typedef RSGDEachParameterApartOptimizer Superclass1; 00081 typedef OptimizerBase<TElastix> Superclass2; 00082 typedef SmartPointer<Self> Pointer; 00083 typedef SmartPointer<const Self> ConstPointer; 00084 00086 itkNewMacro( Self ); 00087 00089 itkTypeMacro( RSGDEachParameterApart, RSGDEachParameterApartOptimizer ); 00090 00095 elxClassNameMacro( "RSGDEachParameterApart" ); 00096 00098 typedef Superclass1::CostFunctionType CostFunctionType; 00099 typedef Superclass1::CostFunctionPointer CostFunctionPointer; 00100 00102 typedef typename Superclass2::ElastixType ElastixType; 00103 typedef typename Superclass2::ElastixPointer ElastixPointer; 00104 typedef typename Superclass2::ConfigurationType ConfigurationType; 00105 typedef typename Superclass2::ConfigurationPointer ConfigurationPointer; 00106 typedef typename Superclass2::RegistrationType RegistrationType; 00107 typedef typename Superclass2::RegistrationPointer RegistrationPointer; 00108 typedef typename Superclass2::ITKBaseType ITKBaseType; 00109 00111 typedef typename Superclass1::ParametersType ParametersType; 00112 00114 virtual void BeforeRegistration(void); 00115 virtual void BeforeEachResolution(void); 00116 virtual void AfterEachResolution(void); 00117 virtual void AfterEachIteration(void); 00118 virtual void AfterRegistration(void); 00119 00124 virtual void SetInitialPosition( const ParametersType & param ); 00125 00126 protected: 00127 00128 RSGDEachParameterApart(){}; 00129 virtual ~RSGDEachParameterApart() {}; 00130 00131 private: 00132 00133 RSGDEachParameterApart( const Self& ); // purposely not implemented 00134 void operator=( const Self& ); // purposely not implemented 00135 00136 }; // end class RSGDEachParameterApart 00137 00138 00139 } // end namespace elastix 00140 00141 #ifndef ITK_MANUAL_INSTANTIATION 00142 #include "elxRSGDEachParameterApart.hxx" 00143 #endif 00144 00145 #endif // end #ifndef __elxRSGDEachParameterApart_h
Generated on 24-10-2011 for elastix by ![]() |
![]() |