Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2023-03-17 10:44:29

0001 #ifndef CalibTracker_SiStripESProducers_Phase2TrackerCablingCfgESSource_H
0002 #define CalibTracker_SiStripESProducers_Phase2TrackerCablingCfgESSource_H
0003 
0004 #include "CalibTracker/SiStripESProducers/interface/Phase2TrackerCablingESProducer.h"
0005 #include "FWCore/Framework/interface/EventSetupRecordIntervalFinder.h"
0006 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0007 
0008 class Phase2TrackerCabling;
0009 class Phase2TrackerCablingRcd;
0010 
0011 class Phase2TrackerCablingCfgESSource : public Phase2TrackerCablingESProducer,
0012                                         public edm::EventSetupRecordIntervalFinder {
0013 public:
0014   explicit Phase2TrackerCablingCfgESSource(const edm::ParameterSet&);
0015   ~Phase2TrackerCablingCfgESSource() override;
0016 
0017 protected:
0018   void setIntervalFor(const edm::eventsetup::EventSetupRecordKey& key,
0019                       const edm::IOVSyncValue& iov_sync,
0020                       edm::ValidityInterval& iov_validity) override {
0021     edm::ValidityInterval infinity(iov_sync.beginOfTime(), iov_sync.endOfTime());
0022     iov_validity = infinity;
0023   }
0024 
0025 private:
0026   // Builds cabling map based on the ParameterSet
0027   Phase2TrackerCabling* make(const Phase2TrackerCablingRcd&) override;
0028 
0029   // The configuration used to generated the cabling record
0030   edm::ParameterSet pset_;
0031 };
0032 
0033 #endif  // CalibTracker_SiStripESProducers_Phase2TrackerCablingCfgESSource_H