File indexing completed on 2024-04-06 12:21:07
0001 #ifndef L1T_OmtfP1_L1TMuonOverlapPhase1ParamsESProducer_H
0002 #define L1T_OmtfP1_L1TMuonOverlapPhase1ParamsESProducer_H
0003
0004 #include "L1Trigger/L1TMuonOverlapPhase1/interface/Omtf/OMTFConfiguration.h"
0005 #include "L1Trigger/L1TMuonOverlapPhase1/interface/Omtf/XMLConfigReader.h"
0006
0007 #include "FWCore/Framework/interface/ModuleFactory.h"
0008 #include "FWCore/Framework/interface/ESProducer.h"
0009 #include "FWCore/Framework/interface/ESHandle.h"
0010 #include "FWCore/Framework/interface/ESProducts.h"
0011
0012 #include "CondFormats/L1TObjects/interface/L1TMuonOverlapParams.h"
0013 #include "CondFormats/DataRecord/interface/L1TMuonOverlapParamsRcd.h"
0014
0015 #include <memory>
0016
0017 class L1TMuonOverlapPhase1ParamsESProducer : public edm::ESProducer {
0018 public:
0019 L1TMuonOverlapPhase1ParamsESProducer(const edm::ParameterSet&);
0020 ~L1TMuonOverlapPhase1ParamsESProducer() override;
0021
0022 typedef std::shared_ptr<L1TMuonOverlapParams> ReturnType;
0023
0024 ReturnType produceParams(const L1TMuonOverlapParamsRcd&);
0025
0026 ReturnType producePatterns(const L1TMuonOverlapParamsRcd&);
0027
0028 private:
0029
0030
0031
0032 bool readPatternsXML(XMLConfigReader& aReader);
0033
0034
0035 bool readConnectionsXML(const XMLConfigReader& aReader);
0036
0037 L1TMuonOverlapParams params;
0038 L1TMuonOverlapParams patterns;
0039 };
0040
0041 #endif