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: freAdaptation.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 __freAdaptation_h 00023 #define __freAdaptation_h 00024 00025 #include "freAdaptationComponent.h" 00026 #include "freXMLCollectionBase.h" 00027 00028 #include "itkLightObject.h" 00029 namespace FREE 00030 { 00031 namespace Adaptation 00032 { 00033 00042 class Adaptation : public XMLCollectionBase<AdaptationComponent>, public itk::LightObject 00043 { 00044 public: 00045 typedef Adaptation Self; 00046 typedef XMLCollectionBase<AdaptationComponent> Superclass; 00047 typedef itk::SmartPointer<Self> Pointer; 00048 typedef itk::SmartPointer<const Self> ConstPointer; 00049 00050 itkTypeMacro(Adaptation, XMLCollectionBase<AdaptationComponent>); 00051 itkNewMacro(Adaptation); 00052 00053 void SetID(std::string sID) {m_sID = sID; }; 00054 std::string GetID() const { return m_sID; }; 00055 00056 void SetDescription(std::string sDescription) {m_sDescription = sDescription; }; 00057 std::string GetDescription() const { return m_sDescription; }; 00058 00060 virtual void Reset(); 00061 00063 Adaptation& operator = (const Adaptation& rSetup); 00064 00065 protected: 00066 Adaptation(); 00067 ~Adaptation(); 00068 00069 std::string m_sDescription; 00070 std::string m_sID; 00071 00073 virtual void SubElementLoadProcessing(const std::string& rsXMLSubTag, const std::string& rsXMLSubElement, const std::string& rsXMLSubData); 00074 00076 virtual std::string SaveData(const unsigned int& iDepth, bool& bHasSubElements) const; 00077 00079 virtual void AttributesLoadProcessing(const AttributesType& rAttributes); 00080 00082 virtual void SaveAttributes(AttributesSaveListType& rAttributes) const; 00083 private: 00084 //suppresses the default copy constructor 00085 Adaptation(const Adaptation& rSetup); 00086 }; 00087 00088 }//End of Namespace free 00089 }//End of Namespace ImageAdaption 00090 00091 #endif
1.5.3 written by Dimitri van Heesch,
© 1997-2000