CMS 3D CMS Logo

ME0TriggerPseudoProducer.cc
Go to the documentation of this file.
1 
26 
28 
30 public:
32  ~ME0TriggerPseudoProducer() override;
33 
34  void produce(edm::StreamID, edm::Event&, const edm::EventSetup&) const override;
35 
36 private:
41 };
42 
44  me0segmentProducer_ = conf.getParameter<edm::InputTag>("ME0SegmentProducer");
45  me0segment_token_ = consumes<ME0SegmentCollection>(me0segmentProducer_);
46  me0_geom_token_ = esConsumes<ME0Geometry, MuonGeometryRecord>();
47  config_ = conf;
48 
49  // register what this produces
50  produces<ME0TriggerDigiCollection>();
51 }
52 
54 
57 
58  edm::Handle<ME0SegmentCollection> me0Segmentcoll;
59  ev.getByToken(me0segment_token_, me0Segmentcoll);
60  const ME0SegmentCollection* me0segments = me0Segmentcoll.product();
61 
62  // Create empty collection
63  auto oc_trig = std::make_unique<ME0TriggerDigiCollection>();
64 
65  auto trigBuilder = std::make_unique<ME0TriggerPseudoBuilder>(config_);
66  trigBuilder->setME0Geometry(&*h_me0);
67 
68  // Fill output collections if valid input collection is available.
69  if (me0Segmentcoll.isValid()) {
70  trigBuilder->build(me0segments, *oc_trig);
71  }
72 
73  // Put collections in event.
74  ev.put(std::move(oc_trig));
75 }
76 
edm::StreamID
Definition: StreamID.h:30
Handle.h
MessageLogger.h
edm::Handle::product
T const * product() const
Definition: Handle.h:70
ESHandle.h
ME0TriggerPseudoProducer::me0segmentProducer_
edm::InputTag me0segmentProducer_
Definition: ME0TriggerPseudoProducer.cc:37
edm::EDGetTokenT< ME0SegmentCollection >
ME0TriggerPseudoProducer::produce
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
Definition: ME0TriggerPseudoProducer.cc:55
ME0TriggerDigiCollection.h
ME0SegmentCollection.h
ME0TriggerPseudoProducer::~ME0TriggerPseudoProducer
~ME0TriggerPseudoProducer() override
Definition: ME0TriggerPseudoProducer.cc:53
ME0TriggerPseudoProducer
Definition: ME0TriggerPseudoProducer.cc:29
ME0TriggerPseudoProducer::config_
edm::ParameterSet config_
Definition: ME0TriggerPseudoProducer.cc:40
edm::Handle< ME0SegmentCollection >
ESGetToken.h
singleTopDQM_cfi.setup
setup
Definition: singleTopDQM_cfi.py:37
ME0TriggerPseudoBuilder.h
MakerMacros.h
DEFINE_FWK_MODULE
#define DEFINE_FWK_MODULE(type)
Definition: MakerMacros.h:16
edm::ESHandle< ME0Geometry >
edm::global::EDProducer
Definition: EDProducer.h:32
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
ME0TriggerPseudoProducer::me0segment_token_
edm::EDGetTokenT< ME0SegmentCollection > me0segment_token_
Definition: ME0TriggerPseudoProducer.cc:38
ME0TriggerPseudoProducer::ME0TriggerPseudoProducer
ME0TriggerPseudoProducer(const edm::ParameterSet &)
Definition: ME0TriggerPseudoProducer.cc:43
edm::EventSetup
Definition: EventSetup.h:57
edm::ESGetToken< ME0Geometry, MuonGeometryRecord >
InputTag.h
ME0Geometry.h
ME0TriggerPseudoBuilder
Definition: ME0TriggerPseudoBuilder.h:20
eostools.move
def move(src, dest)
Definition: eostools.py:511
Frameworkfwd.h
ev
bool ev
Definition: Hydjet2Hadronizer.cc:95
edm::ParameterSet::getParameter
T getParameter(std::string const &) const
Definition: ParameterSet.h:303
ME0TriggerPseudoProducer::me0_geom_token_
edm::ESGetToken< ME0Geometry, MuonGeometryRecord > me0_geom_token_
Definition: ME0TriggerPseudoProducer.cc:39
ConsumesCollector.h
ParameterSet.h
EDProducer.h
MuonGeometryRecord.h
edm::HandleBase::isValid
bool isValid() const
Definition: HandleBase.h:70
edm::Event
Definition: Event.h:73
ME0SegmentCollection
edm::InputTag
Definition: InputTag.h:15