CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Static Private Attributes | Friends
edm::LuminosityBlock Class Reference

#include <LuminosityBlock.h>

Inheritance diagram for edm::LuminosityBlock:
edm::LuminosityBlockBase

Public Types

typedef unsigned long CacheIdentifier_t
 

Public Member Functions

CacheIdentifier_t cacheIdentifier () const
 
template<typename PROD , typename... Args>
void emplace (EDPutToken token, Args &&... args)
 
template<typename PROD , typename... Args>
void emplace (EDPutTokenT< PROD > token, Args &&... args)
 puts a new product More...
 
template<typename PROD >
PROD const & get (EDGetTokenT< PROD > token) const noexcept(false)
 
void getAllStableProvenance (std::vector< StableProvenance const * > &provenances) const
 
template<typename PROD >
bool getByLabel (InputTag const &tag, Handle< PROD > &result) const
 same as above, but using the InputTag class More...
 
template<typename PROD >
bool getByLabel (std::string const &label, Handle< PROD > &result) const
 
template<typename PROD >
bool getByLabel (std::string const &label, std::string const &productInstanceName, Handle< PROD > &result) const
 
template<typename PROD >
bool getByToken (EDGetToken token, Handle< PROD > &result) const
 
template<typename PROD >
bool getByToken (EDGetTokenT< PROD > token, Handle< PROD > &result) const
 
template<typename PROD >
Handle< PRODgetHandle (EDGetTokenT< PROD > token) const
 
template<typename PROD >
void getManyByType (std::vector< Handle< PROD >> &results) const
 
Provenance getProvenance (BranchID const &theID) const
 
Run const & getRun () const
 
LuminosityBlockIndex index () const
 
void labelsForToken (EDGetToken const &iToken, ProductLabels &oLabels) const
 
 LuminosityBlock (LuminosityBlockPrincipal const &, ModuleDescription const &, ModuleCallingContext const *, bool isAtEnd)
 
 LuminosityBlock (LumiTransitionInfo const &, ModuleDescription const &, ModuleCallingContext const *, bool isAtEnd)
 
LuminosityBlockAuxiliary const & luminosityBlockAuxiliary () const override
 
ModuleCallingContext const * moduleCallingContext () const
 
ProcessHistory const & processHistory () const
 
ProcessHistoryID const & processHistoryID () const
 
template<typename PROD >
void put (EDPutToken token, std::unique_ptr< PROD > product)
 
template<typename PROD >
void put (EDPutTokenT< PROD > token, std::unique_ptr< PROD > product)
 
template<typename PROD >
void put (std::unique_ptr< PROD > product)
 Put a new product. More...
 
template<typename PROD >
void put (std::unique_ptr< PROD > product, std::string const &productInstanceName)
 Put a new product with a 'product instance name'. More...
 
void setConsumer (EDConsumerBase const *iConsumer)
 
void setProducer (ProducerBase const *iProducer)
 
void setSharedResourcesAcquirer (SharedResourcesAcquirer *iResourceAcquirer)
 
 ~LuminosityBlock () override
 
- Public Member Functions inherited from edm::LuminosityBlockBase
Timestamp const & beginTime () const
 
Timestamp const & endTime () const
 
template<class T >
bool getByLabel (const InputTag &tag, Handle< T > &result) const
 
template<typename PROD >
bool getByLabel (InputTag const &tag, Handle< PROD > &result) const
 same as above, but using the InputTag class More...
 
LuminosityBlockID id () const
 
LuminosityBlockNumber_t luminosityBlock () const
 
 LuminosityBlockBase ()
 
RunNumber_t run () const
 
virtual ~LuminosityBlockBase ()
 

Private Types

typedef std::vector< edm::propagate_const< std::unique_ptr< WrapperBase > > > ProductPtrVec
 

Private Member Functions

void commit_ (std::vector< edm::ProductResolverIndex > const &iShouldPut)
 
template<typename PROD , typename... Args>
void emplaceImpl (EDPutToken::value_type token, Args &&... args)
 
void fillRun () const
 
BasicHandle getByLabelImpl (std::type_info const &iWrapperType, std::type_info const &iProductType, InputTag const &iTag) const override
 
LuminosityBlockPrincipal const & luminosityBlockPrincipal () const
 
template<typename PROD >
void putImpl (EDPutToken::value_type token, std::unique_ptr< PROD > product)
 
ProductPtrVecputProducts ()
 
ProductPtrVec const & putProducts () const
 

Private Attributes

LuminosityBlockAuxiliary const & aux_
 
ModuleCallingContext const * moduleCallingContext_
 
PrincipalGetAdapter provRecorder_
 
ProductPtrVec putProducts_
 
std::optional< Runrun_
 

Static Private Attributes

static const std::string emptyString_
 

Friends

class ProducerBase
 
class RawInputSource
 
template<typename T >
class stream::ProducingModuleAdaptorBase
 

Detailed Description

Definition at line 50 of file LuminosityBlock.h.

Member Typedef Documentation

◆ CacheIdentifier_t

If you are caching data from the LuminosityBlock, you should also keep this number. If this number changes then you know that the data you have cached is invalid. The value of '0' will never be returned so you can use that to denote that you have not yet checked the value.

Definition at line 72 of file LuminosityBlock.h.

◆ ProductPtrVec

typedef std::vector<edm::propagate_const<std::unique_ptr<WrapperBase> > > edm::LuminosityBlock::ProductPtrVec
private

Definition at line 165 of file LuminosityBlock.h.

Constructor & Destructor Documentation

◆ LuminosityBlock() [1/2]

LuminosityBlock::LuminosityBlock ( LumiTransitionInfo const &  info,
ModuleDescription const &  md,
ModuleCallingContext const *  mcc,
bool  isAtEnd 
)

Definition at line 13 of file LuminosityBlock.cc.

17  : LuminosityBlock(info.principal(), md, mcc, isAtEnd) {}

◆ LuminosityBlock() [2/2]

LuminosityBlock::LuminosityBlock ( LuminosityBlockPrincipal const &  lbp,
ModuleDescription const &  md,
ModuleCallingContext const *  moduleCallingContext,
bool  isAtEnd 
)

Definition at line 19 of file LuminosityBlock.cc.

23  : provRecorder_(lbp, md, isAtEnd), aux_(lbp.aux()), run_(), moduleCallingContext_(moduleCallingContext) {}

◆ ~LuminosityBlock()

LuminosityBlock::~LuminosityBlock ( )
override

Definition at line 25 of file LuminosityBlock.cc.

25 {}

Member Function Documentation

◆ cacheIdentifier()

LuminosityBlock::CacheIdentifier_t LuminosityBlock::cacheIdentifier ( ) const

Definition at line 29 of file LuminosityBlock.cc.

29  {
31  }

References edm::Principal::cacheIdentifier(), and luminosityBlockPrincipal().

◆ commit_()

void LuminosityBlock::commit_ ( std::vector< edm::ProductResolverIndex > const &  iShouldPut)
private

Definition at line 72 of file LuminosityBlock.cc.

72  {
73  LuminosityBlockPrincipal const& lbp = luminosityBlockPrincipal();
74  size_t nPut = 0;
75  for (size_t i = 0; i < putProducts().size(); ++i) {
76  auto& p = get_underlying_safe(putProducts()[i]);
77  if (p) {
79  ++nPut;
80  }
81  }
82 
83  auto sz = iShouldPut.size();
84  if (sz != 0 and sz != nPut) {
85  //some were missed
86  auto& p = provRecorder_.principal();
87  for (auto index : iShouldPut) {
88  auto resolver = p.getProductResolverByIndex(index);
89  if (not resolver->productResolved() and isEndTransition(provRecorder_.transition()) ==
90  resolver->branchDescription().availableOnlyAtEndTransition()) {
91  resolver->putProduct(std::unique_ptr<WrapperBase>());
92  }
93  }
94  }
95 
96  // the cleanup is all or none
97  putProducts().clear();
98  }

References edm::get_underlying_safe(), mps_fire::i, index(), edm::isEndTransition(), luminosityBlockPrincipal(), eostools::move(), AlCaHLTBitMon_ParallelJobs::p, edm::PrincipalGetAdapter::principal(), provRecorder_, edm::LuminosityBlockPrincipal::put(), putProducts(), edm::PrincipalGetAdapter::putTokenIndexToProductResolverIndex(), and edm::PrincipalGetAdapter::transition().

Referenced by edm::stream::ProducingModuleAdaptorBase< EDProducerBase >::commit().

◆ emplace() [1/2]

template<typename PROD , typename... Args>
void LuminosityBlock::emplace ( EDPutToken  token,
Args &&...  args 
)

◆ emplace() [2/2]

template<typename PROD , typename... Args>
void LuminosityBlock::emplace ( EDPutTokenT< PROD token,
Args &&...  args 
)

◆ emplaceImpl()

template<typename PROD , typename... Args>
void LuminosityBlock::emplaceImpl ( EDPutToken::value_type  token,
Args &&...  args 
)
private

Definition at line 268 of file LuminosityBlock.h.

268  {
269  assert(index < putProducts().size());
270 
271  std::unique_ptr<Wrapper<PROD>> wp(new Wrapper<PROD>(WrapperBase::Emplace{}, std::forward<Args>(args)...));
272 
273  // The following will call post_insert if T has such a function,
274  // and do nothing if T has no such function.
275  std::conditional_t<detail::has_postinsert<PROD>::value, DoPostInsert<PROD>, DoNotPostInsert<PROD>> maybe_inserter;
276  maybe_inserter(&(wp->bareProduct()));
277 
279  }

References writedatasetfile::args, cms::cuda::assert(), index(), eostools::move(), putProducts(), findQualityFiles::size, relativeConstraints::value, and pfClustersFromHGC3DClusters_cfi::wp.

Referenced by emplace().

◆ fillRun()

void LuminosityBlock::fillRun ( ) const
private

◆ get()

template<typename PROD >
PROD const & LuminosityBlock::get ( EDGetTokenT< PROD token) const
noexcept

◆ getAllStableProvenance()

void LuminosityBlock::getAllStableProvenance ( std::vector< StableProvenance const * > &  provenances) const

◆ getByLabel() [1/3]

template<typename PROD >
bool LuminosityBlock::getByLabel ( InputTag const &  tag,
Handle< PROD > &  result 
) const

same as above, but using the InputTag class

Definition at line 305 of file LuminosityBlock.h.

305  {
307  principal_get_adapter_detail::throwOnPrematureRead("Lumi", TypeID(typeid(PROD)), tag.label(), tag.instance());
308  }
309  result.clear();
310  BasicHandle bh = provRecorder_.getByLabel_(TypeID(typeid(PROD)), tag, moduleCallingContext_);
311  result = convert_handle<PROD>(std::move(bh)); // throws on conversion error
312  if (result.failedToGet()) {
313  return false;
314  }
315  return true;
316  }

References edm::PrincipalGetAdapter::checkIfComplete(), edm::PrincipalGetAdapter::getByLabel_(), moduleCallingContext_, eostools::move(), PROD, provRecorder_, mps_fire::result, GlobalPosition_Frontier_DevDB_cff::tag, and edm::principal_get_adapter_detail::throwOnPrematureRead().

◆ getByLabel() [2/3]

template<typename PROD >
bool LuminosityBlock::getByLabel ( std::string const &  label,
Handle< PROD > &  result 
) const

◆ getByLabel() [3/3]

template<typename PROD >
bool LuminosityBlock::getByLabel ( std::string const &  label,
std::string const &  productInstanceName,
Handle< PROD > &  result 
) const

Definition at line 287 of file LuminosityBlock.h.

289  {
291  principal_get_adapter_detail::throwOnPrematureRead("Lumi", TypeID(typeid(PROD)), label, productInstanceName);
292  }
293  result.clear();
294  BasicHandle bh = provRecorder_.getByLabel_(
295  TypeID(typeid(PROD)), label, productInstanceName, emptyString_, moduleCallingContext_);
296  result = convert_handle<PROD>(std::move(bh)); // throws on conversion error
297  if (result.failedToGet()) {
298  return false;
299  }
300  return true;
301  }

References edm::PrincipalGetAdapter::checkIfComplete(), emptyString_, edm::PrincipalGetAdapter::getByLabel_(), label, moduleCallingContext_, eostools::move(), PROD, provRecorder_, mps_fire::result, and edm::principal_get_adapter_detail::throwOnPrematureRead().

◆ getByLabelImpl()

BasicHandle LuminosityBlock::getByLabelImpl ( std::type_info const &  iWrapperType,
std::type_info const &  iProductType,
InputTag const &  iTag 
) const
overrideprivatevirtual

Implements edm::LuminosityBlockBase.

Definition at line 106 of file LuminosityBlock.cc.

108  {
109  BasicHandle h = provRecorder_.getByLabel_(TypeID(iProductType), iTag, moduleCallingContext_);
110  return h;
111  }

References edm::PrincipalGetAdapter::getByLabel_(), h, moduleCallingContext_, and provRecorder_.

◆ getByToken() [1/2]

template<typename PROD >
bool LuminosityBlock::getByToken ( EDGetToken  token,
Handle< PROD > &  result 
) const

Definition at line 319 of file LuminosityBlock.h.

319  {
322  }
323  result.clear();
324  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(PROD)), PRODUCT_TYPE, token, moduleCallingContext_);
325  result = convert_handle<PROD>(std::move(bh)); // throws on conversion error
326  if (result.failedToGet()) {
327  return false;
328  }
329  return true;
330  }

References edm::PrincipalGetAdapter::checkIfComplete(), edm::PrincipalGetAdapter::getByToken_(), moduleCallingContext_, eostools::move(), PROD, edm::PRODUCT_TYPE, provRecorder_, mps_fire::result, edm::principal_get_adapter_detail::throwOnPrematureRead(), and unpackBuffers-CaloStage2::token.

Referenced by EventHeader::analyze(), L1GtAnalyzer::analyzeConditionsInLumiBlock(), RivetAnalyzer::beginLuminosityBlock(), pat::PATTriggerEventProducer::beginLuminosityBlock(), HLTPrescaleRecorder::beginLuminosityBlock(), BrilClient::dqmEndLuminosityBlock(), MillePedeFileExtractor::endLuminosityBlock(), DQMLumiMonitor::endLuminosityBlock(), CorrPCCProducer::endLuminosityBlock(), EDMtoMEConverter::Tokens< T >::getData(), GetLumi::getRawValue(), GenFilterEfficiencyAnalyzer::globalEndLuminosityBlock(), GenXSecAnalyzer::globalEndLuminosityBlock(), RawPCCProducer::globalEndLuminosityBlockProduce(), AlcaBeamSpotManager::readLumi(), SiPixelStatusManager::readLumi(), and GenWeightsTableProducer::streamBeginLuminosityBlock().

◆ getByToken() [2/2]

template<typename PROD >
bool LuminosityBlock::getByToken ( EDGetTokenT< PROD token,
Handle< PROD > &  result 
) const

Definition at line 333 of file LuminosityBlock.h.

333  {
336  }
337  result.clear();
338  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(PROD)), PRODUCT_TYPE, token, moduleCallingContext_);
339  result = convert_handle<PROD>(std::move(bh)); // throws on conversion error
340  if (result.failedToGet()) {
341  return false;
342  }
343  return true;
344  }

References edm::PrincipalGetAdapter::checkIfComplete(), edm::PrincipalGetAdapter::getByToken_(), moduleCallingContext_, eostools::move(), PROD, edm::PRODUCT_TYPE, provRecorder_, mps_fire::result, edm::principal_get_adapter_detail::throwOnPrematureRead(), and unpackBuffers-CaloStage2::token.

◆ getHandle()

template<typename PROD >
Handle< PROD > LuminosityBlock::getHandle ( EDGetTokenT< PROD token) const

◆ getManyByType()

template<typename PROD >
void LuminosityBlock::getManyByType ( std::vector< Handle< PROD >> &  results) const

◆ getProvenance()

Provenance LuminosityBlock::getProvenance ( BranchID const &  theID) const

◆ getRun()

Run const& edm::LuminosityBlock::getRun ( ) const
inline

Definition at line 107 of file LuminosityBlock.h.

107  {
108  if (not run_) {
109  fillRun();
110  }
111  return run_.value();
112  }

References fillRun(), and run_.

Referenced by LumiCalculator::endLuminosityBlock(), edm::Event::getRun(), GenXSecAnalyzer::globalEndLuminosityBlock(), and L1TStage2CaloLayer1::globalEndLuminosityBlockSummary().

◆ index()

LuminosityBlockIndex LuminosityBlock::index ( ) const

◆ labelsForToken()

void edm::LuminosityBlock::labelsForToken ( EDGetToken const &  iToken,
ProductLabels oLabels 
) const
inline

Definition at line 147 of file LuminosityBlock.h.

147  {
148  provRecorder_.labelsForToken(iToken, oLabels);
149  }

References edm::PrincipalGetAdapter::labelsForToken(), and provRecorder_.

◆ luminosityBlockAuxiliary()

LuminosityBlockAuxiliary const& edm::LuminosityBlock::luminosityBlockAuxiliary ( ) const
inlineoverridevirtual

Implements edm::LuminosityBlockBase.

Definition at line 60 of file LuminosityBlock.h.

60 { return aux_; }

References aux_.

Referenced by PixelLumiDQM::beginLuminosityBlock(), and PixelLumiDQM::endLuminosityBlock().

◆ luminosityBlockPrincipal()

LuminosityBlockPrincipal const & LuminosityBlock::luminosityBlockPrincipal ( ) const
private

Definition at line 60 of file LuminosityBlock.cc.

60  {
61  return dynamic_cast<LuminosityBlockPrincipal const&>(provRecorder_.principal());
62  }

References edm::PrincipalGetAdapter::principal(), and provRecorder_.

Referenced by cacheIdentifier(), commit_(), fillRun(), getAllStableProvenance(), getProvenance(), index(), and processHistoryID().

◆ moduleCallingContext()

ModuleCallingContext const* edm::LuminosityBlock::moduleCallingContext ( ) const
inline

Definition at line 145 of file LuminosityBlock.h.

145 { return moduleCallingContext_; }

References moduleCallingContext_.

◆ processHistory()

ProcessHistory const & LuminosityBlock::processHistory ( ) const

Definition at line 104 of file LuminosityBlock.cc.

104 { return provRecorder_.processHistory(); }

References edm::PrincipalGetAdapter::processHistory(), and provRecorder_.

◆ processHistoryID()

ProcessHistoryID const & LuminosityBlock::processHistoryID ( ) const

Definition at line 100 of file LuminosityBlock.cc.

100  {
102  }

References luminosityBlockPrincipal(), and edm::Principal::processHistoryID().

◆ put() [1/4]

template<typename PROD >
void LuminosityBlock::put ( EDPutToken  token,
std::unique_ptr< PROD product 
)

◆ put() [2/4]

template<typename PROD >
void LuminosityBlock::put ( EDPutTokenT< PROD token,
std::unique_ptr< PROD product 
)

Definition at line 216 of file LuminosityBlock.h.

216  {
217  if (UNLIKELY(product.get() == nullptr)) { // null pointer is illegal
218  TypeID typeID(typeid(PROD));
220  "LuminosityBlock", typeID, provRecorder_.productInstanceLabel(token));
221  }
222  if (UNLIKELY(token.isUninitialized())) {
224  }
225  putImpl(token.index(), std::move(product));
226  }

References eostools::move(), PROD, edm::PrincipalGetAdapter::productInstanceLabel(), provRecorder_, putImpl(), edm::principal_get_adapter_detail::throwOnPutOfNullProduct(), edm::principal_get_adapter_detail::throwOnPutOfUninitializedToken(), unpackBuffers-CaloStage2::token, and UNLIKELY.

◆ put() [3/4]

template<typename PROD >
void edm::LuminosityBlock::put ( std::unique_ptr< PROD product)
inline

◆ put() [4/4]

template<typename PROD >
void LuminosityBlock::put ( std::unique_ptr< PROD product,
std::string const &  productInstanceName 
)

Put a new product with a 'product instance name'.

Definition at line 206 of file LuminosityBlock.h.

206  {
207  if (UNLIKELY(product.get() == nullptr)) { // null pointer is illegal
208  TypeID typeID(typeid(PROD));
209  principal_get_adapter_detail::throwOnPutOfNullProduct("LuminosityBlock", typeID, productInstanceName);
210  }
211  auto index = provRecorder_.getPutTokenIndex(TypeID(*product), productInstanceName);
212  putImpl(index, std::move(product));
213  }

References edm::PrincipalGetAdapter::getPutTokenIndex(), index(), eostools::move(), PROD, provRecorder_, putImpl(), edm::principal_get_adapter_detail::throwOnPutOfNullProduct(), and UNLIKELY.

◆ putImpl()

template<typename PROD >
void LuminosityBlock::putImpl ( EDPutToken::value_type  token,
std::unique_ptr< PROD product 
)
private

Definition at line 193 of file LuminosityBlock.h.

193  {
194  // The following will call post_insert if T has such a function,
195  // and do nothing if T has no such function.
196  std::conditional_t<detail::has_postinsert<PROD>::value, DoPostInsert<PROD>, DoNotPostInsert<PROD>> maybe_inserter;
197  maybe_inserter(product.get());
198 
199  assert(index < putProducts().size());
200 
201  std::unique_ptr<Wrapper<PROD>> wp(new Wrapper<PROD>(std::move(product)));
203  }

References cms::cuda::assert(), index(), eostools::move(), putProducts(), findQualityFiles::size, relativeConstraints::value, and pfClustersFromHGC3DClusters_cfi::wp.

Referenced by put().

◆ putProducts() [1/2]

ProductPtrVec& edm::LuminosityBlock::putProducts ( )
inlineprivate

Definition at line 166 of file LuminosityBlock.h.

166 { return putProducts_; }

References putProducts_.

Referenced by commit_(), emplaceImpl(), and putImpl().

◆ putProducts() [2/2]

ProductPtrVec const& edm::LuminosityBlock::putProducts ( ) const
inlineprivate

Definition at line 167 of file LuminosityBlock.h.

167 { return putProducts_; }

References putProducts_.

◆ setConsumer()

void LuminosityBlock::setConsumer ( EDConsumerBase const *  iConsumer)

Definition at line 33 of file LuminosityBlock.cc.

33  {
34  provRecorder_.setConsumer(iConsumer);
35  if (run_) {
36  run_->setConsumer(iConsumer);
37  }
38  }

References provRecorder_, run_, and edm::PrincipalGetAdapter::setConsumer().

Referenced by edm::EDAnalyzer::doBeginLuminosityBlock(), edm::EDProducer::doBeginLuminosityBlock(), edm::EDFilter::doBeginLuminosityBlock(), edm::one::EDProducerBase::doBeginLuminosityBlock(), edm::one::EDFilterBase::doBeginLuminosityBlock(), edm::one::EDAnalyzerBase::doBeginLuminosityBlock(), edm::global::EDAnalyzerBase::doBeginLuminosityBlock(), edm::limited::EDProducerBase::doBeginLuminosityBlock(), edm::global::EDProducerBase::doBeginLuminosityBlock(), edm::limited::EDFilterBase::doBeginLuminosityBlock(), edm::global::EDFilterBase::doBeginLuminosityBlock(), edm::limited::EDAnalyzerBase::doBeginLuminosityBlock(), edm::stream::EDAnalyzerAdaptor< T >::doBeginLuminosityBlock(), edm::stream::ProducingModuleAdaptor< T, M, B >::doBeginLuminosityBlock(), edm::EDAnalyzer::doEndLuminosityBlock(), edm::EDProducer::doEndLuminosityBlock(), edm::EDFilter::doEndLuminosityBlock(), edm::one::EDProducerBase::doEndLuminosityBlock(), edm::one::EDFilterBase::doEndLuminosityBlock(), edm::one::EDAnalyzerBase::doEndLuminosityBlock(), edm::global::EDAnalyzerBase::doEndLuminosityBlock(), edm::global::EDProducerBase::doEndLuminosityBlock(), edm::limited::EDProducerBase::doEndLuminosityBlock(), edm::limited::EDFilterBase::doEndLuminosityBlock(), edm::global::EDFilterBase::doEndLuminosityBlock(), edm::limited::EDAnalyzerBase::doEndLuminosityBlock(), edm::stream::EDAnalyzerAdaptor< T >::doEndLuminosityBlock(), edm::stream::ProducingModuleAdaptor< T, M, B >::doEndLuminosityBlock(), edm::global::EDAnalyzerBase::doStreamBeginLuminosityBlock(), edm::limited::EDProducerBase::doStreamBeginLuminosityBlock(), edm::global::EDProducerBase::doStreamBeginLuminosityBlock(), edm::limited::EDFilterBase::doStreamBeginLuminosityBlock(), edm::global::EDFilterBase::doStreamBeginLuminosityBlock(), edm::limited::EDAnalyzerBase::doStreamBeginLuminosityBlock(), edm::global::EDAnalyzerBase::doStreamEndLuminosityBlock(), edm::limited::EDProducerBase::doStreamEndLuminosityBlock(), edm::global::EDProducerBase::doStreamEndLuminosityBlock(), edm::limited::EDFilterBase::doStreamEndLuminosityBlock(), edm::global::EDFilterBase::doStreamEndLuminosityBlock(), edm::limited::EDAnalyzerBase::doStreamEndLuminosityBlock(), edm::stream::EDAnalyzerAdaptorBase::doStreamEndLuminosityBlock(), and edm::stream::ProducingModuleAdaptorBase< EDProducerBase >::doStreamEndLuminosityBlock().

◆ setProducer()

void LuminosityBlock::setProducer ( ProducerBase const *  iProducer)

◆ setSharedResourcesAcquirer()

void LuminosityBlock::setSharedResourcesAcquirer ( SharedResourcesAcquirer iResourceAcquirer)

Definition at line 40 of file LuminosityBlock.cc.

40  {
41  provRecorder_.setSharedResourcesAcquirer(iResourceAcquirer);
42  if (run_) {
43  run_->setSharedResourcesAcquirer(iResourceAcquirer);
44  }
45  }

References provRecorder_, run_, and edm::PrincipalGetAdapter::setSharedResourcesAcquirer().

Friends And Related Function Documentation

◆ ProducerBase

friend class ProducerBase
friend

Definition at line 176 of file LuminosityBlock.h.

◆ RawInputSource

friend class RawInputSource
friend

Definition at line 175 of file LuminosityBlock.h.

◆ stream::ProducingModuleAdaptorBase

template<typename T >
friend class stream::ProducingModuleAdaptorBase
friend

Definition at line 178 of file LuminosityBlock.h.

Member Data Documentation

◆ aux_

LuminosityBlockAuxiliary const& edm::LuminosityBlock::aux_
private

Definition at line 184 of file LuminosityBlock.h.

Referenced by luminosityBlockAuxiliary().

◆ emptyString_

const std::string LuminosityBlock::emptyString_
staticprivate

Definition at line 189 of file LuminosityBlock.h.

Referenced by getByLabel().

◆ moduleCallingContext_

ModuleCallingContext const* edm::LuminosityBlock::moduleCallingContext_
private

◆ provRecorder_

PrincipalGetAdapter edm::LuminosityBlock::provRecorder_
private

◆ putProducts_

ProductPtrVec edm::LuminosityBlock::putProducts_
private

Definition at line 183 of file LuminosityBlock.h.

Referenced by putProducts(), and setProducer().

◆ run_

std::optional<Run> edm::LuminosityBlock::run_
mutableprivate

Definition at line 186 of file LuminosityBlock.h.

Referenced by fillRun(), getRun(), setConsumer(), and setSharedResourcesAcquirer().

writedatasetfile.args
args
Definition: writedatasetfile.py:18
edm::PrincipalGetAdapter::setConsumer
void setConsumer(EDConsumerBase const *iConsumer)
Definition: PrincipalGetAdapter.h:143
edm::PrincipalGetAdapter::principal
Principal const & principal() const
Definition: PrincipalGetAdapter.h:165
edm::principal_get_adapter_detail::throwOnPutOfWrongType
void throwOnPutOfWrongType(std::type_info const &wrongType, TypeID const &rightType)
Definition: PrincipalGetAdapter.cc:48
mps_fire.i
i
Definition: mps_fire.py:428
edm::PrincipalGetAdapter::setProducer
void setProducer(ProducerBase const *iProd)
Definition: PrincipalGetAdapter.h:149
edm::PRODUCT_TYPE
Definition: ProductKindOfType.h:5
edm::isEndTransition
constexpr bool isEndTransition(Transition iValue)
Definition: Transition.h:37
pfClustersFromHGC3DClusters_cfi.wp
wp
Definition: pfClustersFromHGC3DClusters_cfi.py:20
edm::LuminosityBlock::index
LuminosityBlockIndex index() const
Definition: LuminosityBlock.cc:27
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
h
FWCore Framework interface EventSetupRecordImplementation h
Helper function to determine trigger accepts.
Definition: L1TUtmAlgorithmRcd.h:4
edm::PrincipalGetAdapter::getSharedResourcesAcquirer
SharedResourcesAcquirer * getSharedResourcesAcquirer() const
Definition: PrincipalGetAdapter.h:147
edm::LuminosityBlock::putProducts
ProductPtrVec & putProducts()
Definition: LuminosityBlock.h:166
cms::cuda::assert
assert(be >=bs)
edm::principal_get_adapter_detail::throwOnPutOfUninitializedToken
void throwOnPutOfUninitializedToken(char const *principalType, std::type_info const &productType)
Definition: PrincipalGetAdapter.cc:41
bookConverter.results
results
Definition: bookConverter.py:144
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition: FWCollectionSummaryWidget.cc:153
edm::LuminosityBlock::LuminosityBlock
LuminosityBlock(LumiTransitionInfo const &, ModuleDescription const &, ModuleCallingContext const *, bool isAtEnd)
Definition: LuminosityBlock.cc:13
edm::LuminosityBlock::provRecorder_
PrincipalGetAdapter provRecorder_
Definition: LuminosityBlock.h:182
edm::LuminosityBlock::emptyString_
static const std::string emptyString_
Definition: LuminosityBlock.h:189
edm::get_underlying_safe
constexpr std::shared_ptr< T > & get_underlying_safe(propagate_const< std::shared_ptr< T >> &iP)
Definition: get_underlying_safe.h:41
edm::PrincipalGetAdapter::putTokenIndexToProductResolverIndex
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
Definition: PrincipalGetAdapter.cc:289
edm::PrincipalGetAdapter::moduleDescription
ModuleDescription const & moduleDescription() const
Definition: PrincipalGetAdapter.h:177
edm::PrincipalGetAdapter::labelsForToken
void labelsForToken(EDGetToken const &iToken, ProductLabels &oLabels) const
Definition: PrincipalGetAdapter.cc:84
edm::PrincipalGetAdapter::setSharedResourcesAcquirer
void setSharedResourcesAcquirer(SharedResourcesAcquirer *iSra)
Definition: PrincipalGetAdapter.h:146
edm::Principal::getProvenance
Provenance getProvenance(BranchID const &bid, ModuleCallingContext const *mcc) const
Definition: Principal.cc:824
UNLIKELY
#define UNLIKELY(x)
Definition: Likely.h:21
edm::LuminosityBlock::emplaceImpl
void emplaceImpl(EDPutToken::value_type token, Args &&... args)
Definition: LuminosityBlock.h:268
edm::PrincipalGetAdapter::getByToken_
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
Definition: PrincipalGetAdapter.cc:147
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
edm::Principal::processHistoryID
ProcessHistoryID const & processHistoryID() const
Definition: Principal.h:143
edm::LuminosityBlock::moduleCallingContext_
ModuleCallingContext const * moduleCallingContext_
Definition: LuminosityBlock.h:187
edm::principal_get_adapter_detail::throwOnPrematureRead
void throwOnPrematureRead(char const *principalType, TypeID const &productType, std::string const &moduleLabel, std::string const &productInstanceName)
Definition: PrincipalGetAdapter.cc:55
edm::Principal::getAllStableProvenance
void getAllStableProvenance(std::vector< StableProvenance const * > &provenances) const
Definition: Principal.cc:858
edm::PrincipalGetAdapter::getByLabel_
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
Definition: PrincipalGetAdapter.cc:133
edm::PrincipalGetAdapter::transition
Transition transition() const
Definition: PrincipalGetAdapter.cc:249
h
edm::LuminosityBlock::run_
std::optional< Run > run_
Definition: LuminosityBlock.h:186
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::LuminosityBlock::fillRun
void fillRun() const
Definition: LuminosityBlock.cc:47
edm::PrincipalGetAdapter::getTypeIDForPutTokenIndex
TypeID const & getTypeIDForPutTokenIndex(EDPutToken::value_type index) const
Definition: PrincipalGetAdapter.cc:285
edm::PrincipalGetAdapter::productInstanceLabel
std::string const & productInstanceLabel(EDPutToken) const
Definition: PrincipalGetAdapter.cc:281
edm::PrincipalGetAdapter::getConsumer
EDConsumerBase const * getConsumer() const
Definition: PrincipalGetAdapter.h:144
edm::principal_get_adapter_detail::throwOnPutOfNullProduct
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
Definition: PrincipalGetAdapter.cc:32
edm::LuminosityBlock::putProducts_
ProductPtrVec putProducts_
Definition: LuminosityBlock.h:183
eostools.move
def move(src, dest)
Definition: eostools.py:511
edm::PrincipalGetAdapter::getPutTokenIndex
EDPutToken::value_type getPutTokenIndex(TypeID const &type, std::string const &productInstanceName) const
Definition: PrincipalGetAdapter.cc:267
edm::LuminosityBlock::luminosityBlockPrincipal
LuminosityBlockPrincipal const & luminosityBlockPrincipal() const
Definition: LuminosityBlock.cc:60
relativeConstraints.value
value
Definition: relativeConstraints.py:53
edm::LuminosityBlock::putImpl
void putImpl(EDPutToken::value_type token, std::unique_ptr< PROD > product)
Definition: LuminosityBlock.h:193
edm::LuminosityBlock::aux_
LuminosityBlockAuxiliary const & aux_
Definition: LuminosityBlock.h:184
mps_fire.result
result
Definition: mps_fire.py:311
PROD
#define PROD(A, B)
Definition: Simplify_begin.h:55
edm::LuminosityBlockPrincipal::index
LuminosityBlockIndex index() const
Definition: LuminosityBlockPrincipal.h:51
edm::LuminosityBlock::moduleCallingContext
ModuleCallingContext const * moduleCallingContext() const
Definition: LuminosityBlock.h:145
edm::Principal::cacheIdentifier
CacheIdentifier_t cacheIdentifier() const
Definition: Principal.h:185
edm::LuminosityBlock::getByLabel
bool getByLabel(std::string const &label, Handle< PROD > &result) const
Definition: LuminosityBlock.h:282
edm::PrincipalGetAdapter::getManyByType
void getManyByType(std::vector< Handle< PROD > > &results, ModuleCallingContext const *mcc) const
Definition: PrincipalGetAdapter.h:317
label
const char * label
Definition: PFTauDecayModeTools.cc:11
edm::PrincipalGetAdapter::checkIfComplete
bool checkIfComplete() const
Definition: PrincipalGetAdapter.h:312
edm::PrincipalGetAdapter::processHistory
ProcessHistory const & processHistory() const
Definition: PrincipalGetAdapter.cc:193
findQualityFiles.size
size
Write out results.
Definition: findQualityFiles.py:443
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:318