Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:03:14

0001 #ifndef CondTools_L1TriggerExt_L1ObjectKeysOnlineProdBaseExt_h
0002 #define CondTools_L1TriggerExt_L1ObjectKeysOnlineProdBaseExt_h
0003 
0004 // system include files
0005 #include <memory>
0006 
0007 // user include files
0008 #include "FWCore/Framework/interface/ModuleFactory.h"
0009 #include "FWCore/Framework/interface/ESProducer.h"
0010 #include "FWCore/Framework/interface/ESConsumesCollector.h"
0011 
0012 #include "CondFormats/L1TObjects/interface/L1TriggerKeyExt.h"
0013 #include "CondFormats/DataRecord/interface/L1TriggerKeyExtRcd.h"
0014 
0015 #include "CondTools/L1Trigger/interface/OMDSReader.h"
0016 
0017 // forward declarations
0018 
0019 class L1ObjectKeysOnlineProdBaseExt : public edm::ESProducer {
0020 public:
0021   L1ObjectKeysOnlineProdBaseExt(const edm::ParameterSet&);
0022   ~L1ObjectKeysOnlineProdBaseExt() override;
0023 
0024   using ReturnType = std::unique_ptr<L1TriggerKeyExt>;
0025 
0026   ReturnType produce(const L1TriggerKeyExtRcd&);
0027 
0028   virtual void fillObjectKeys(L1TriggerKeyExt* pL1TriggerKey) = 0;
0029 
0030 private:
0031   // ----------member data ---------------------------
0032   const edm::ESGetToken<L1TriggerKeyExt, L1TriggerKeyExtRcd> L1TriggerKeyExt_token;
0033 
0034 protected:
0035   l1t::OMDSReader m_omdsReader;
0036 };
0037 
0038 #endif