Back to home page

Project CMSSW displayed by LXR

 
 

    


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   ///Read Golden Patters from single XML file.
0030   ///XMLConfigReader  state is modified, as it hold
0031   ///cache of the Golden Patters read from XML file.
0032   bool readPatternsXML(XMLConfigReader& aReader);
0033 
0034   ///Read Connections from single XML file.
0035   bool readConnectionsXML(const XMLConfigReader& aReader);
0036 
0037   L1TMuonOverlapParams params;
0038   L1TMuonOverlapParams patterns;
0039 };
0040 
0041 #endif  //L1T_OmtfP1_L1TMuonOverlapPhase1ParamsESProducer_H