#include <EventFilter/CSCRawToDigi/src/CSCDigiToRawModule.h>
Public Member Functions | |
CSCDigiToRawModule (const edm::ParameterSet &pset) | |
Constructor. | |
virtual void | produce (edm::Event &, const edm::EventSetup &) |
virtual | ~CSCDigiToRawModule () |
Destructor. | |
Private Attributes | |
CSCDigiToRaw * | packer |
edm::InputTag | theALCTDigiTag |
edm::InputTag | theCLCTDigiTag |
edm::InputTag | theComparatorDigiTag |
edm::InputTag | theCorrelatedLCTDigiTag |
edm::InputTag | theStripDigiTag |
edm::InputTag | theWireDigiTag |
Definition at line 15 of file CSCDigiToRawModule.h.
CSCDigiToRawModule::CSCDigiToRawModule | ( | const edm::ParameterSet & | pset | ) |
Constructor.
Definition at line 28 of file CSCDigiToRawModule.cc.
00028 : 00029 packer(new CSCDigiToRaw), 00030 theStripDigiTag(pset.getParameter<edm::InputTag>("stripDigiTag")), 00031 theWireDigiTag(pset.getParameter<edm::InputTag>("wireDigiTag")), 00032 theComparatorDigiTag(pset.getParameter<edm::InputTag>("comparatorDigiTag")), 00033 theALCTDigiTag(pset.getParameter<edm::InputTag>("alctDigiTag")), 00034 theCLCTDigiTag(pset.getParameter<edm::InputTag>("clctDigiTag")), 00035 theCorrelatedLCTDigiTag(pset.getParameter<edm::InputTag>("correlatedLCTDigiTag")) 00036 { 00037 //theStrip = pset.getUntrackedParameter<string>("DigiCreator", "cscunpacker"); 00038 produces<FEDRawDataCollection>("CSCRawData"); 00039 }
CSCDigiToRawModule::~CSCDigiToRawModule | ( | ) | [virtual] |
Destructor.
Definition at line 42 of file CSCDigiToRawModule.cc.
References packer.
00042 { 00043 delete packer; 00044 }
void CSCDigiToRawModule::produce | ( | edm::Event & | e, | |
const edm::EventSetup & | c | |||
) | [virtual] |
reverse mapping for packer
Implements edm::EDProducer.
Definition at line 47 of file CSCDigiToRawModule.cc.
References CSCDigiToRaw::createFedBuffers(), edm::EventSetup::get(), edm::Event::getByLabel(), packer, edm::ESHandle< T >::product(), edm::Event::put(), theALCTDigiTag, theCLCTDigiTag, theComparatorDigiTag, theCorrelatedLCTDigiTag, theStripDigiTag, and theWireDigiTag.
00047 { 00049 edm::ESHandle<CSCChamberMap> hcham; 00050 c.get<CSCChamberMapRcd>().get(hcham); 00051 const CSCChamberMap* theMapping = hcham.product(); 00052 00053 00054 auto_ptr<FEDRawDataCollection> fed_buffers(new FEDRawDataCollection); 00055 // Take digis from the event 00056 Handle<CSCStripDigiCollection> stripDigis; 00057 e.getByLabel(theStripDigiTag, stripDigis); 00058 Handle<CSCWireDigiCollection> wireDigis; 00059 e.getByLabel(theWireDigiTag, wireDigis); 00060 Handle<CSCComparatorDigiCollection> comparatorDigis; 00061 e.getByLabel(theComparatorDigiTag, comparatorDigis); 00062 Handle<CSCALCTDigiCollection> alctDigis; 00063 e.getByLabel(theALCTDigiTag, alctDigis); 00064 Handle<CSCCLCTDigiCollection> clctDigis; 00065 e.getByLabel(theCLCTDigiTag, clctDigis); 00066 Handle<CSCCorrelatedLCTDigiCollection> correlatedLCTDigis; 00067 e.getByLabel(theCorrelatedLCTDigiTag, correlatedLCTDigis); 00068 00069 00070 00071 // Create the packed data 00072 packer->createFedBuffers(*stripDigis, *wireDigis, *comparatorDigis, 00073 *alctDigis, *clctDigis, *correlatedLCTDigis, 00074 *(fed_buffers.get()), theMapping, e); 00075 00076 // put the raw data to the event 00077 e.put(fed_buffers, "CSCRawData"); 00078 }
CSCDigiToRaw* CSCDigiToRawModule::packer [private] |
Definition at line 27 of file CSCDigiToRawModule.h.
Referenced by produce(), and ~CSCDigiToRawModule().