Skip to content

Commit

Permalink
Merge pull request #30153 from JamminJones/fixEventFilterCSCRawToDigi
Browse files Browse the repository at this point in the history
added esConsumes to modules in EventFilter/CSCRawToDigi
  • Loading branch information
cmsbuild committed Jun 12, 2020
2 parents ad65c61 + ad6fde6 commit d377861
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 27 deletions.
16 changes: 6 additions & 10 deletions EventFilter/CSCRawToDigi/plugins/CSCDCCUnpacker.cc
@@ -1,4 +1,4 @@
#include "EventFilter/CSCRawToDigi/interface/CSCDCCUnpacker.h"
#include "EventFilter/CSCRawToDigi/plugins/CSCDCCUnpacker.h"

//Framework stuff
#include "DataFormats/Common/interface/Handle.h"
Expand Down Expand Up @@ -59,11 +59,7 @@
#include "EventFilter/CSCRawToDigi/interface/CSCTMBHeader.h"
#include "EventFilter/CSCRawToDigi/interface/CSCRPCData.h"
#include "EventFilter/CSCRawToDigi/interface/CSCDCCExaminer.h"
#include "CondFormats/CSCObjects/interface/CSCCrateMap.h"
#include "CondFormats/DataRecord/interface/CSCCrateMapRcd.h"
#include "CondFormats/CSCObjects/interface/CSCChamberMap.h"
#include "CondFormats/DataRecord/interface/CSCChamberMapRcd.h"
#include <EventFilter/CSCRawToDigi/interface/CSCMonitorInterface.h>
#include "EventFilter/CSCRawToDigi/interface/CSCMonitorInterface.h"
#include "FWCore/ServiceRegistry/interface/Service.h"

#include <iostream>
Expand All @@ -75,6 +71,8 @@
CSCDCCUnpacker::CSCDCCUnpacker(const edm::ParameterSet& pset) : numOfEvents(0) {
// Tracked
i_token = consumes<FEDRawDataCollection>(pset.getParameter<edm::InputTag>("InputObjects"));
crateToken = esConsumes<CSCCrateMap, CSCCrateMapRcd>();
cscmapToken = esConsumes<CSCChamberMap, CSCChamberMapRcd>();

useExaminer = pset.getParameter<bool>("UseExaminer");
examinerMask = pset.getParameter<unsigned int>("ExaminerMask");
Expand Down Expand Up @@ -167,13 +165,11 @@ void CSCDCCUnpacker::produce(edm::Event& e, const edm::EventSetup& c) {
// Do we really have to do this every event???
// ... Yes, because framework is more efficient than you are at caching :)
// (But if you want to actually DO something specific WHEN the mapping changes, check out ESWatcher)
edm::ESHandle<CSCCrateMap> hcrate;
c.get<CSCCrateMapRcd>().get(hcrate);
edm::ESHandle<CSCCrateMap> hcrate = c.getHandle(crateToken);
const CSCCrateMap* pcrate = hcrate.product();

// Need access to CSCChamberMap for chamber<->FED/DDU mapping consistency checks
edm::ESHandle<CSCChamberMap> cscmap;
c.get<CSCChamberMapRcd>().get(cscmap);
edm::ESHandle<CSCChamberMap> cscmap = c.getHandle(cscmapToken);
const CSCChamberMap* cscmapping = cscmap.product();

if (printEventNumber)
Expand Down
Expand Up @@ -7,10 +7,15 @@
* \author Alex Tumanov
*/

#include <FWCore/Framework/interface/ConsumesCollector.h>
#include <FWCore/Framework/interface/stream/EDProducer.h>
#include <FWCore/ParameterSet/interface/ParameterSet.h>
#include <DataFormats/FEDRawData/interface/FEDRawDataCollection.h>
#include "FWCore/Framework/interface/ConsumesCollector.h"
#include "FWCore/Framework/interface/stream/EDProducer.h"
#include "FWCore/Utilities/interface/ESGetToken.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "DataFormats/FEDRawData/interface/FEDRawDataCollection.h"
#include "CondFormats/CSCObjects/interface/CSCCrateMap.h"
#include "CondFormats/DataRecord/interface/CSCCrateMapRcd.h"
#include "CondFormats/CSCObjects/interface/CSCChamberMap.h"
#include "CondFormats/DataRecord/interface/CSCChamberMapRcd.h"

class CSCMonitorInterface;

Expand Down Expand Up @@ -46,6 +51,8 @@ class CSCDCCUnpacker : public edm::stream::EDProducer<> {

/// Token for consumes interface & access to data
edm::EDGetTokenT<FEDRawDataCollection> i_token;
edm::ESGetToken<CSCCrateMap, CSCCrateMapRcd> crateToken;
edm::ESGetToken<CSCChamberMap, CSCChamberMapRcd> cscmapToken;
};

#endif
8 changes: 4 additions & 4 deletions EventFilter/CSCRawToDigi/plugins/CSCDigiToRawModule.cc
Expand Up @@ -7,6 +7,7 @@
#include "DataFormats/Common/interface/Handle.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/Utilities/interface/ESGetToken.h"
#include "FWCore/Framework/interface/EventSetup.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
Expand Down Expand Up @@ -60,7 +61,7 @@ class CSCDigiToRawModule : public edm::global::EDProducer<> {
edm::EDGetTokenT<CSCCLCTDigiCollection> cl_token;
edm::EDGetTokenT<CSCCLCTPreTriggerCollection> pr_token;
edm::EDGetTokenT<CSCCorrelatedLCTDigiCollection> co_token;

edm::ESGetToken<CSCChamberMap, CSCChamberMapRcd> cham_token;
edm::EDPutTokenT<FEDRawDataCollection> put_token_;
};

Expand All @@ -81,7 +82,7 @@ CSCDigiToRawModule::CSCDigiToRawModule(const edm::ParameterSet& pset) : packer_(
al_token = consumes<CSCALCTDigiCollection>(pset.getParameter<edm::InputTag>("alctDigiTag"));
cl_token = consumes<CSCCLCTDigiCollection>(pset.getParameter<edm::InputTag>("clctDigiTag"));
co_token = consumes<CSCCorrelatedLCTDigiCollection>(pset.getParameter<edm::InputTag>("correlatedLCTDigiTag"));

cham_token = esConsumes<CSCChamberMap, CSCChamberMapRcd>();
put_token_ = produces<FEDRawDataCollection>("CSCRawData");
}

Expand Down Expand Up @@ -131,8 +132,7 @@ void CSCDigiToRawModule::fillDescriptions(edm::ConfigurationDescriptions& descri

void CSCDigiToRawModule::produce(edm::StreamID, edm::Event& e, const edm::EventSetup& c) const {
///reverse mapping for packer
edm::ESHandle<CSCChamberMap> hcham;
c.get<CSCChamberMapRcd>().get(hcham);
edm::ESHandle<CSCChamberMap> hcham = c.getHandle(cham_token);
const CSCChamberMap* theMapping = hcham.product();

FEDRawDataCollection fed_buffers;
Expand Down
10 changes: 3 additions & 7 deletions EventFilter/CSCRawToDigi/plugins/CSCDigiValidator.cc
Expand Up @@ -8,16 +8,12 @@
#include <algorithm>
#include <iostream>

#include "EventFilter/CSCRawToDigi/interface/CSCDigiValidator.h"
#include "EventFilter/CSCRawToDigi/plugins/CSCDigiValidator.h"

#include "FWCore/Framework/interface/Event.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/Framework/interface/EventSetup.h"
#include "FWCore/Framework/interface/ESHandle.h"

#include "CondFormats/CSCObjects/interface/CSCChamberMap.h"
#include "CondFormats/DataRecord/interface/CSCChamberMapRcd.h"

#include "DataFormats/Common/interface/Handle.h"
#include "DataFormats/MuonDetId/interface/CSCDetId.h"
Expand All @@ -39,6 +35,7 @@ CSCDigiValidator::CSCDigiValidator(const edm::ParameterSet& iConfig) {
tr2_token = consumes<L1CSCTrackCollection>(iConfig.getParameter<edm::InputTag>("repackCSCTF"));
ts1_token = consumes<CSCTriggerContainer<csctf::TrackStub> >(iConfig.getParameter<edm::InputTag>("inputCSCTFStubs"));
ts2_token = consumes<CSCTriggerContainer<csctf::TrackStub> >(iConfig.getParameter<edm::InputTag>("repackCSCTFStubs"));
cham_token = esConsumes<CSCChamberMap, CSCChamberMapRcd>();

// reorderStrips(iConfig.getUntrackedParameter<bool>("applyStripReordering",true))
}
Expand All @@ -59,8 +56,7 @@ bool CSCDigiValidator::filter(edm::Event& iEvent, const edm::EventSetup& iSetup)
typedef std::map<CSCDetId, std::pair<std::vector<CSCCorrelatedLCTDigi>, std::vector<CSCCorrelatedLCTDigi> > >
matchingDetLCTCollection;

edm::ESHandle<CSCChamberMap> hcham;
iSetup.get<CSCChamberMapRcd>().get(hcham);
edm::ESHandle<CSCChamberMap> hcham = iSetup.getHandle(cham_token);
const CSCChamberMap* theMapping = hcham.product();

Handle<CSCWireDigiCollection> _wi, _swi;
Expand Down
Expand Up @@ -12,6 +12,7 @@
#include "FWCore/Framework/interface/EDFilter.h"
#include "FWCore/Framework/interface/MakerMacros.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/Utilities/interface/ESGetToken.h"

#include "DataFormats/CSCDigi/interface/CSCWireDigiCollection.h"
#include "DataFormats/CSCDigi/interface/CSCStripDigiCollection.h"
Expand All @@ -22,6 +23,8 @@
#include "DataFormats/L1CSCTrackFinder/interface/CSCTriggerContainer.h"
#include "DataFormats/L1CSCTrackFinder/interface/L1CSCTrackCollection.h"
#include "DataFormats/L1CSCTrackFinder/interface/TrackStub.h"
#include "CondFormats/CSCObjects/interface/CSCChamberMap.h"
#include "CondFormats/DataRecord/interface/CSCChamberMapRcd.h"

class CSCWireDigi;
class CSCStripDigi;
Expand Down Expand Up @@ -82,4 +85,5 @@ class CSCDigiValidator : public edm::EDFilter {
edm::EDGetTokenT<CSCCorrelatedLCTDigiCollection> co2_token;
edm::EDGetTokenT<L1CSCTrackCollection> tr2_token;
edm::EDGetTokenT<CSCTriggerContainer<csctf::TrackStub> > ts2_token;
edm::ESGetToken<CSCChamberMap, CSCChamberMapRcd> cham_token;
};
4 changes: 2 additions & 2 deletions EventFilter/CSCRawToDigi/plugins/module.cc
@@ -1,9 +1,9 @@
#include "FWCore/Framework/interface/MakerMacros.h"
#include <EventFilter/CSCRawToDigi/interface/CSCDCCUnpacker.h>
#include <EventFilter/CSCRawToDigi/plugins/CSCDCCUnpacker.h>
#include <EventFilter/CSCRawToDigi/interface/DigiAnalyzer.h>
#include <EventFilter/CSCRawToDigi/src/CSCDigiToPattern.h>
#include <EventFilter/CSCRawToDigi/interface/CSCViewDigi.h>
#include <EventFilter/CSCRawToDigi/interface/CSCDigiValidator.h>
#include <EventFilter/CSCRawToDigi/plugins/CSCDigiValidator.h>

DEFINE_FWK_MODULE(CSCDCCUnpacker);
DEFINE_FWK_MODULE(DigiAnalyzer);
Expand Down

0 comments on commit d377861

Please sign in to comment.