File indexing completed on 2024-04-06 12:08:32
0001
0002 #ifndef DQM_SiStripCommissioningClients_FineDelayHistosUsingDb_H
0003 #define DQM_SiStripCommissioningClients_FineDelayHistosUsingDb_H
0004
0005 #include "Geometry/Records/interface/TrackerDigiGeometryRecord.h"
0006 #include "DQM/SiStripCommissioningClients/interface/SamplingHistograms.h"
0007 #include "DQM/SiStripCommissioningDbClients/interface/CommissioningHistosUsingDb.h"
0008 #include "OnlineDB/SiStripConfigDb/interface/SiStripConfigDb.h"
0009 #include <string>
0010 #include <map>
0011
0012 class TrackerGeometry;
0013
0014 class FineDelayHistosUsingDb : public CommissioningHistosUsingDb, public SamplingHistograms {
0015 public:
0016 FineDelayHistosUsingDb(const edm::ParameterSet& pset,
0017 DQMStore*,
0018 SiStripConfigDb* const,
0019 edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> tTopoToken,
0020 edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> tkGeomToken);
0021
0022 ~FineDelayHistosUsingDb() override;
0023
0024 void configure(const edm::ParameterSet&, const edm::EventSetup&) override;
0025
0026 void uploadConfigurations() override;
0027
0028 private:
0029 bool update(SiStripConfigDb::DeviceDescriptionsRange);
0030
0031 void update(SiStripConfigDb::FedDescriptionsRange);
0032
0033 void create(SiStripConfigDb::AnalysisDescriptionsV&, Analysis) override;
0034
0035 void computeDelays();
0036
0037 std::map<unsigned int, float> delays_;
0038
0039 edm::ESGetToken<TrackerGeometry, TrackerDigiGeometryRecord> tkGeomToken_;
0040 const TrackerGeometry* tracker_;
0041
0042 bool cosmic_;
0043 };
0044
0045 #endif