42 {
43
45 DataReader *pDR = pickDataReader(fName);
46
47 if(!pDR) {
48 std::cerr << "Problem opening or reading the bytestream file "
49 <<
fName << std::endl;
50 return;
51 }
52
53 if(!pDR->good()) {
54 std::cerr <<
"No events in file "<<
fName << std::endl;
55 }
56
57 m_fmd.m_runNumbers.insert(pDR->runNumber());
58 m_fmd.m_lbNumbers.insert(pDR->lumiblockNumber());
59 m_fmd.m_project=pDR->projectTag();
60 m_fmd.m_stream=pDR->stream();
61 m_fmd.m_nEvents=pDR->eventsInFile();
62 m_fmd.m_beamEnergy=pDR->beamEnergy()*1000;
63 m_fmd.m_guid=pDR->GUID();
64
65 const unsigned bt=pDR->beamType();
66
67
68
69
70
71 switch (bt) {
72 case 0:
73 m_fmd.m_beamType=
"cosmics";
74 break;
75 case 1:
76 case 2:
77 m_fmd.m_beamType=
"collisions";
78 break;
79 default:
80 std::cerr << "WARNING: Unexpected beam type integer in BS file. Got " << bt << std::endl;
81 m_fmd.m_beamType=
"unknown";
82 }
83
84
86 const std::vector<std::string> fmds=pDR->freeMetaDataStrings();
87 std::string eventTypeMD;
88 for (const std::string& fm : fmds) {
92 }
93
94 if (eventTypeMD.find("is sim")!=std::string::npos) {
96 }
97
98
100 delete pDR;
101}
bool extractValue(std::string_view source, std::string_view key, std::string &value)