00001 //------------------------------------------------- 00002 // 00003 // \class L1MuTriggerPtScaleProducer 00004 // 00005 // Description: A class to produce the L1 mu emulator scales record in the event setup 00006 // 00007 // $Date: 2008/04/17 23:33:09 $ 00008 // $Revision: 1.1 $ 00009 // 00010 // Author : 00011 // W. Sun (copied from L1MuTriggerScalesProducer) 00012 // 00013 //-------------------------------------------------- 00014 #ifndef L1ScalesProducers_L1MuTriggerPtScaleProducer_h 00015 #define L1ScalesProducers_L1MuTriggerPtScaleProducer_h 00016 00017 // system include files 00018 #include <memory> 00019 #include <boost/shared_ptr.hpp> 00020 #include <vector> 00021 00022 // user include files 00023 #include "FWCore/Framework/interface/ModuleFactory.h" 00024 #include "FWCore/Framework/interface/ESProducer.h" 00025 00026 #include "FWCore/Framework/interface/ESHandle.h" 00027 00028 #include "CondFormats/L1TObjects/interface/L1MuTriggerPtScale.h" 00029 #include "CondFormats/DataRecord/interface/L1MuTriggerPtScaleRcd.h" 00030 00031 00032 // 00033 // class declaration 00034 // 00035 00036 class L1MuTriggerPtScaleProducer : public edm::ESProducer { 00037 public: 00038 L1MuTriggerPtScaleProducer(const edm::ParameterSet&); 00039 ~L1MuTriggerPtScaleProducer(); 00040 00041 std::auto_ptr<L1MuTriggerPtScale> produceL1MuTriggerPtScale(const L1MuTriggerPtScaleRcd&); 00042 00043 private: 00044 // ----------member data --------------------------- 00045 00046 L1MuTriggerPtScale m_scales ; 00047 }; 00048 00049 #endif