File indexing completed on 2024-04-06 12:20:47
0001 #include "L1Trigger/L1TMuon/interface/deprecate/CSCCollector.h"
0002 #include "DataFormats/CSCDigi/interface/CSCCorrelatedLCTDigiCollection.h"
0003 #include "DataFormats/MuonDetId/interface/CSCDetId.h"
0004
0005 #include "DataFormats/Common/interface/Handle.h"
0006 #include "FWCore/Framework/interface/Event.h"
0007 #include "FWCore/Framework/interface/EventSetup.h"
0008
0009 using namespace L1TMuon;
0010
0011 CSCCollector::CSCCollector(const edm::ParameterSet& ps) : SubsystemCollector(ps) {}
0012
0013 void CSCCollector::extractPrimitives(const edm::Event& ev,
0014 const edm::EventSetup& es,
0015 std::vector<TriggerPrimitive>& out) const {
0016 edm::Handle<CSCCorrelatedLCTDigiCollection> cscDigis;
0017 ev.getByLabel(_src, cscDigis);
0018
0019 auto chamber = cscDigis->begin();
0020 auto chend = cscDigis->end();
0021 for (; chamber != chend; ++chamber) {
0022 auto digi = (*chamber).second.first;
0023 auto dend = (*chamber).second.second;
0024 for (; digi != dend; ++digi) {
0025 out.push_back(TriggerPrimitive((*chamber).first, *digi));
0026 }
0027 }
0028 }
0029
0030 #include "L1Trigger/L1TMuon/interface/deprecate/SubsystemCollectorFactory.h"
0031 DEFINE_EDM_PLUGIN(SubsystemCollectorFactory, CSCCollector, "CSCCollector");