00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __freStatisticValueDefinition_h
00022 #define __freStatisticValueDefinition_h
00023
00024 #include "freElementals.h"
00025 #include "freXMLStreamObject.h"
00026
00027 namespace FREE
00028 {
00029
00030 freXMLTagMacro(StatisticValueReference, "freStat:RefID");
00031 freXMLTagMacro(StatisticValueDefinition, "freStat:ValueDefinition");
00032 freXMLTagMacro(StatisticValueDefName, "freStat:Name");
00033 freXMLTagMacro(StatisticValueDefType, "freStat:Type");
00034 freXMLTagMacro(StatisticValueDefDescription, "freStat:Description");
00035 freXMLTagMacro(StatisticValueDefIDPath, "freStat:ComponentIDPath");
00036
00044 class StatisticValueDefinition: public XMLStreamObject, public itk::LightObject
00045 {
00046 public:
00047 typedef StatisticValueDefinition Self;
00048 typedef itk::LightObject Superclass;
00049 typedef itk::SmartPointer<Self> Pointer;
00050 typedef itk::SmartPointer<const Self> ConstPointer;
00051
00052 itkTypeMacro(StatisticValueDefinition, XMLStreamObject);
00053 itkNewMacro(StatisticValueDefinition);
00054
00055 typedef unsigned long IDType;
00056
00058 virtual void Reset();
00059
00060 void SetName(const std::string& sName)
00061 {m_sName = sName;};
00062
00063 const std::string& GetName() const
00064 {return m_sName;};
00065
00066 void SetIDPath(const std::string& sIDPath)
00067 {m_sIDPath = sIDPath;};
00068
00069 const std::string& GetIDPath() const
00070 {return m_sIDPath;};
00071
00072 void SetDescription(const std::string& sDescription)
00073 {m_sDescription = sDescription;};
00074
00075 const std::string& GetDescription() const
00076 {return m_sDescription;};
00077
00078 void SetType(const std::string& sType)
00079 {m_sType = sType;};
00080
00081 const std::string& GetType() const
00082 {return m_sType;};
00083
00084 void SetRefID(const IDType& id)
00085 {m_RefID = id;};
00086
00087 const IDType& GetRefID() const
00088 {return m_RefID;};
00089
00091 virtual StatisticValueDefinition& operator = (const StatisticValueDefinition& rEntry);
00092
00093 protected:
00094 std::string m_sName;
00095 std::string m_sIDPath;
00096 std::string m_sDescription;
00097 std::string m_sType;
00098 IDType m_RefID;
00099
00100 StatisticValueDefinition();
00101 virtual ~StatisticValueDefinition();
00102
00104 virtual void SubElementLoadProcessing(const std::string& rsXMLSubTag, const std::string& rsXMLSubElement, const std::string& rsXMLSubData);
00105
00107 virtual std::string SaveData(const unsigned int& iDepth, bool& bHasSubElements) const;
00108 };
00109
00110 }
00111
00112 #endif