00001
00002
00003 #ifndef XAODMETADATA_VERSIONS_FILEMETADATA_V1_H
00004 #define XAODMETADATA_VERSIONS_FILEMETADATA_V1_H
00005
00006
00007 #include <iosfwd>
00008
00009
00010 #include "AthContainers/AuxElement.h"
00011
00012 namespace xAOD {
00013
00026 class FileMetaData_v1 : public SG::AuxElement {
00027
00028 public:
00030 FileMetaData_v1();
00031
00034
00036 bool operator==( const FileMetaData_v1& rhs );
00038 bool operator!=( const FileMetaData_v1& rhs );
00039
00041
00043 enum MetaDataType {
00045 productionRelease = 0,
00047 amiTag = 1,
00049 AODFixVersion = 2,
00051 AODCalibVersion = 3,
00053 dataType = 4,
00055 geometryVersion = 5,
00057 conditionsTag = 6,
00059 beamEnergy = 7,
00061 beamType = 8,
00063 mcProcID = 9,
00065 simFlavour = 10,
00067 END = 11
00068 };
00069
00071 bool value( MetaDataType type, std::string& val ) const;
00073 bool value( const std::string& type, std::string& val ) const;
00074
00076 bool setValue( MetaDataType type, const std::string& val );
00078 bool setValue( const std::string& type, const std::string& val );
00079
00081 bool value( MetaDataType type, float& val ) const;
00083 bool value( const std::string& type, float& val ) const;
00084
00086 bool setValue( MetaDataType type, float val );
00088 bool setValue( const std::string& type, float val );
00089
00090 };
00091
00092 }
00093
00095 std::ostream& operator<< ( std::ostream& out,
00096 xAOD::FileMetaData_v1::MetaDataType type );
00097
00098
00099 #include "xAODCore/BaseInfo.h"
00100 SG_BASE( xAOD::FileMetaData_v1, SG::AuxElement );
00101
00102 #endif // XAODMETADATA_VERSIONS_FILEMETADATA_V1_H