File indexing completed on 2024-04-06 12:07:17
0001 #ifndef DQM_EcalMonitorDbModule_EcalDQMStatusWriter_h
0002 #define DQM_EcalMonitorDbModule_EcalDQMStatusWriter_h
0003
0004 #include "FWCore/Framework/interface/one/EDAnalyzer.h"
0005
0006 #include "CondFormats/EcalObjects/interface/EcalDQMChannelStatus.h"
0007 #include "CondFormats/EcalObjects/interface/EcalDQMTowerStatus.h"
0008
0009 #include "Geometry/EcalMapping/interface/EcalElectronicsMapping.h"
0010 #include "Geometry/EcalMapping/interface/EcalMappingRcd.h"
0011
0012 #include <fstream>
0013
0014 class EcalDQMStatusWriter : public edm::one::EDAnalyzer<edm::one::WatchRuns> {
0015 public:
0016 EcalDQMStatusWriter(edm::ParameterSet const &);
0017 ~EcalDQMStatusWriter() override {}
0018
0019 private:
0020 void analyze(edm::Event const &, edm::EventSetup const &) override;
0021 void beginRun(edm::Run const &, edm::EventSetup const &) override;
0022 void endRun(edm::Run const &, edm::EventSetup const &) override;
0023
0024 EcalDQMChannelStatus channelStatus_;
0025 EcalDQMTowerStatus towerStatus_;
0026 unsigned firstRun_;
0027 std::ifstream inputFile_;
0028
0029 EcalElectronicsMapping const *electronicsMap_;
0030 edm::ESGetToken<EcalElectronicsMapping, EcalMappingRcd> elecMapHandle_;
0031 void setElectronicsMap(edm::EventSetup const &);
0032 EcalElectronicsMapping const *GetElectronicsMap();
0033 };
0034
0035 #endif