00001
00002
00011 #ifndef ATHCONTAINERSINTERFACES_AUXDATAOPTION_H
00012 #define ATHCONTAINERSINTERFACES_AUXDATAOPTION_H
00013
00014
00015 #include <string>
00016
00017
00018 namespace SG {
00019
00020
00031 class AuxDataOption
00032 {
00033 public:
00039 AuxDataOption (const std::string& name, int val);
00040
00041
00047 AuxDataOption (const std::string& name, float val);
00048
00049
00055 AuxDataOption (const std::string& name, double val);
00056
00057
00061 std::string name() const;
00062
00063
00067 int intVal() const;
00068
00069
00073 float floatVal() const;
00074
00075
00076 private:
00078 std::string m_name;
00079
00081 bool m_isInt;
00082
00084 union {
00085 float f;
00086 int i;
00087 } m_val;
00088 };
00089
00090
00091 }
00092
00093
00094 #include "AthContainersInterfaces/AuxDataOption.icc"
00095
00096
00097 #endif // not ATHCONTAINERSINTERFACES_AUXDATAOPTION_H