Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 //-------------------------------------------------
0002 //
0003 //   \class L1MuTriggerPtScaleOnlineProducer
0004 //
0005 //   Description:  A class to produce the L1 mu emulator scales record in the event setup
0006 //
0007 //
0008 //   Author :
0009 //   W. Sun (copied from L1MuTriggerScalesProducer)
0010 //
0011 //--------------------------------------------------
0012 #ifndef L1ScalesProducers_L1MuTriggerPtScaleOnlineProducer_h
0013 #define L1ScalesProducers_L1MuTriggerPtScaleOnlineProducer_h
0014 
0015 // system include files
0016 #include <memory>
0017 #include <vector>
0018 
0019 // user include files
0020 #include "CondTools/L1Trigger/interface/L1ConfigOnlineProdBase.h"
0021 
0022 #include "FWCore/Framework/interface/ESHandle.h"
0023 
0024 #include "L1TriggerConfig/L1ScalesProducers/interface/ScaleRecordHelper.h"
0025 #include "CondFormats/L1TObjects/interface/L1MuTriggerPtScale.h"
0026 #include "CondFormats/DataRecord/interface/L1MuTriggerPtScaleRcd.h"
0027 
0028 //
0029 // class declaration
0030 //
0031 
0032 class L1MuTriggerPtScaleOnlineProducer : public L1ConfigOnlineProdBase<L1MuTriggerPtScaleRcd, L1MuTriggerPtScale> {
0033 public:
0034   L1MuTriggerPtScaleOnlineProducer(const edm::ParameterSet&);
0035   ~L1MuTriggerPtScaleOnlineProducer() override;
0036 
0037   std::unique_ptr<L1MuTriggerPtScale> newObject(const std::string& objectKey) override;
0038 
0039 private:
0040   // ----------member data ---------------------------
0041 
0042   bool m_signedPacking;
0043   unsigned int m_nbitsPacking;
0044   unsigned int m_nBins;
0045 };
0046 
0047 #endif