00001 /*========================================================================= 00002 00003 Program: F.R.E.E. - flexible registration evaluation engine 00004 Version: v.1.0.0 00005 Date: $Date: 2006/09/01 12:00:00 $ 00006 Module: $RCSfile: freAdaptationComponent.h,v $ 00007 Language: C++ 00008 00009 00010 00011 Copyright (c) 2007 Ralf o Floca (Department of Medical Informatics, 00012 Institute for Medical Biometry and Informatics, University of Heidelberg, 00013 Germany). All rights reserved. 00014 See FREECopyright.txt or http://www.mi.med.uni-hd.de/free/copyright.htm 00015 for details. 00016 00017 This software is distributed WITHOUT ANY WARRANTY; without even 00018 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00019 PURPOSE. See the above copyright notices for more information. 00020 00021 =========================================================================*/ 00022 #ifndef __freAdaptationComponent_h 00023 #define __freAdaptationComponent_h 00024 00025 #include "freComponentSetup.h" 00026 #include "freIDPath.h" 00027 00028 namespace FREE 00029 { 00030 namespace Adaptation 00031 { 00032 00037 class AdaptationComponent : public ComponentSetup 00038 { 00039 public: 00040 typedef AdaptationComponent Self; 00041 typedef ComponentSetup Superclass; 00042 typedef itk::SmartPointer<Self> Pointer; 00043 typedef itk::SmartPointer<const Self> ConstPointer; 00044 00045 itkTypeMacro(AdaptationComponent, ComponentSetup); 00046 itkNewMacro(AdaptationComponent); 00047 00048 enum AdaptationMode 00049 { 00050 AMUnknown = 0, 00051 AMOverwrite = 1, 00052 AMReplace = 2, 00053 AMExtend = 3, 00054 AMAdapt = 4 00055 }; 00056 00059 void SetComponentPath( const IDPath& idPath ); 00062 const IDPath& GetComponentPath() const { return m_ComponentPath; }; 00063 00066 void SetAdaptationMode( const AdaptationMode& am ); 00069 const AdaptationMode& GetAdaptationMode() const { return m_AdaptationMode; }; 00070 00072 virtual AdaptationComponent& operator = (const AdaptationComponent& rComponentSetup); 00073 00076 virtual void Reset(); 00077 00078 protected: 00079 AdaptationComponent(); 00080 00081 virtual ~AdaptationComponent(); 00082 00084 virtual void AttributesLoadProcessing(const AttributesType& rAttributes); 00085 00087 virtual void SaveAttributes(AttributesSaveListType& rAttributes) const; 00088 00090 IDPath m_ComponentPath; 00091 00093 AdaptationMode m_AdaptationMode; 00094 00095 private: 00097 AdaptationComponent( const AdaptationComponent& rComponentSetup ); 00098 00099 }; 00100 00101 }//end of namespace Adaptation 00102 00103 namespace Convert 00104 { 00105 std::string ToStr(const Adaptation::AdaptationComponent::AdaptationMode& am); 00106 Adaptation::AdaptationComponent::AdaptationMode ToAdaptationMode(const std::string& sValue); 00107 } 00108 00109 }//end of namespace FREE 00110 00111 #endif
1.5.3 written by Dimitri van Heesch,
© 1997-2000