CMS 3D CMS Logo

List of all members | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes
edm::stream::ProducingModuleAdaptor< T, M, B > Class Template Reference

#include "ProducingModuleAdaptor.h"

Inheritance diagram for edm::stream::ProducingModuleAdaptor< T, M, B >:

Public Member Functions

bool hasAccumulator () const final
 
bool hasAcquire () const final
 
 ProducingModuleAdaptor (edm::ParameterSet const &iPSet)
 
bool wantsGlobalLuminosityBlocks () const final
 
bool wantsGlobalRuns () const final
 
 ~ProducingModuleAdaptor () override
 

Static Public Member Functions

static void fillDescriptions (ConfigurationDescriptions &descriptions)
 
static void prevalidate (ConfigurationDescriptions &descriptions)
 

Private Types

typedef CallBeginLuminosityBlockProduce< TMyBeginLuminosityBlockProduce
 
typedef CallBeginRunProduce< TMyBeginRunProduce
 
typedef CallEndLuminosityBlockProduce< TMyEndLuminosityBlockProduce
 
typedef CallEndRunProduce< TMyEndRunProduce
 
typedef CallGlobal< TMyGlobal
 
typedef CallGlobalLuminosityBlock< TMyGlobalLuminosityBlock
 
typedef CallGlobalLuminosityBlockSummary< TMyGlobalLuminosityBlockSummary
 
typedef CallGlobalRun< TMyGlobalRun
 
typedef CallGlobalRunSummary< TMyGlobalRunSummary
 

Private Member Functions

void doBeginLuminosityBlock (LuminosityBlockPrincipal const &lbp, EventSetupImpl const &ci, ModuleCallingContext const *mcc) final
 
void doBeginRun (RunPrincipal const &rp, EventSetupImpl const &ci, ModuleCallingContext const *mcc) final
 
void doEndJob () final
 
void doEndLuminosityBlock (LuminosityBlockPrincipal const &lbp, EventSetupImpl const &ci, ModuleCallingContext const *mcc) final
 
void doEndRun (RunPrincipal const &rp, EventSetupImpl const &ci, ModuleCallingContext const *mcc) final
 
const ProducingModuleAdaptoroperator= (const ProducingModuleAdaptor &)=delete
 
void preallocLumis (unsigned int iNLumis) final
 
 ProducingModuleAdaptor (const ProducingModuleAdaptor &)=delete
 
void setupLuminosityBlock (M *iProd, LuminosityBlockIndex iIndex) final
 
void setupRun (M *iProd, RunIndex iIndex) final
 
void setupStreamModules () final
 
void streamEndLuminosityBlockSummary (M *iProd, edm::LuminosityBlock const &iLumi, edm::EventSetup const &iES) final
 
void streamEndRunSummary (M *iProd, edm::Run const &iRun, edm::EventSetup const &iES) final
 

Private Attributes

impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
 
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
 
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
 
impl::choose_mutex< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaryLock
 
ParameterSet const * m_pset
 
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
 
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
 
impl::choose_mutex< typename T::RunSummaryCache >::type m_runSummaryLock
 

Detailed Description

template<typename T, typename M, typename B>
class edm::stream::ProducingModuleAdaptor< T, M, B >

Description: Adapts an edm::stream::EDProducer<> to work with an edm::Worker

Usage: <usage>

Definition at line 39 of file ProducingModuleAdaptor.h.

Member Typedef Documentation

template<typename T , typename M , typename B >
typedef CallBeginLuminosityBlockProduce<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyBeginLuminosityBlockProduce
private

Definition at line 75 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallBeginRunProduce<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyBeginRunProduce
private

Definition at line 71 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallEndLuminosityBlockProduce<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyEndLuminosityBlockProduce
private

Definition at line 76 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallEndRunProduce<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyEndRunProduce
private

Definition at line 72 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallGlobal<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyGlobal
private

Definition at line 68 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallGlobalLuminosityBlock<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyGlobalLuminosityBlock
private

Definition at line 73 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallGlobalLuminosityBlockSummary<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyGlobalLuminosityBlockSummary
private

Definition at line 74 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallGlobalRun<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyGlobalRun
private

Definition at line 69 of file ProducingModuleAdaptor.h.

template<typename T , typename M , typename B >
typedef CallGlobalRunSummary<T> edm::stream::ProducingModuleAdaptor< T, M, B >::MyGlobalRunSummary
private

Definition at line 70 of file ProducingModuleAdaptor.h.

Constructor & Destructor Documentation

template<typename T , typename M , typename B >
edm::stream::ProducingModuleAdaptor< T, M, B >::ProducingModuleAdaptor ( edm::ParameterSet const &  iPSet)
inline

Definition at line 41 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_global, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumis, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaries, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs, and edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaries.

Referenced by edm::stream::ProducingModuleAdaptor< T, M, B >::doEndLuminosityBlock().

41  : m_pset(&iPSet) {
42  m_runs.resize(1);
43  m_lumis.resize(1);
44  m_runSummaries.resize(1);
45  m_lumiSummaries.resize(1);
46  typename T::GlobalCache const* dummy = nullptr;
47  m_global = impl::makeGlobal<T>(iPSet, dummy);
48  }
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
template<typename T , typename M , typename B >
edm::stream::ProducingModuleAdaptor< T, M, B >::~ProducingModuleAdaptor ( )
inlineoverride

Definition at line 49 of file ProducingModuleAdaptor.h.

49 {}
template<typename T , typename M , typename B >
edm::stream::ProducingModuleAdaptor< T, M, B >::ProducingModuleAdaptor ( const ProducingModuleAdaptor< T, M, B > &  )
privatedelete

Member Function Documentation

template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::doBeginLuminosityBlock ( LuminosityBlockPrincipal const &  lbp,
EventSetupImpl const &  ci,
ModuleCallingContext const *  mcc 
)
inlinefinalprivate

Definition at line 149 of file ProducingModuleAdaptor.h.

References edm::BeginLuminosityBlock, edm::stream::CallGlobalLuminosityBlockImpl< T, bool >::beginLuminosityBlock(), edm::stream::CallGlobalLuminosityBlockSummaryImpl< T, bool >::beginLuminosityBlock(), EnergyCorrector::c, constexpr, edm::module::AbilityBits::kLuminosityBlockCache, edm::module::AbilityBits::kLuminosityBlockSummaryCache, edm::stream::ProducingModuleAdaptor< T, M, B >::m_global, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumis, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaries, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs, or, edm::stream::CallBeginLuminosityBlockProduceImpl< T, bool >::produce(), uncleanedOnlyElectronSequence_cff::producer, edm::LuminosityBlock::setConsumer(), and edm::LuminosityBlock::setProducer().

151  {
153  T::HasAbility::kBeginLuminosityBlockProducer) {
154  LuminosityBlock lb(lbp, this->moduleDescription(), mcc, false);
155  lb.setConsumer(this->consumer());
156  lb.setProducer(this->producer());
157  LuminosityBlock const& cnstLb = lb;
158  LuminosityBlockIndex li = lbp.index();
159  RunIndex ri = lbp.runPrincipal().index();
160  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
161  const EventSetup c{ci,
162  static_cast<unsigned int>(Transition::BeginLuminosityBlock),
163  this->consumer()->esGetTokenIndices(Transition::BeginLuminosityBlock)};
164 
166  typename T::LuminosityBlockContext lc(m_lumis[li].get(), m_runs[ri].get(), m_global.get());
168  if constexpr (T::HasAbility::kBeginLuminosityBlockProducer) {
170  this->commit(lb);
171  }
172  }
173  }
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
static void produce(edm::LuminosityBlock &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iRC)
static void beginLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iRC, std::shared_ptr< typename T::LuminosityBlockSummaryCache > &oCache)
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
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
static void beginLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::RunContext const *iRC, std::shared_ptr< typename T::LuminosityBlockCache const > &oCache)
#define constexpr
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::doBeginRun ( RunPrincipal const &  rp,
EventSetupImpl const &  ci,
ModuleCallingContext const *  mcc 
)
inlinefinalprivate

Definition at line 110 of file ProducingModuleAdaptor.h.

References edm::BeginRun, edm::stream::CallGlobalRunImpl< T, bool >::beginRun(), edm::stream::CallGlobalRunSummaryImpl< T, bool >::beginRun(), EnergyCorrector::c, constexpr, edm::module::AbilityBits::kBeginRunProducer, edm::module::AbilityBits::kRunCache, edm::module::AbilityBits::kRunSummaryCache, edm::stream::ProducingModuleAdaptor< T, M, B >::m_global, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaries, or, edm::stream::CallBeginRunProduceImpl< T, bool >::produce(), uncleanedOnlyElectronSequence_cff::producer, alignCSCRings::r, edm::Run::setConsumer(), and edm::Run::setProducer().

110  {
112  Run r(rp, this->moduleDescription(), mcc, false);
113  r.setConsumer(this->consumer());
114  r.setProducer(this->producer());
115  Run const& cnstR = r;
116  RunIndex ri = rp.index();
117  const EventSetup c{ci,
118  static_cast<unsigned int>(Transition::BeginRun),
119  this->consumer()->esGetTokenIndices(Transition::BeginRun)};
120  MyGlobalRun::beginRun(cnstR, c, m_global.get(), m_runs[ri]);
121  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
123  if constexpr (T::HasAbility::kBeginRunProducer) {
125  this->commit(r);
126  }
127  }
128  }
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:88
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
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:56
static void produce(edm::Run &iRun, edm::EventSetup const &iES, typename T::RunContext const *iRC)
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
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
#define constexpr
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::doEndJob ( )
inlinefinalprivate

Definition at line 91 of file ProducingModuleAdaptor.h.

References edm::stream::CallGlobalImpl< T, bool >::endJob(), and edm::stream::ProducingModuleAdaptor< T, M, B >::m_global.

91 { MyGlobal::endJob(m_global.get()); }
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
static void endJob(typename T::GlobalCache *iCache)
Definition: callAbilities.h:41
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::doEndLuminosityBlock ( LuminosityBlockPrincipal const &  lbp,
EventSetupImpl const &  ci,
ModuleCallingContext const *  mcc 
)
inlinefinalprivate

Definition at line 174 of file ProducingModuleAdaptor.h.

References EnergyCorrector::c, constexpr, edm::EndLuminosityBlock, edm::stream::CallGlobalLuminosityBlockImpl< T, bool >::endLuminosityBlock(), edm::stream::CallGlobalLuminosityBlockSummaryImpl< T, bool >::globalEndLuminosityBlock(), edm::module::AbilityBits::kLuminosityBlockCache, edm::module::AbilityBits::kLuminosityBlockSummaryCache, edm::stream::ProducingModuleAdaptor< T, M, B >::m_global, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumis, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaries, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs, edm::stream::ProducingModuleAdaptor< T, M, B >::operator=(), or, edm::stream::CallEndLuminosityBlockProduceImpl< T, bProduce, bSummary >::produce(), uncleanedOnlyElectronSequence_cff::producer, edm::stream::ProducingModuleAdaptor< T, M, B >::ProducingModuleAdaptor(), edm::LuminosityBlock::setConsumer(), and edm::LuminosityBlock::setProducer().

176  {
178  T::HasAbility::kEndLuminosityBlockProducer) {
179  LuminosityBlock lb(lbp, this->moduleDescription(), mcc, true);
180  lb.setConsumer(this->consumer());
181  lb.setProducer(this->producer());
182 
183  LuminosityBlockIndex li = lbp.index();
184  RunIndex ri = lbp.runPrincipal().index();
185  typename T::LuminosityBlockContext lc(m_lumis[li].get(), m_runs[ri].get(), m_global.get());
186  const EventSetup c{ci,
187  static_cast<unsigned int>(Transition::EndLuminosityBlock),
188  this->consumer()->esGetTokenIndices(Transition::EndLuminosityBlock)};
189  if constexpr (T::HasAbility::kEndLuminosityBlockProducer) {
191  this->commit(lb);
192  }
195  }
196  }
static void endLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iContext)
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
static void produce(edm::LuminosityBlock &, edm::EventSetup const &, typename T::LuminosityBlockContext const *, typename T::LuminosityBlockSummaryCache const *)
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
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
static void globalEndLuminosityBlock(edm::LuminosityBlock const &Lumi, edm::EventSetup const &iES, typename T::LuminosityBlockContext const *iContext, typename T::LuminosityBlockSummaryCache *iCache)
#define constexpr
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::doEndRun ( RunPrincipal const &  rp,
EventSetupImpl const &  ci,
ModuleCallingContext const *  mcc 
)
inlinefinalprivate

Definition at line 129 of file ProducingModuleAdaptor.h.

References EnergyCorrector::c, constexpr, edm::EndRun, edm::stream::CallGlobalRunImpl< T, bool >::endRun(), edm::stream::CallGlobalRunSummaryImpl< T, bool >::globalEndRun(), edm::module::AbilityBits::kEndRunProducer, edm::module::AbilityBits::kRunCache, edm::module::AbilityBits::kRunSummaryCache, edm::stream::ProducingModuleAdaptor< T, M, B >::m_global, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaries, or, edm::stream::CallEndRunProduceImpl< T, bProduce, bSummary >::produce(), uncleanedOnlyElectronSequence_cff::producer, alignCSCRings::r, edm::Run::setConsumer(), and edm::Run::setProducer().

129  {
131  Run r(rp, this->moduleDescription(), mcc, true);
132  r.setConsumer(this->consumer());
133  r.setProducer(this->producer());
134 
135  RunIndex ri = rp.index();
136  typename T::RunContext rc(m_runs[ri].get(), m_global.get());
137  const EventSetup c{ci,
138  static_cast<unsigned int>(Transition::EndRun),
139  this->consumer()->esGetTokenIndices(Transition::EndRun)};
140  if constexpr (T::HasAbility::kEndRunProducer) {
141  MyEndRunProduce::produce(r, c, &rc, m_runSummaries[ri].get());
142  this->commit(r);
143  }
145  MyGlobalRun::endRun(r, c, &rc);
146  }
147  }
static void endRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iContext)
Definition: callAbilities.h:68
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
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
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
static void globalEndRun(edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunContext const *iContext, typename T::RunSummaryCache *iCache)
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
static void produce(edm::Run &, edm::EventSetup const &, typename T::RunContext const *, typename T::RunSummaryCache const *)
#define constexpr
template<typename T , typename M , typename B >
static void edm::stream::ProducingModuleAdaptor< T, M, B >::fillDescriptions ( ConfigurationDescriptions descriptions)
inlinestatic

Definition at line 51 of file ProducingModuleAdaptor.h.

References fillDescriptions().

51 { T::fillDescriptions(descriptions); }
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
template<typename T , typename M , typename B >
bool edm::stream::ProducingModuleAdaptor< T, M, B >::hasAccumulator ( ) const
inlinefinal

Definition at line 65 of file ProducingModuleAdaptor.h.

65 { return T::HasAbility::kAccumulator; }
template<typename T , typename M , typename B >
bool edm::stream::ProducingModuleAdaptor< T, M, B >::hasAcquire ( ) const
inlinefinal

Definition at line 63 of file ProducingModuleAdaptor.h.

63 { return T::HasAbility::kExternalWork; }
template<typename T , typename M , typename B >
const ProducingModuleAdaptor& edm::stream::ProducingModuleAdaptor< T, M, B >::operator= ( const ProducingModuleAdaptor< T, M, B > &  )
privatedelete
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::preallocLumis ( unsigned int  iNLumis)
inlinefinalprivate

Definition at line 87 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumis, and edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaries.

87  {
88  m_lumis.resize(iNLumis);
89  m_lumiSummaries.resize(iNLumis);
90  }
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
template<typename T , typename M , typename B >
static void edm::stream::ProducingModuleAdaptor< T, M, B >::prevalidate ( ConfigurationDescriptions descriptions)
inlinestatic

Definition at line 52 of file ProducingModuleAdaptor.h.

52 { T::prevalidate(descriptions); }
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::setupLuminosityBlock ( M *  iProd,
LuminosityBlockIndex  iIndex 
)
inlinefinalprivate

Definition at line 99 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumis, and edm::stream::CallGlobalLuminosityBlockImpl< T, bool >::set().

99  {
100  MyGlobalLuminosityBlock::set(iProd, m_lumis[iIndex].get());
101  }
static void set(B *iProd, typename T::LuminosityBlockCache const *iCache)
impl::choose_shared_vec< typename T::LuminosityBlockCache const >::type m_lumis
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::setupRun ( M *  iProd,
RunIndex  iIndex 
)
inlinefinalprivate

Definition at line 92 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs, and edm::stream::CallGlobalRunImpl< T, bool >::set().

92 { MyGlobalRun::set(iProd, m_runs[iIndex].get()); }
static void set(B *iProd, typename T::RunCache const *iCache)
Definition: callAbilities.h:64
impl::choose_shared_vec< typename T::RunCache const >::type m_runs
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::setupStreamModules ( )
inlinefinalprivate

Definition at line 78 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_global, edm::stream::ProducingModuleAdaptor< T, M, B >::m_pset, edm::stream::CallGlobalImpl< T, bool >::set(), and tmp.

78  {
79  this->createStreamModules([this]() -> M* {
80  auto tmp = impl::makeStreamModule<T>(*m_pset, m_global.get());
81  MyGlobal::set(tmp, m_global.get());
82  return tmp;
83  });
84  m_pset = nullptr;
85  }
impl::choose_unique_ptr< typename T::GlobalCache >::type m_global
std::vector< std::vector< double > > tmp
Definition: MVATrainer.cc:100
static void set(B *iProd, typename T::GlobalCache const *iCache)
Definition: callAbilities.h:38
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::streamEndLuminosityBlockSummary ( M *  iProd,
edm::LuminosityBlock const &  iLumi,
edm::EventSetup const &  iES 
)
inlinefinalprivate

Definition at line 102 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaries, edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaryLock, alignCSCRings::s, and edm::stream::CallGlobalLuminosityBlockSummaryImpl< T, bool >::streamEndLuminosityBlockSummary().

104  {
105  auto s = m_lumiSummaries[iLumi.index()].get();
106  std::lock_guard<decltype(m_lumiSummaryLock)> guard(m_lumiSummaryLock);
108  }
impl::choose_mutex< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaryLock
impl::choose_shared_vec< typename T::LuminosityBlockSummaryCache >::type m_lumiSummaries
static void streamEndLuminosityBlockSummary(B *iProd, edm::LuminosityBlock const &iLumi, edm::EventSetup const &iES, typename T::LuminosityBlockSummaryCache *iCache)
template<typename T , typename M , typename B >
void edm::stream::ProducingModuleAdaptor< T, M, B >::streamEndRunSummary ( M *  iProd,
edm::Run const &  iRun,
edm::EventSetup const &  iES 
)
inlinefinalprivate

Definition at line 93 of file ProducingModuleAdaptor.h.

References edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaries, edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaryLock, alignCSCRings::s, and edm::stream::CallGlobalRunSummaryImpl< T, bool >::streamEndRunSummary().

93  {
94  auto s = m_runSummaries[iRun.index()].get();
95  std::lock_guard<decltype(m_runSummaryLock)> guard(m_runSummaryLock);
96  MyGlobalRunSummary::streamEndRunSummary(iProd, iRun, iES, s);
97  }
static void streamEndRunSummary(B *iProd, edm::Run const &iRun, edm::EventSetup const &iES, typename T::RunSummaryCache *iCache)
Definition: callAbilities.h:95
impl::choose_mutex< typename T::RunSummaryCache >::type m_runSummaryLock
impl::choose_shared_vec< typename T::RunSummaryCache >::type m_runSummaries
template<typename T , typename M , typename B >
bool edm::stream::ProducingModuleAdaptor< T, M, B >::wantsGlobalLuminosityBlocks ( ) const
inlinefinal

Definition at line 58 of file ProducingModuleAdaptor.h.

References edm::module::AbilityBits::kLuminosityBlockCache, edm::module::AbilityBits::kLuminosityBlockSummaryCache, and or.

58  {
60  T::HasAbility::kBeginLuminosityBlockProducer or T::HasAbility::kEndLuminosityBlockProducer;
61  }
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
template<typename T , typename M , typename B >
bool edm::stream::ProducingModuleAdaptor< T, M, B >::wantsGlobalRuns ( ) const
inlinefinal

Definition at line 54 of file ProducingModuleAdaptor.h.

References edm::module::AbilityBits::kBeginRunProducer, edm::module::AbilityBits::kEndRunProducer, edm::module::AbilityBits::kRunCache, edm::module::AbilityBits::kRunSummaryCache, and or.

54  {
57  }
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

Member Data Documentation

template<typename T , typename M , typename B >
impl::choose_unique_ptr<typename T::GlobalCache>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_global
private
template<typename T , typename M , typename B >
impl::choose_shared_vec<typename T::LuminosityBlockCache const>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumis
private
template<typename T , typename M , typename B >
impl::choose_shared_vec<typename T::LuminosityBlockSummaryCache>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaries
private
template<typename T , typename M , typename B >
impl::choose_mutex<typename T::LuminosityBlockSummaryCache>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_lumiSummaryLock
private
template<typename T , typename M , typename B >
ParameterSet const* edm::stream::ProducingModuleAdaptor< T, M, B >::m_pset
private
template<typename T , typename M , typename B >
impl::choose_shared_vec<typename T::RunCache const>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_runs
private
template<typename T , typename M , typename B >
impl::choose_shared_vec<typename T::RunSummaryCache>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaries
private
template<typename T , typename M , typename B >
impl::choose_mutex<typename T::RunSummaryCache>::type edm::stream::ProducingModuleAdaptor< T, M, B >::m_runSummaryLock
private