File indexing completed on 2023-03-17 10:48:29
0001 #ifndef CondTools_L1TriggerExt_L1ObjectKeysOnlineProdBaseExt_h
0002 #define CondTools_L1TriggerExt_L1ObjectKeysOnlineProdBaseExt_h
0003
0004
0005 #include <memory>
0006
0007
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
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
0032 const edm::ESGetToken<L1TriggerKeyExt, L1TriggerKeyExtRcd> L1TriggerKeyExt_token;
0033
0034 protected:
0035 l1t::OMDSReader m_omdsReader;
0036 };
0037
0038 #endif