Back to home page

Project CMSSW displayed by LXR

 
 

    


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  // DQM_SiStripCommissioningClients_FineDelayHistosUsingDb_H