![]() |
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 00027 #ifndef __elxBaseComponent_h 00028 #define __elxBaseComponent_h 00029 00031 #ifdef _MSC_VER 00032 #pragma warning ( disable : 4786 ) 00033 #pragma warning ( disable : 4503 ) 00034 #endif 00035 00036 #include <iostream> 00037 #include <sstream> 00038 00040 #define __ELASTIX_VERSION 4.500 00041 00043 namespace elastix 00044 { 00045 00061 class BaseComponent 00062 { 00063 public: 00064 00071 virtual int BeforeAllBase(void) { return 0;}; 00072 virtual int BeforeAll(void) { return 0;}; 00073 00080 virtual void BeforeRegistrationBase(void) {}; 00081 virtual void BeforeEachResolutionBase(void) {}; 00082 virtual void AfterEachResolutionBase(void) {}; 00083 virtual void AfterEachIterationBase(void) {}; 00084 virtual void AfterRegistrationBase(void) {}; 00085 00092 virtual void BeforeRegistration(void) {}; 00093 virtual void BeforeEachResolution(void) {}; 00094 virtual void AfterEachResolution(void) {}; 00095 virtual void AfterEachIteration(void) {}; 00096 virtual void AfterRegistration(void) {}; 00097 00103 virtual const char * elxGetClassName( void ) const 00104 { 00105 return "BaseComponent"; 00106 } 00107 00115 virtual void SetComponentLabel( const char * label, unsigned int idx) 00116 { 00117 std::ostringstream makestring; 00118 makestring << label << idx; 00119 this->m_ComponentLabel = makestring.str(); 00120 } 00121 00123 virtual const char * GetComponentLabel( void ) const 00124 { 00125 return this->m_ComponentLabel.c_str(); 00126 } 00127 00128 protected: 00129 00130 BaseComponent() {} 00131 virtual ~BaseComponent() {} 00132 00133 private: 00134 00135 BaseComponent( const BaseComponent & ); // purposely not implemented 00136 void operator=( const BaseComponent & ); // purposely not implemented 00137 00138 std::string m_ComponentLabel; 00139 00140 }; // end class BaseComponent 00141 00142 00143 } // end namespace elastix 00144 00146 namespace elx = elastix; 00147 00148 00149 #endif // end #ifndef __elxBaseComponent_h 00150
Generated on 24-10-2011 for elastix by ![]() |
![]() |