CMS 3D CMS Logo

EDProducerAdaptorBase.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: FWCore/Framework
4 // Class : edm::stream::EDProducerAdaptorBase
5 //
6 // Implementation:
7 // [Notes on implementation]
8 //
9 // Original Author: Chris Jones
10 // Created: Fri, 02 Aug 2013 21:43:44 GMT
11 //
12 
13 // system include files
14 
15 // user include files
26 
27 
28 
29 using namespace edm::stream;
30 namespace edm {
31  namespace stream {
32 
33  //
34  // constants, enums and typedefs
35  //
36 
37  //
38  // static data member definitions
39  //
40 
41  //
42  // constructors and destructor
43  //
45  {
46  }
47 
48  bool
50  ActivityRegistry* act,
51  ModuleCallingContext const* mcc) {
52  assert(ep.streamID()<m_streamModules.size());
53  auto mod = m_streamModules[ep.streamID()];
54  Event e(ep, moduleDescription(), mcc);
55  e.setConsumer(mod);
56  e.setProducer(mod,&mod->previousParentage_);
57  EventSignalsSentry sentry(act,mcc);
58  mod->produce(e, c);
59  commit(e, &mod->previousParentageId_);
60  return true;
61  }
62 
64  }
65 }
66 
void setProducer(ProducerBase const *iProd, std::vector< BranchID > *previousParentage)
Definition: Event.cc:55
void setConsumer(EDConsumerBase const *iConsumer)
Definition: Event.cc:42
StreamID streamID() const
bool doEvent(EventPrincipal const &ep, EventSetup const &c, ActivityRegistry *, ModuleCallingContext const *)
HLT enums.
T mod(const T &a, const T &b)
Definition: ecalDccMap.h:4