ATLAS Offline Software
FileMetaData_v1.h
Go to the documentation of this file.
1 // Dear emacs, this is -*- c++ -*-
2 
3 /*
4  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 #ifndef XAODMETADATA_VERSIONS_FILEMETADATA_V1_H
8 #define XAODMETADATA_VERSIONS_FILEMETADATA_V1_H
9 
10 // System include(s):
11 #include <cstdint>
12 #include <iosfwd>
13 #include <set>
14 #include <string>
15 #include <vector>
16 
17 // EDM include(s):
19 
20 namespace xAOD {
21 
35 
36  public:
39 
42 
44  bool operator==( const FileMetaData_v1& rhs ) const { return compareWith(rhs, std::set<std::string>()); };
46  bool operator!=( const FileMetaData_v1& rhs ) const;
47 
49  bool compareWith(const FileMetaData_v1& rhs, const std::set<std::string>& ignore ) const;
50 
52 
54  enum MetaDataType {
58  amiTag = 1,
64  dataType = 4,
72  beamType = 8,
74  mcProcID = 9,
76  simFlavour = 10,
80  mcCampaign = 12,
84  dataYear = 14,
86  END = 15
87  }; // enum MetaDataType
88 
90  bool value( MetaDataType type, std::string& val ) const;
92  bool value( const std::string& type, std::string& val ) const;
93 
95  bool setValue( MetaDataType type, const std::string& val );
97  bool setValue( const std::string& type, const std::string& val );
98 
100  bool value( MetaDataType type, uint32_t& val ) const;
102  bool value( const std::string& type, uint32_t& val ) const;
103 
107  bool setValue( const std::string& type, uint32_t val );
108 
110  bool value( MetaDataType type, float& val ) const;
112  bool value( const std::string& type, float& val ) const;
113 
115  bool setValue( MetaDataType type, float val );
117  bool setValue( const std::string& type, float val );
118 
120  bool value( MetaDataType type, bool& val ) const;
122  bool value( const std::string& type, bool& val ) const;
123 
125  bool setValue( MetaDataType type, bool val );
127  bool setValue( const std::string& type, bool val );
128 
130  bool value(const std::string& type, std::vector< uint32_t >& val) const;
131 
133  bool setValue(const std::string& type, const std::vector< uint32_t >& val);
134 
135  }; // class FileMetaData_v1
136 
138  std::ostream& operator<< ( std::ostream& out,
140 
141 } // namespace xAOD
142 
143 // Declare a base class for the type:
144 #include "xAODCore/BaseInfo.h"
146 
147 #endif // XAODMETADATA_VERSIONS_FILEMETADATA_V1_H
xAOD::FileMetaData_v1::AODCalibVersion
@ AODCalibVersion
Version of AODCalib that was used on the file last [string].
Definition: FileMetaData_v1.h:62
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
SG::AuxElement
Base class for elements of a container that can have aux data.
Definition: AuxElement.h:446
xAOD::FileMetaData_v1::compareWith
bool compareWith(const FileMetaData_v1 &rhs, const std::set< std::string > &ignore) const
Compare this FMD object with another, optionally ignoring some attributes.
Definition: FileMetaData_v1.cxx:25
python.AthDsoLogger.out
out
Definition: AthDsoLogger.py:71
BaseInfo.h
xAOD::FileMetaData_v1::operator!=
bool operator!=(const FileMetaData_v1 &rhs) const
Operator testing the inequality of two objects.
Definition: FileMetaData_v1.cxx:190
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
xAOD::FileMetaData_v1::beamEnergy
@ beamEnergy
Beam energy [float].
Definition: FileMetaData_v1.h:70
xAOD::FileMetaData_v1::value
bool value(MetaDataType type, std::string &val) const
Get a pre-defined string value out of the object.
Definition: FileMetaData_v1.cxx:195
xAOD::FileMetaData_v1::simFlavour
@ simFlavour
Fast or Full sim [string].
Definition: FileMetaData_v1.h:76
xAOD::FileMetaData_v1::mcCampaign
@ mcCampaign
MC campaign [string].
Definition: FileMetaData_v1.h:80
DiTauMassTools::ignore
void ignore(T &&)
Definition: PhysicsAnalysis/TauID/DiTauMassTools/DiTauMassTools/HelperFunctions.h:54
xAOD::FileMetaData_v1::mcProcID
@ mcProcID
Same as mc_channel_number [float].
Definition: FileMetaData_v1.h:74
xAOD::FileMetaData_v1::MetaDataType
MetaDataType
Pre-defined metadata value types.
Definition: FileMetaData_v1.h:54
xAOD::FileMetaData_v1
Class holding file-level metadata about an xAOD file.
Definition: FileMetaData_v1.h:34
xAOD::FileMetaData_v1::setValue
bool setValue(MetaDataType type, const std::string &val)
Set a pre-defined string value on the object.
Definition: FileMetaData_v1.cxx:233
xAOD::FileMetaData_v1::amiTag
@ amiTag
AMI tag used to process the file the last time [string].
Definition: FileMetaData_v1.h:58
xAOD::FileMetaData_v1::geometryVersion
@ geometryVersion
Geometry version [string].
Definition: FileMetaData_v1.h:66
xAOD::FileMetaData_v1::END
@ END
End marker.
Definition: FileMetaData_v1.h:86
Pythia8_RapidityOrderMPI.val
val
Definition: Pythia8_RapidityOrderMPI.py:14
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
xAOD::FileMetaData_v1::generatorsInfo
@ generatorsInfo
Generators information [string].
Definition: FileMetaData_v1.h:82
xAOD::FileMetaData_v1::AODFixVersion
@ AODFixVersion
Version of AODFix that was used on the file last [string].
Definition: FileMetaData_v1.h:60
xAOD::FileMetaData_v1::beamType
@ beamType
Beam type [string].
Definition: FileMetaData_v1.h:72
xAOD::FileMetaData_v1::dataYear
@ dataYear
Data year [uint32_t].
Definition: FileMetaData_v1.h:84
xAOD::FileMetaData_v1::operator==
bool operator==(const FileMetaData_v1 &rhs) const
Operator testing the equality of two objects.
Definition: FileMetaData_v1.h:44
xAOD::FileMetaData_v1::FileMetaData_v1
FileMetaData_v1()
Default constructor.
Definition: FileMetaData_v1.cxx:21
SG_BASE
SG_BASE(xAOD::FileMetaData_v1, SG::AuxElement)
xAOD::FileMetaData_v1::isDataOverlay
@ isDataOverlay
Used data overlay for backgrounds [bool].
Definition: FileMetaData_v1.h:78
xAOD::FileMetaData_v1::conditionsTag
@ conditionsTag
Conditions version used for simulation/reconstruction [string].
Definition: FileMetaData_v1.h:68
xAOD::FileMetaData_v1::dataType
@ dataType
Data type that's in the file [string].
Definition: FileMetaData_v1.h:64
AuxElement.h
Base class for elements of a container that can have aux data.
xAOD::operator<<
std::ostream & operator<<(std::ostream &out, const std::pair< FIRST, SECOND > &pair)
Helper print operator.
Definition: RDataSource.cxx:53
xAOD::FileMetaData_v1::productionRelease
@ productionRelease
Release that was used to make the file [string].
Definition: FileMetaData_v1.h:56