Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:22:22

0001 #ifndef L1TriggerConfig_L1ScalesProducers_L1CaloInputScalesProducer_h
0002 #define L1TriggerConfig_L1ScalesProducers_L1CaloInputScalesProducer_h
0003 // -*- C++ -*-
0004 //
0005 // Package:     L1ScalesProducers
0006 // Class  :     L1CaloInputScalesProducer
0007 //
0008 /**\class L1CaloInputScalesProducer L1CaloInputScalesProducer.h L1TriggerConfig/L1ScalesProducers/interface/L1CaloInputScalesProducer.h
0009 
0010  Description: <one line class summary>
0011 
0012  Usage:
0013     <usage>
0014 
0015 */
0016 //
0017 // Original Author:  Werner Sun
0018 //         Created:  Fri May 30 18:25:56 CEST 2008
0019 //
0020 
0021 // system include files
0022 #include <memory>
0023 
0024 // user include files
0025 #include "FWCore/Framework/interface/ModuleFactory.h"
0026 #include "FWCore/Framework/interface/ESProducer.h"
0027 
0028 #include "CondFormats/L1TObjects/interface/L1CaloEcalScale.h"
0029 #include "CondFormats/L1TObjects/interface/L1CaloHcalScale.h"
0030 #include "CondFormats/DataRecord/interface/L1CaloEcalScaleRcd.h"
0031 #include "CondFormats/DataRecord/interface/L1CaloHcalScaleRcd.h"
0032 
0033 // forward declarations
0034 
0035 class L1CaloInputScalesProducer : public edm::ESProducer {
0036 public:
0037   L1CaloInputScalesProducer(const edm::ParameterSet&);
0038   ~L1CaloInputScalesProducer() override;
0039 
0040   //typedef std::shared_ptr<L1CaloInputScale> ReturnType;
0041 
0042   std::unique_ptr<L1CaloEcalScale> produceEcalScale(const L1CaloEcalScaleRcd&);
0043   std::unique_ptr<L1CaloHcalScale> produceHcalScale(const L1CaloHcalScaleRcd&);
0044 
0045 private:
0046   // ----------member data ---------------------------
0047   std::vector<double> m_ecalEtThresholdsPosEta;
0048   std::vector<double> m_ecalEtThresholdsNegEta;
0049   std::vector<double> m_hcalEtThresholdsPosEta;
0050   std::vector<double> m_hcalEtThresholdsNegEta;
0051 };
0052 
0053 #endif