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
34 // forward declarations
35 
36 namespace edm {
38  namespace stream {
39 
40  template <typename T, typename M, typename B>
41  class ProducingModuleAdaptor : public B {
42  public:
44  m_runs.resize(1);
45  m_lumis.resize(1);
46  m_runSummaries.resize(1);
47  m_lumiSummaries.resize(1);
48  typename T::GlobalCache const* dummy = nullptr;
49  m_global = impl::makeGlobal<T>(iPSet, dummy);
50  }
51  ProducingModuleAdaptor(const ProducingModuleAdaptor&) = delete; // stop default
52  const ProducingModuleAdaptor& operator=(const ProducingModuleAdaptor&) = delete; // stop default
54 
55  static void fillDescriptions(ConfigurationDescriptions& descriptions) { T::fillDescriptions(descriptions); }
56  static void prevalidate(ConfigurationDescriptions& descriptions) { T::prevalidate(descriptions); }
57 
58  bool wantsProcessBlocks() const final {
59  return T::HasAbility::kWatchProcessBlock or T::HasAbility::kBeginProcessBlockProducer or
60  T::HasAbility::kEndProcessBlockProducer;
61  }
62  bool wantsInputProcessBlocks() const final { return T::HasAbility::kInputProcessBlockCache; }
63  bool wantsGlobalRuns() const final {
66  }
69  T::HasAbility::kBeginLuminosityBlockProducer or T::HasAbility::kEndLuminosityBlockProducer;
70  }
71 
72  bool hasAcquire() const final { return T::HasAbility::kExternalWork; }
73 
74  bool hasAccumulator() const final { return T::HasAbility::kAccumulator; }
75 
76  private:
90 
91  void setupStreamModules() final {
92  this->createStreamModules([this]() -> M* {
93  auto tmp = impl::makeStreamModule<T>(*m_pset, m_global.get());
94  MyGlobal::set(tmp, m_global.get());
95  return tmp;
96  });
97  m_pset = nullptr;
98  }
99 
100  void preallocLumis(unsigned int iNLumis) final {
101  m_lumis.resize(iNLumis);
102  m_lumiSummaries.resize(iNLumis);
103  }
104  void doBeginJob() final { MyGlobal::beginJob(m_global.get()); }
105  void doEndJob() final { MyGlobal::endJob(m_global.get()); }
106  void setupRun(M* iProd, RunIndex iIndex) final { MyGlobalRun::set(iProd, m_runs[iIndex].get()); }
107  void streamEndRunSummary(M* iProd, edm::Run const& iRun, edm::EventSetup const& iES) final {
108  auto s = m_runSummaries[iRun.index()].get();
109  std::lock_guard<decltype(m_runSummaryLock)> guard(m_runSummaryLock);
110  MyGlobalRunSummary::streamEndRunSummary(iProd, iRun, iES, s);
111  }
112 
113  void setupLuminosityBlock(M* iProd, LuminosityBlockIndex iIndex) final {
114  MyGlobalLuminosityBlock::set(iProd, m_lumis[iIndex].get());
115  }
117  edm::LuminosityBlock const& iLumi,
118  edm::EventSetup const& iES) final {
119  auto s = m_lumiSummaries[iLumi.index()].get();
120  std::lock_guard<decltype(m_lumiSummaryLock)> guard(m_lumiSummaryLock);
122  }
123 
125  if constexpr (T::HasAbility::kWatchProcessBlock or T::HasAbility::kBeginProcessBlockProducer) {
126  ProcessBlock processBlock(pbp, this->moduleDescription(), mcc, false);
127  ProcessBlock const& cnstProcessBlock = processBlock;
128  processBlock.setConsumer(this->consumer());
129  MyWatchProcessBlock::beginProcessBlock(cnstProcessBlock, m_global.get());
130  if constexpr (T::HasAbility::kBeginProcessBlockProducer) {
131  processBlock.setProducer(this->producer());
132  MyBeginProcessBlockProduce::produce(processBlock, m_global.get());
133  this->commit(processBlock);
134  }
135  }
136  }
137 
139  if constexpr (T::HasAbility::kInputProcessBlockCache) {
140  ProcessBlock processBlock(pbp, this->moduleDescription(), mcc, false);
141  ProcessBlock const& cnstProcessBlock = processBlock;
142  processBlock.setConsumer(this->consumer());
144  }
145  }
146 
147  void doEndProcessBlock(ProcessBlockPrincipal const& pbp, ModuleCallingContext const* mcc) final {
148  if constexpr (T::HasAbility::kWatchProcessBlock or T::HasAbility::kEndProcessBlockProducer) {
149  ProcessBlock processBlock(pbp, this->moduleDescription(), mcc, true);
150  ProcessBlock const& cnstProcessBlock = processBlock;
151  processBlock.setConsumer(this->consumer());
152  MyWatchProcessBlock::endProcessBlock(cnstProcessBlock, m_global.get());
153  if constexpr (T::HasAbility::kEndProcessBlockProducer) {
154  processBlock.setProducer(this->producer());
155  MyEndProcessBlockProduce::produce(processBlock, m_global.get());
156  this->commit(processBlock);
157  }
158  }
159  }
160 
161  void doBeginRun(RunTransitionInfo const& info, ModuleCallingContext const* mcc) final {
163  RunPrincipal const& rp = info.principal();
164  Run r(rp, this->moduleDescription(), mcc, false);
165  r.setConsumer(this->consumer());
166  r.setProducer(this->producer());
167  Run const& cnstR = r;
168  RunIndex ri = rp.index();
169  const EventSetup c{info,
170  static_cast<unsigned int>(Transition::BeginRun),
171  this->consumer()->esGetTokenIndices(Transition::BeginRun),
172  false};
173  MyGlobalRun::beginRun(cnstR, c, m_global.get(), m_runs[ri]);
174  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
176  if constexpr (T::HasAbility::kBeginRunProducer) {
178  this->commit(r);
179  }
180  }
181  }
182 
183  void doEndRun(RunTransitionInfo const& info, ModuleCallingContext const* mcc) final {
185  RunPrincipal const& rp = info.principal();
186  Run r(rp, this->moduleDescription(), mcc, true);
187  r.setConsumer(this->consumer());
188  r.setProducer(this->producer());
189 
190  RunIndex ri = rp.index();
191  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
192  const EventSetup c{info,
193  static_cast<unsigned int>(Transition::EndRun),
194  this->consumer()->esGetTokenIndices(Transition::EndRun),
195  false};
197  if constexpr (T::HasAbility::kEndRunProducer) {
199  this->commit(r);
200  }
201  MyGlobalRun::endRun(r, c, &rc);
202  }
203  }
204 
207  T::HasAbility::kBeginLuminosityBlockProducer) {
208  LuminosityBlockPrincipal const& lbp = info.principal();
209  LuminosityBlock lb(lbp, this->moduleDescription(), mcc, false);
210  lb.setConsumer(this->consumer());
211  lb.setProducer(this->producer());
212  LuminosityBlock const& cnstLb = lb;
213  LuminosityBlockIndex li = lbp.index();
214  RunIndex ri = lbp.runPrincipal().index();
215  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
216  const EventSetup c{info,
217  static_cast<unsigned int>(Transition::BeginLuminosityBlock),
218  this->consumer()->esGetTokenIndices(Transition::BeginLuminosityBlock),
219  false};
220 
222  typename T::LuminosityBlockContext lc(m_lumis[li].get(), m_runs[ri].get(), m_global.get());
224  if constexpr (T::HasAbility::kBeginLuminosityBlockProducer) {
226  this->commit(lb);
227  }
228  }
229  }
232  T::HasAbility::kEndLuminosityBlockProducer) {
233  LuminosityBlockPrincipal const& lbp = info.principal();
234  LuminosityBlock lb(lbp, this->moduleDescription(), mcc, true);
235  lb.setConsumer(this->consumer());
236  lb.setProducer(this->producer());
237 
238  LuminosityBlockIndex li = lbp.index();
239  RunIndex ri = lbp.runPrincipal().index();
240  typename T::LuminosityBlockContext lc(m_lumis[li].get(), m_runs[ri].get(), m_global.get());
241  const EventSetup c{info,
242  static_cast<unsigned int>(Transition::EndLuminosityBlock),
243  this->consumer()->esGetTokenIndices(Transition::EndLuminosityBlock),
244  false};
246  if constexpr (T::HasAbility::kEndLuminosityBlockProducer) {
248  this->commit(lb);
249  }
251  }
252  }
253 
254  // ---------- member data --------------------------------
263  };
264  } // namespace stream
265 } // namespace edm
266 
267 #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:74
edm::stream::ProducingModuleAdaptor::fillDescriptions
static void fillDescriptions(ConfigurationDescriptions &descriptions)
Definition: ProducingModuleAdaptor.h:55
edm::stream::ProducingModuleAdaptor
Definition: ProducingModuleAdaptor.h:41
edm::stream::ProducingModuleAdaptor::m_lumis
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
Definition: ProducingModuleAdaptor.h:257
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:58
edm::stream::ProducingModuleAdaptor::ProducingModuleAdaptor
ProducingModuleAdaptor(edm::ParameterSet const &iPSet)
Definition: ProducingModuleAdaptor.h:43
edm::LuminosityBlock::setProducer
void setProducer(ProducerBase const *iProducer)
Definition: LuminosityBlock.cc:54
LuminosityBlock.h
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::stream::ProducingModuleAdaptor::~ProducingModuleAdaptor
~ProducingModuleAdaptor() override
Definition: ProducingModuleAdaptor.h:53
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:258
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:12
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:67
edm::stream::ProducingModuleAdaptor::doBeginProcessBlock
void doBeginProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:124
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:116
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:205
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:256
Run.h
edm::stream::ProducingModuleAdaptor::m_global
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
Definition: ProducingModuleAdaptor.h:255
edm::stream::ProducingModuleAdaptor::doEndProcessBlock
void doEndProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:147
edm::stream::CallEndLuminosityBlockProduceImpl
Definition: callAbilities.h:442
edm::Transition::BeginLuminosityBlock
edm::stream::ProducingModuleAdaptor::doBeginJob
void doBeginJob() final
Definition: ProducingModuleAdaptor.h:104
edm::stream::ProducingModuleAdaptor::doEndLuminosityBlock
void doEndLuminosityBlock(LumiTransitionInfo const &info, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:230
edm::stream::ProducingModuleAdaptor::wantsGlobalRuns
bool wantsGlobalRuns() const final
Definition: ProducingModuleAdaptor.h:63
edm::stream::ProducingModuleAdaptor::prevalidate
static void prevalidate(ConfigurationDescriptions &descriptions)
Definition: ProducingModuleAdaptor.h:56
edm::stream::ProducingModuleAdaptor::streamEndRunSummary
void streamEndRunSummary(M *iProd, edm::Run const &iRun, edm::EventSetup const &iES) final
Definition: ProducingModuleAdaptor.h:107
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:105
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:62
edm::stream::CallEndRunProduceImpl
Definition: callAbilities.h:385
edm::ParameterSet
Definition: ParameterSet.h:47
edm::LuminosityBlock::setConsumer
void setConsumer(EDConsumerBase const *iConsumer)
Definition: LuminosityBlock.cc:33
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:161
RunPrincipal.h
edm::get
T const & get(Event const &event, InputTag const &tag) noexcept(false)
Definition: Event.h:671
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:91
edm::EventSetup
Definition: EventSetup.h:57
edm::stream::CallInputProcessBlockImpl::accessInputProcessBlock
static void accessInputProcessBlock(edm::ProcessBlock const &iProcessBlock, typename T::GlobalCache *iGC)
Definition: callAbilities.h:72
HltBtagPostValidation_cff.c
c
Definition: HltBtagPostValidation_cff.py:31
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:74
edm::stream::ProducingModuleAdaptor::m_runSummaryLock
impl::choose_mutex< typename T::RunSummaryCache >::type m_runSummaryLock
Definition: ProducingModuleAdaptor.h:259
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:262
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
edm::stream::ProducingModuleAdaptor::doEndRun
void doEndRun(RunTransitionInfo const &info, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:183
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:260
edm::stream::ProducingModuleAdaptor::setupLuminosityBlock
void setupLuminosityBlock(M *iProd, LuminosityBlockIndex iIndex) final
Definition: ProducingModuleAdaptor.h:113
edm::stream::ProducingModuleAdaptor::setupRun
void setupRun(M *iProd, RunIndex iIndex) final
Definition: ProducingModuleAdaptor.h:106
edm::stream::ProducingModuleAdaptor::doAccessInputProcessBlock
void doAccessInputProcessBlock(ProcessBlockPrincipal const &pbp, ModuleCallingContext const *mcc) final
Definition: ProducingModuleAdaptor.h:138
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:72
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:100
edm::stream::ProducingModuleAdaptor::m_lumiSummaryLock
impl::choose_mutex< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaryLock
Definition: ProducingModuleAdaptor.h:261