CMS 3D CMS Logo

ProducingModuleAdaptor.h
Go to the documentation of this file.
1 #ifndef FWCore_Framework_stream_ProducingModuleAdaptor_h
2 #define FWCore_Framework_stream_ProducingModuleAdaptor_h
3 // -*- C++ -*-
4 //
5 // Package: FWCore/Framework
6 // Class : ProducingModuleAdaptor
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Fri, 02 Aug 2013 18:09:18 GMT
19 //
20 
21 // system include files
22 
23 // user include files
35 // forward declarations
36 
37 namespace edm {
39  namespace stream {
40 
41  template <typename T, typename M, typename B>
42  class ProducingModuleAdaptor : public B {
43  public:
45  m_runs.resize(1);
46  m_lumis.resize(1);
47  m_runSummaries.resize(1);
48  m_lumiSummaries.resize(1);
49  typename T::GlobalCache const* dummy = nullptr;
50  m_global = impl::makeGlobal<T>(iPSet, dummy);
51  }
52  ProducingModuleAdaptor(const ProducingModuleAdaptor&) = delete; // stop default
53  const ProducingModuleAdaptor& operator=(const ProducingModuleAdaptor&) = delete; // stop default
55 
56  static void fillDescriptions(ConfigurationDescriptions& descriptions) { T::fillDescriptions(descriptions); }
57  static void prevalidate(ConfigurationDescriptions& descriptions) { T::prevalidate(descriptions); }
58 
59  bool wantsProcessBlocks() const final {
60  return T::HasAbility::kWatchProcessBlock or T::HasAbility::kBeginProcessBlockProducer or
61  T::HasAbility::kEndProcessBlockProducer;
62  }
63  bool wantsInputProcessBlocks() const final { return T::HasAbility::kInputProcessBlockCache; }
64  bool wantsGlobalRuns() const final {
67  }
70  T::HasAbility::kBeginLuminosityBlockProducer or T::HasAbility::kEndLuminosityBlockProducer;
71  }
72 
73  bool hasAcquire() const final { return T::HasAbility::kExternalWork; }
74 
75  bool hasAccumulator() const final { return T::HasAbility::kAccumulator; }
76 
77  private:
91 
92  void setupStreamModules() final {
93  this->createStreamModules([this]() -> M* {
94  auto tmp = impl::makeStreamModule<T>(*m_pset, m_global.get());
95  MyGlobal::set(tmp, m_global.get());
96  return tmp;
97  });
98  m_pset = nullptr;
99  }
100 
101  void preallocLumis(unsigned int iNLumis) final {
102  m_lumis.resize(iNLumis);
103  m_lumiSummaries.resize(iNLumis);
104  }
105  void doBeginJob() final { MyGlobal::beginJob(m_global.get()); }
106  void doEndJob() final { MyGlobal::endJob(m_global.get()); }
107  void setupRun(M* iProd, RunIndex iIndex) final { MyGlobalRun::set(iProd, m_runs[iIndex].get()); }
108  void streamEndRunSummary(M* iProd, edm::Run const& iRun, edm::EventSetup const& iES) final {
109  auto s = m_runSummaries[iRun.index()].get();
110  std::lock_guard<decltype(m_runSummaryLock)> guard(m_runSummaryLock);
111  MyGlobalRunSummary::streamEndRunSummary(iProd, iRun, iES, s);
112  }
113 
114  void setupLuminosityBlock(M* iProd, LuminosityBlockIndex iIndex) final {
115  MyGlobalLuminosityBlock::set(iProd, m_lumis[iIndex].get());
116  }
118  edm::LuminosityBlock const& iLumi,
119  edm::EventSetup const& iES) final {
120  auto s = m_lumiSummaries[iLumi.index()].get();
121  std::lock_guard<decltype(m_lumiSummaryLock)> guard(m_lumiSummaryLock);
123  }
124 
126  if constexpr (T::HasAbility::kWatchProcessBlock or T::HasAbility::kBeginProcessBlockProducer) {
127  ProcessBlock processBlock(pbp, this->moduleDescription(), mcc, false);
128  ProcessBlock const& cnstProcessBlock = processBlock;
129  processBlock.setConsumer(this->consumer());
130  MyWatchProcessBlock::beginProcessBlock(cnstProcessBlock, m_global.get());
131  if constexpr (T::HasAbility::kBeginProcessBlockProducer) {
132  processBlock.setProducer(this->producer());
133  MyBeginProcessBlockProduce::produce(processBlock, m_global.get());
134  this->commit(processBlock);
135  }
136  }
137  }
138 
140  if constexpr (T::HasAbility::kInputProcessBlockCache) {
141  ProcessBlock processBlock(pbp, this->moduleDescription(), mcc, false);
142  ProcessBlock const& cnstProcessBlock = processBlock;
143  processBlock.setConsumer(this->consumer());
145  }
146  }
147 
148  void doEndProcessBlock(ProcessBlockPrincipal const& pbp, ModuleCallingContext const* mcc) final {
149  if constexpr (T::HasAbility::kWatchProcessBlock or T::HasAbility::kEndProcessBlockProducer) {
150  ProcessBlock processBlock(pbp, this->moduleDescription(), mcc, true);
151  ProcessBlock const& cnstProcessBlock = processBlock;
152  processBlock.setConsumer(this->consumer());
153  MyWatchProcessBlock::endProcessBlock(cnstProcessBlock, m_global.get());
154  if constexpr (T::HasAbility::kEndProcessBlockProducer) {
155  processBlock.setProducer(this->producer());
156  MyEndProcessBlockProduce::produce(processBlock, m_global.get());
157  this->commit(processBlock);
158  }
159  }
160  }
161 
162  void doBeginRun(RunTransitionInfo const& info, ModuleCallingContext const* mcc) final {
164  RunPrincipal const& rp = info.principal();
165  Run r(rp, this->moduleDescription(), mcc, false);
166  r.setConsumer(this->consumer());
167  r.setProducer(this->producer());
168  Run const& cnstR = r;
169  RunIndex ri = rp.index();
170  ESParentContext parentC(mcc);
171  const EventSetup c{info,
172  static_cast<unsigned int>(Transition::BeginRun),
173  this->consumer()->esGetTokenIndices(Transition::BeginRun),
174  parentC,
175  false};
176  MyGlobalRun::beginRun(cnstR, c, m_global.get(), m_runs[ri]);
177  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
179  if constexpr (T::HasAbility::kBeginRunProducer) {
181  this->commit(r);
182  }
183  }
184  }
185 
186  void doEndRun(RunTransitionInfo const& info, ModuleCallingContext const* mcc) final {
188  RunPrincipal const& rp = info.principal();
189  Run r(rp, this->moduleDescription(), mcc, true);
190  r.setConsumer(this->consumer());
191  r.setProducer(this->producer());
192 
193  RunIndex ri = rp.index();
194  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
195  ESParentContext parentC(mcc);
196  const EventSetup c{info,
197  static_cast<unsigned int>(Transition::EndRun),
198  this->consumer()->esGetTokenIndices(Transition::EndRun),
199  parentC,
200  false};
202  if constexpr (T::HasAbility::kEndRunProducer) {
204  this->commit(r);
205  }
206  MyGlobalRun::endRun(r, c, &rc);
207  }
208  }
209 
212  T::HasAbility::kBeginLuminosityBlockProducer) {
213  LuminosityBlockPrincipal const& lbp = info.principal();
214  LuminosityBlock lb(lbp, this->moduleDescription(), mcc, false);
215  lb.setConsumer(this->consumer());
216  lb.setProducer(this->producer());
217  LuminosityBlock const& cnstLb = lb;
218  LuminosityBlockIndex li = lbp.index();
219  RunIndex ri = lbp.runPrincipal().index();
220  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
221  ESParentContext parentC(mcc);
222  const EventSetup c{info,
223  static_cast<unsigned int>(Transition::BeginLuminosityBlock),
224  this->consumer()->esGetTokenIndices(Transition::BeginLuminosityBlock),
225  parentC,
226  false};
227 
229  typename T::LuminosityBlockContext lc(m_lumis[li].get(), m_runs[ri].get(), m_global.get());
231  if constexpr (T::HasAbility::kBeginLuminosityBlockProducer) {
233  this->commit(lb);
234  }
235  }
236  }
239  T::HasAbility::kEndLuminosityBlockProducer) {
240  LuminosityBlockPrincipal const& lbp = info.principal();
241  LuminosityBlock lb(lbp, this->moduleDescription(), mcc, true);
242  lb.setConsumer(this->consumer());
243  lb.setProducer(this->producer());
244 
245  LuminosityBlockIndex li = lbp.index();
246  RunIndex ri = lbp.runPrincipal().index();
247  typename T::LuminosityBlockContext lc(m_lumis[li].get(), m_runs[ri].get(), m_global.get());
248  ESParentContext parentC(mcc);
249  const EventSetup c{info,
250  static_cast<unsigned int>(Transition::EndLuminosityBlock),
251  this->consumer()->esGetTokenIndices(Transition::EndLuminosityBlock),
252  parentC,
253  false};
255  if constexpr (T::HasAbility::kEndLuminosityBlockProducer) {
257  this->commit(lb);
258  }
260  }
261  }
262 
263  // ---------- member data --------------------------------
272  };
273  } // namespace stream
274 } // namespace edm
275 
276 #endif
edm::stream::CallGlobalImpl::endJob
static void endJob(typename T::GlobalCache *iCache)
Definition: callAbilities.h:55
edm::stream::CallGlobalLuminosityBlockImpl
Definition: callAbilities.h:179
edm::LuminosityBlockPrincipal::runPrincipal
RunPrincipal const & runPrincipal() const
Definition: LuminosityBlockPrincipal.h:45
edm::stream::CallEndRunProduceImpl::produce
static void produce(edm::Run &, edm::EventSetup const &, typename T::RunContext const *, typename T::RunSummaryCache const *)
Definition: callAbilities.h:386
edm::stream::ProducingModuleAdaptor::hasAccumulator
bool hasAccumulator() const final
Definition: ProducingModuleAdaptor.h:75
edm::stream::ProducingModuleAdaptor::fillDescriptions
static void fillDescriptions(ConfigurationDescriptions &descriptions)
Definition: ProducingModuleAdaptor.h:56
edm::stream::ProducingModuleAdaptor
Definition: ProducingModuleAdaptor.h:42
edm::stream::ProducingModuleAdaptor::m_lumis
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
Definition: ProducingModuleAdaptor.h:266
edm::LumiTransitionInfo
Definition: TransitionInfoTypes.h:42
edm::LuminosityBlock
Definition: LuminosityBlock.h:50
edm::stream::CallGlobalLuminosityBlockSummaryImpl
Definition: callAbilities.h:217
edm::Run
Definition: Run.h:45
edm::stream::ProducingModuleAdaptor::wantsProcessBlocks
bool wantsProcessBlocks() const final
Definition: ProducingModuleAdaptor.h:59
edm::stream::ProducingModuleAdaptor::ProducingModuleAdaptor
ProducingModuleAdaptor(edm::ParameterSet const &iPSet)
Definition: ProducingModuleAdaptor.h:44
edm::LuminosityBlock::setProducer
void setProducer(ProducerBase const *iProducer)
Definition: LuminosityBlock.cc:55
LuminosityBlock.h
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::stream::ProducingModuleAdaptor::~ProducingModuleAdaptor
~ProducingModuleAdaptor() override
Definition: ProducingModuleAdaptor.h:54
edm::stream::CallGlobalRunSummaryImpl::streamEndRunSummary
static void streamEndRunSummary(B *iProd, edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunSummaryCache *iCache)
Definition: callAbilities.h:144
cms::cuda::stream
cudaStream_t stream
Definition: HistoContainer.h:57
edm::stream::ProducingModuleAdaptor::m_runSummaries
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
Definition: ProducingModuleAdaptor.h:267
ProcessBlock.h
edm::stream::CallGlobalLuminosityBlockImpl::beginLuminosityBlock
static void beginLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::RunContext const *iRC, std::shared_ptr< typename T::LuminosityBlockCache const > &oCache)
Definition: callAbilities.h:180
edm::stream::CallGlobalRunSummaryImpl
Definition: callAbilities.h:136
edm::LuminosityBlockPrincipal
Definition: LuminosityBlockPrincipal.h:31
edm::stream::impl::choose_shared_vec::type
std::vector< std::shared_ptr< T > > type
Definition: dummy_helpers.h:64
RawToDigi_Repacked_cff.producer
producer
Definition: RawToDigi_Repacked_cff.py:6
edm::stream::CallGlobalImpl::set
static void set(B *iProd, typename T::GlobalCache const *iCache)
Definition: callAbilities.h:47
edm::stream::CallGlobalRunImpl::set
static void set(B *iProd, typename T::RunCache const *iCache)
Definition: callAbilities.h:113
edm::ProcessBlock::setProducer
void setProducer(ProducerBase const *iProducer)
Definition: ProcessBlock.cc:13
edm::stream::CallEndLuminosityBlockProduceImpl::produce
static void produce(edm::LuminosityBlock &, edm::EventSetup const &, typename T::LuminosityBlockContext const *, typename T::LuminosityBlockSummaryCache const *)
Definition: callAbilities.h:443
edm::module::AbilityBits::kBeginRunProducer
Definition: moduleAbilityEnums.h:61
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition: FWCollectionSummaryWidget.cc:153
edm::stream::CallBeginLuminosityBlockProduceImpl
Definition: callAbilities.h:419
callAbilities.h
edm::stream::CallGlobalLuminosityBlockImpl::endLuminosityBlock
static void endLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iContext)
Definition: callAbilities.h:192
createJobs.tmp
tmp
align.sh
Definition: createJobs.py:716
edm::RunTransitionInfo
Definition: TransitionInfoTypes.h:64
watchdog.const
const
Definition: watchdog.py:83
edm::ProcessBlockPrincipal
Definition: ProcessBlockPrincipal.h:22
edm::stream::ProducingModuleAdaptor::wantsGlobalLuminosityBlocks
bool wantsGlobalLuminosityBlocks() const final
Definition: ProducingModuleAdaptor.h:68
edm::stream::ProducingModuleAdaptor::doBeginProcessBlock
void doBeginProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:125
edm::module::AbilityBits::kEndRunProducer
Definition: moduleAbilityEnums.h:62
makeGlobal.h
edm::stream::CallBeginLuminosityBlockProduceImpl::produce
static void produce(edm::LuminosityBlock &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iRC)
Definition: callAbilities.h:420
edm::stream::CallGlobalRunImpl::endRun
static void endRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iContext)
Definition: callAbilities.h:117
alignCSCRings.s
s
Definition: alignCSCRings.py:92
edm::stream::CallGlobalImpl::beginJob
static void beginJob(typename T::GlobalCache *iCache)
Definition: callAbilities.h:50
edm::LuminosityBlockIndex
Definition: LuminosityBlockIndex.h:33
edm::stream::CallBeginRunProduceImpl::produce
static void produce(edm::Run &iRun, edm::EventSetup const &iES, typename T::RunContext const *iRC)
Definition: callAbilities.h:368
edm::stream::CallBeginRunProduceImpl
Definition: callAbilities.h:367
edm::stream::CallGlobalLuminosityBlockSummaryImpl::globalEndLuminosityBlock
static void globalEndLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iContext, typename T::LuminosityBlockSummaryCache *iCache)
Definition: callAbilities.h:232
edm::stream::ProducingModuleAdaptor::streamEndLuminosityBlockSummary
void streamEndLuminosityBlockSummary(M *iProd, edm::LuminosityBlock const &iLumi, edm::EventSetup const &iES) final
Definition: ProducingModuleAdaptor.h:117
edm::ProcessBlock::setConsumer
void setConsumer(EDConsumerBase const *iConsumer)
Definition: ProcessBlock.h:53
edm::stream::ProducingModuleAdaptor::doBeginLuminosityBlock
void doBeginLuminosityBlock(LumiTransitionInfo const &info, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:210
fillDescriptions
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::stream::ProducingModuleAdaptor::m_runs
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
Definition: ProducingModuleAdaptor.h:265
Run.h
edm::stream::ProducingModuleAdaptor::m_global
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
Definition: ProducingModuleAdaptor.h:264
edm::stream::ProducingModuleAdaptor::doEndProcessBlock
void doEndProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:148
edm::stream::CallEndLuminosityBlockProduceImpl
Definition: callAbilities.h:442
edm::Transition::BeginLuminosityBlock
edm::stream::ProducingModuleAdaptor::doBeginJob
void doBeginJob() final
Definition: ProducingModuleAdaptor.h:105
edm::stream::ProducingModuleAdaptor::doEndLuminosityBlock
void doEndLuminosityBlock(LumiTransitionInfo const &info, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:237
edm::stream::ProducingModuleAdaptor::wantsGlobalRuns
bool wantsGlobalRuns() const final
Definition: ProducingModuleAdaptor.h:64
edm::stream::ProducingModuleAdaptor::prevalidate
static void prevalidate(ConfigurationDescriptions &descriptions)
Definition: ProducingModuleAdaptor.h:57
edm::stream::ProducingModuleAdaptor::streamEndRunSummary
void streamEndRunSummary(M *iProd, edm::Run const &iRun, edm::EventSetup const &iES) final
Definition: ProducingModuleAdaptor.h:108
edm::stream::CallGlobalImpl
Definition: callAbilities.h:45
edm::ConfigurationDescriptions
Definition: ConfigurationDescriptions.h:28
edm::RunPrincipal::index
RunIndex index() const
Definition: RunPrincipal.h:57
edm::stream::ProducingModuleAdaptor::doEndJob
void doEndJob() final
Definition: ProducingModuleAdaptor.h:106
edm::stream::CallGlobalRunSummaryImpl::beginRun
static void beginRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iRC, std::shared_ptr< typename T::RunSummaryCache > &oCache)
Definition: callAbilities.h:137
edm::stream::CallWatchProcessBlockImpl::endProcessBlock
static void endProcessBlock(edm::ProcessBlock const &iProcessBlock, typename T::GlobalCache *iGC)
Definition: callAbilities.h:269
edm::stream::ProducingModuleAdaptor::wantsInputProcessBlocks
bool wantsInputProcessBlocks() const final
Definition: ProducingModuleAdaptor.h:63
edm::stream::CallEndRunProduceImpl
Definition: callAbilities.h:385
edm::ParameterSet
Definition: ParameterSet.h:47
ESParentContext.h
edm::LuminosityBlock::setConsumer
void setConsumer(EDConsumerBase const *iConsumer)
Definition: LuminosityBlock.cc:34
edm::module::AbilityBits::kRunSummaryCache
Definition: moduleAbilityEnums.h:59
edm::stream::CallBeginProcessBlockProduceImpl
Definition: callAbilities.h:305
edm::stream::ProducingModuleAdaptor::doBeginRun
void doBeginRun(RunTransitionInfo const &info, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:162
RunPrincipal.h
edm::get
T const & get(Event const &event, InputTag const &tag) noexcept(false)
Definition: Event.h:675
edm::stream::ProducingModuleAdaptor::operator=
const ProducingModuleAdaptor & operator=(const ProducingModuleAdaptor &)=delete
edm::stream::CallGlobalRunSummaryImpl::globalEndRun
static void globalEndRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iContext, typename T::RunSummaryCache *iCache)
Definition: callAbilities.h:151
edm::stream::ProducingModuleAdaptor::setupStreamModules
void setupStreamModules() final
Definition: ProducingModuleAdaptor.h:92
edm::EventSetup
Definition: EventSetup.h:58
edm::stream::CallInputProcessBlockImpl::accessInputProcessBlock
static void accessInputProcessBlock(edm::ProcessBlock const &iProcessBlock, typename T::GlobalCache *iGC)
Definition: callAbilities.h:72
edm::ESParentContext
Definition: ESParentContext.h:21
edm::stream::impl::choose_unique_ptr::type
std::unique_ptr< T > type
Definition: dummy_helpers.h:50
edm::stream::CallEndProcessBlockProduceImpl
Definition: callAbilities.h:336
LuminosityBlockPrincipal.h
edm::Run::setProducer
void setProducer(ProducerBase const *iProducer)
Definition: Run.cc:77
edm::stream::ProducingModuleAdaptor::m_runSummaryLock
impl::choose_mutex< typename T::RunSummaryCache >::type m_runSummaryLock
Definition: ProducingModuleAdaptor.h:268
alignCSCRings.r
r
Definition: alignCSCRings.py:93
TtFullHadDaughter::B
static const std::string B
Definition: TtFullHadronicEvent.h:9
edm::Transition::EndLuminosityBlock
edm::stream::CallGlobalLuminosityBlockImpl::set
static void set(B *iProd, typename T::LuminosityBlockCache const *iCache)
Definition: callAbilities.h:188
ConfigurationDescriptions
edm::module::AbilityBits::kRunCache
Definition: moduleAbilityEnums.h:57
edm::stream::CallBeginProcessBlockProduceImpl::produce
static void produce(edm::ProcessBlock &processBlock, typename T::GlobalCache *globalCache)
Definition: callAbilities.h:306
edm::stream::ProducingModuleAdaptor::m_pset
ParameterSet const * m_pset
Definition: ProducingModuleAdaptor.h:271
edm::stream::CallGlobalRunImpl::beginRun
static void beginRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::GlobalCache const *iGC, std::shared_ptr< typename T::RunCache const > &oCache)
Definition: callAbilities.h:105
edm::Transition::BeginRun
edm::module::AbilityBits::kLuminosityBlockSummaryCache
Definition: moduleAbilityEnums.h:60
edm::module::AbilityBits::kLuminosityBlockCache
Definition: moduleAbilityEnums.h:58
edm::stream::CallWatchProcessBlockImpl
Definition: callAbilities.h:264
EventSetup.h
or
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventID const &, edm::Timestamp const & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
Definition: Activities.doc:12
edm::RunIndex
Definition: RunIndex.h:32
OfflineOutput_cfi.consumer
consumer
Definition: OfflineOutput_cfi.py:3
edm::stream::CallEndProcessBlockProduceImpl::produce
static void produce(edm::ProcessBlock &processBlock, typename T::GlobalCache *globalCache)
Definition: callAbilities.h:337
edm::stream::CallInputProcessBlockImpl
Definition: callAbilities.h:71
dummy_helpers.h
TransitionInfoTypes.h
edm::LuminosityBlockPrincipal::index
LuminosityBlockIndex index() const
Definition: LuminosityBlockPrincipal.h:51
dummy
Definition: DummySelector.h:38
edm::RunPrincipal
Definition: RunPrincipal.h:34
edm::stream::CallGlobalLuminosityBlockSummaryImpl::streamEndLuminosityBlockSummary
static void streamEndLuminosityBlockSummary(B *iProd, edm::LuminosityBlock const &iLumi, edm::EventSetup const &iES, typename T::LuminosityBlockSummaryCache *iCache)
Definition: callAbilities.h:225
edm::stream::CallGlobalLuminosityBlockSummaryImpl::beginLuminosityBlock
static void beginLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iRC, std::shared_ptr< typename T::LuminosityBlockSummaryCache > &oCache)
Definition: callAbilities.h:218
c
auto & c
Definition: CAHitNtupletGeneratorKernelsImpl.h:46
edm::stream::ProducingModuleAdaptor::doEndRun
void doEndRun(RunTransitionInfo const &info, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:186
edm::stream::impl::choose_mutex::type
std::mutex type
Definition: dummy_helpers.h:76
edm::Transition::EndRun
edm::stream::ProducingModuleAdaptor::m_lumiSummaries
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
Definition: ProducingModuleAdaptor.h:269
edm::stream::ProducingModuleAdaptor::setupLuminosityBlock
void setupLuminosityBlock(M *iProd, LuminosityBlockIndex iIndex) final
Definition: ProducingModuleAdaptor.h:114
edm::stream::ProducingModuleAdaptor::setupRun
void setupRun(M *iProd, RunIndex iIndex) final
Definition: ProducingModuleAdaptor.h:107
edm::stream::ProducingModuleAdaptor::doAccessInputProcessBlock
void doAccessInputProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:139
edm::ProcessBlock
Definition: ProcessBlock.h:36
edm::stream::CallWatchProcessBlockImpl::beginProcessBlock
static void beginProcessBlock(edm::ProcessBlock const &iProcessBlock, typename T::GlobalCache *iGC)
Definition: callAbilities.h:265
edm::stream::ProducingModuleAdaptor::hasAcquire
bool hasAcquire() const final
Definition: ProducingModuleAdaptor.h:73
edm::stream::CallGlobalRunImpl
Definition: callAbilities.h:104
edm::ModuleCallingContext
Definition: ModuleCallingContext.h:29
edm::stream::ProducingModuleAdaptor::preallocLumis
void preallocLumis(unsigned int iNLumis) final
Definition: ProducingModuleAdaptor.h:101
edm::stream::ProducingModuleAdaptor::m_lumiSummaryLock
impl::choose_mutex< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaryLock
Definition: ProducingModuleAdaptor.h:270