Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:10:42

0001 #ifndef HcalDigiToRaw_h
0002 #define HcalDigiToRaw_h
0003 
0004 /** \class HcalDigiToRaw
0005  *
0006  * HcalDigiToRaw is the EDProducer subclass which runs 
0007  * the Hcal Unpack algorithm.
0008  *
0009  * \author Jeremiah Mans
0010       
0011  *
0012  * \version   1st Version June 10, 2005  
0013 
0014  *
0015  ************************************************************/
0016 
0017 #include "FWCore/Framework/interface/global/EDProducer.h"
0018 #include "FWCore/Framework/interface/Event.h"
0019 #include "DataFormats/Common/interface/Handle.h"
0020 
0021 #include "FWCore/Framework/interface/EventSetup.h"
0022 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0023 #include "FWCore/Utilities/interface/ESGetToken.h"
0024 
0025 #include "EventFilter/HcalRawToDigi/interface/HcalPacker.h"
0026 #include "DataFormats/HcalDigi/interface/HcalDigiCollections.h"
0027 #include "CalibFormats/HcalObjects/interface/HcalDbService.h"
0028 #include "CalibFormats/HcalObjects/interface/HcalDbRecord.h"
0029 
0030 class HcalDigiToRaw : public edm::global::EDProducer<> {
0031 public:
0032   explicit HcalDigiToRaw(const edm::ParameterSet& ps);
0033   ~HcalDigiToRaw() override;
0034   void produce(edm::StreamID id, edm::Event& e, const edm::EventSetup& c) const override;
0035 
0036 private:
0037   HcalPacker packer_;
0038   const edm::InputTag hbheTag_, hoTag_, hfTag_, zdcTag_, calibTag_, trigTag_;
0039   const edm::EDGetTokenT<HBHEDigiCollection> tok_hbhe_;
0040   const edm::EDGetTokenT<HODigiCollection> tok_ho_;
0041   const edm::EDGetTokenT<HFDigiCollection> tok_hf_;
0042   const edm::EDGetTokenT<HcalCalibDigiCollection> tok_calib_;
0043   const edm::EDGetTokenT<ZDCDigiCollection> tok_zdc_;
0044   const edm::EDGetTokenT<HcalTrigPrimDigiCollection> tok_htp_;
0045   const edm::ESGetToken<HcalDbService, HcalDbRecord> tok_dbService_;
0046 };
0047 
0048 #endif