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::Event Class Reference

#include <Event.h>

Inheritance diagram for edm::Event:
edm::EventBase

Public Types

typedef unsigned long CacheIdentifier_t
 
typedef std::vector< edm::propagate_const< std::unique_ptr< WrapperBase > > > ProductPtrVec
 

Public Member Functions

CacheIdentifier_t cacheIdentifier () const
 
template<typename PROD , typename... Args>
OrphanHandle< PRODemplace (EDPutToken token, Args &&... args)
 
template<typename PROD , typename... Args>
OrphanHandle< PRODemplace (EDPutTokenT< PROD > token, Args &&... args)
 puts a new product More...
 
 Event (EventPrincipal const &, ModuleDescription const &, ModuleCallingContext const *)
 
 Event (EventTransitionInfo const &, ModuleDescription const &, ModuleCallingContext const *)
 
EventAuxiliary const & eventAuxiliary () const override
 
EventSelectionIDVector const & eventSelectionIDs () const
 
template<typename ELEMENT >
Handle< View< ELEMENT > > fillView_ (BasicHandle &bh) const
 
template<typename PROD >
PROD const & get (EDGetTokenT< PROD > token) const noexcept(false)
 
template<typename ELEMENT >
View< ELEMENT > const & get (EDGetTokenT< View< ELEMENT >> token) const noexcept(false)
 
template<typename PROD >
bool get (ProductID const &oid, Handle< PROD > &result) const
 
template<typename ELEMENT >
bool get (ProductID const &oid, Handle< View< ELEMENT >> &result) const
 
void getAllProvenance (std::vector< Provenance const * > &provenances) const
 
void getAllStableProvenance (std::vector< StableProvenance const * > &provenances) const
 
template<>
bool getByLabel (InputTag const &tag, Handle< GenericObject > &result) const
 
template<>
bool getByLabel (InputTag const &tag, Handle< GenericObject > &result) const
 
template<typename PROD >
bool getByLabel (InputTag const &tag, Handle< PROD > &result) const
 
template<typename ELEMENT >
bool getByLabel (InputTag const &tag, Handle< View< ELEMENT >> &result) const
 
template<typename PROD >
bool getByLabel (std::string const &label, Handle< PROD > &result) const
 
template<typename ELEMENT >
bool getByLabel (std::string const &label, Handle< View< ELEMENT >> &result) const
 
template<>
bool getByLabel (std::string const &label, std::string const &productInstanceName, Handle< GenericObject > &result) const
 Specialize the getByLabel method to work with a Handle<GenericObject> More...
 
template<>
bool getByLabel (std::string const &label, std::string const &productInstanceName, Handle< GenericObject > &result) const
 Specialize the Event's getByLabel method to work with a Handle<GenericObject> More...
 
template<typename PROD >
bool getByLabel (std::string const &label, std::string const &productInstanceName, Handle< PROD > &result) const
 
template<typename ELEMENT >
bool getByLabel (std::string const &label, std::string const &productInstanceName, Handle< View< ELEMENT >> &result) const
 
template<>
bool getByToken (EDGetToken token, Handle< GenericObject > &result) const
 Specialize the Event's getByToken method to work with a Handle<GenericObject> More...
 
template<>
bool getByToken (EDGetToken token, Handle< GenericObject > &result) const
 Specialize the Event's getByToken method to work with a Handle<GenericObject> More...
 
template<typename PROD >
bool getByToken (EDGetToken token, Handle< PROD > &result) const
 
template<typename ELEMENT >
bool getByToken (EDGetToken token, Handle< View< ELEMENT >> &result) const
 
template<typename PROD >
bool getByToken (EDGetTokenT< PROD > token, Handle< PROD > &result) const
 
template<typename ELEMENT >
bool getByToken (EDGetTokenT< View< ELEMENT >> token, Handle< View< ELEMENT >> &result) const
 
template<typename PROD >
Handle< PRODgetHandle (EDGetTokenT< PROD > token) const
 
template<typename ELEMENT >
Handle< View< ELEMENT > > getHandle (EDGetTokenT< View< ELEMENT >> token) const
 
LuminosityBlock const & getLuminosityBlock () const
 
template<typename PROD >
void getManyByType (std::vector< Handle< PROD >> &results) const
 
bool getProcessParameterSet (std::string const &processName, ParameterSet &ps) const
 
Provenance const & getProvenance (BranchID const &theID) const
 
Provenance const & getProvenance (ProductID const &theID) const
 
template<typename PROD >
RefProd< PRODgetRefBeforePut ()
 
template<typename PROD >
RefProd< PRODgetRefBeforePut (EDPutToken)
 
template<typename PROD >
RefProd< PRODgetRefBeforePut (EDPutTokenT< PROD >)
 
template<typename PROD >
RefProd< PRODgetRefBeforePut (std::string const &productInstanceName)
 
Run const & getRun () const
 
StableProvenance const & getStableProvenance (BranchID const &theID) const
 
StableProvenance const & getStableProvenance (ProductID const &theID) const
 
void labelsForToken (EDGetToken const &iToken, ProductLabels &oLabels) const
 
ModuleCallingContext const * moduleCallingContext () const
 
edm::ParameterSet const * parameterSet (edm::ParameterSetID const &psID) const override
 
ProcessHistory const & processHistory () const override
 
ProcessHistoryID const & processHistoryID () const
 
EDProductGetter const & productGetter () const
 
template<typename PROD >
OrphanHandle< PRODput (EDPutToken token, std::unique_ptr< PROD > product)
 
template<typename PROD >
OrphanHandle< PRODput (EDPutTokenT< PROD > token, std::unique_ptr< PROD > product)
 
template<typename PROD >
OrphanHandle< PRODput (std::unique_ptr< PROD > product)
 Put a new product. More...
 
template<typename PROD >
OrphanHandle< PRODput (std::unique_ptr< PROD > product, std::string const &productInstanceName)
 Put a new product with a 'product instance name'. More...
 
RunNumber_t run () const
 
void setConsumer (EDConsumerBase const *iConsumer)
 
void setProducer (ProducerBase const *iProd, std::vector< BranchID > *previousParentage, std::vector< BranchID > *gotBranchIDsFromAcquire=nullptr)
 
void setProducerCommon (ProducerBase const *iProd, std::vector< BranchID > *previousParentage)
 
void setProducerForAcquire (ProducerBase const *iProd, std::vector< BranchID > *previousParentage, std::vector< BranchID > &gotBranchIDsFromAcquire)
 
void setSharedResourcesAcquirer (SharedResourcesAcquirer *iResourceAcquirer)
 
size_t size () const
 
StreamID streamID () const
 
edm::TriggerNames const & triggerNames (edm::TriggerResults const &triggerResults) const override
 
TriggerResultsByName triggerResultsByName (edm::TriggerResults const &triggerResults) const override
 
 ~Event () override
 
- Public Member Functions inherited from edm::EventBase
int bunchCrossing () const
 
 EventBase ()
 
edm::EventAuxiliary::ExperimentType experimentType () const
 
template<typename T >
bool get (ProductID const &, Handle< T > &) const
 
template<>
bool getByLabel (edm::InputTag const &tag, Handle< FWGenericObject > &result) const
 Specialize the getByLabel method to work with a Handle<FWGenericObject> More...
 
template<typename T >
bool getByLabel (InputTag const &, Handle< T > &) const
 
edm::EventID id () const
 
bool isRealData () const
 
edm::LuminosityBlockNumber_t luminosityBlock () const
 
int orbitNumber () const
 
edm::Timestamp time () const
 
virtual ~EventBase ()
 

Private Types

typedef std::unordered_set< BranchID::value_typeBranchIDSet
 

Private Member Functions

void addToGotBranchIDs (BranchID const &branchID) const
 
void addToGotBranchIDs (Provenance const &prov) const
 
void commit_ (std::vector< edm::ProductResolverIndex > const &iShouldPut, ParentageID *previousParentageId=nullptr)
 
void commit_aux (ProductPtrVec &products, ParentageID *previousParentageId=nullptr)
 
template<typename PROD , typename... Args>
OrphanHandle< PRODemplaceImpl (EDPutToken::value_type token, Args &&... args)
 
EventPrincipal const & eventPrincipal () const
 
void fillLuminosityBlock () const
 
BasicHandle getByLabelImpl (std::type_info const &iWrapperType, std::type_info const &iProductType, InputTag const &iTag) const override
 
BasicHandle getByProductID_ (ProductID const &oid) const
 
BasicHandle getImpl (std::type_info const &iProductType, ProductID const &pid) const override
 
ProductID makeProductID (BranchDescription const &desc) const
 
template<typename PROD >
OrphanHandle< PRODputImpl (EDPutToken::value_type token, std::unique_ptr< PROD > product)
 
ProductPtrVecputProducts ()
 
ProductPtrVec const & putProducts () const
 

Private Attributes

EventAuxiliary const & aux_
 
BranchIDSet gotBranchIDs_
 
std::vector< BranchID > * gotBranchIDsFromAcquire_ = nullptr
 
std::vector< bool > gotBranchIDsFromPrevious_
 
std::vector< std::shared_ptr< ViewBase > > gotViews_
 
std::optional< LuminosityBlockluminosityBlock_
 
ModuleCallingContext const * moduleCallingContext_
 
std::vector< BranchID > * previousBranchIDs_ = nullptr
 
PrincipalGetAdapter provRecorder_
 
ProductPtrVec putProducts_
 
StreamID streamID_
 

Static Private Attributes

static const std::string emptyString_
 

Friends

class ::testEvent
 
class ::testEventGetRefBeforePut
 
class InputSource
 
class ProducerBase
 
class ProducerSourceBase
 
class RawInputSource
 
template<typename T >
class stream::ProducingModuleAdaptorBase
 

Additional Inherited Members

- Static Protected Member Functions inherited from edm::EventBase
static edm::ParameterSet const * parameterSetForID_ (edm::ParameterSetID const &psID)
 
static TriggerNames const * triggerNames_ (edm::TriggerResults const &triggerResults)
 

Detailed Description

Definition at line 73 of file Event.h.

Member Typedef Documentation

◆ BranchIDSet

typedef std::unordered_set<BranchID::value_type> edm::Event::BranchIDSet
private

Definition at line 323 of file Event.h.

◆ CacheIdentifier_t

typedef unsigned long edm::Event::CacheIdentifier_t

If you are caching data from the Event, 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 117 of file Event.h.

◆ ProductPtrVec

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

Definition at line 259 of file Event.h.

Constructor & Destructor Documentation

◆ Event() [1/2]

Event::Event ( EventTransitionInfo const &  info,
ModuleDescription const &  md,
ModuleCallingContext const *  mcc 
)

Definition at line 23 of file Event.cc.

24  : Event(info.principal(), md, mcc) {}

◆ Event() [2/2]

Event::Event ( EventPrincipal const &  ep,
ModuleDescription const &  md,
ModuleCallingContext const *  moduleCallingContext 
)

Definition at line 26 of file Event.cc.

27  : provRecorder_(ep, md, true /*always at end*/),
28  aux_(ep.aux()),
30  gotBranchIDs_(),
31  gotViews_(),
32  streamID_(ep.streamID()),

◆ ~Event()

Event::~Event ( )
override

Definition at line 35 of file Event.cc.

35 {}

Member Function Documentation

◆ addToGotBranchIDs() [1/2]

void Event::addToGotBranchIDs ( BranchID const &  branchID) const
private

Definition at line 237 of file Event.cc.

237  {
238  if (previousBranchIDs_) {
239  auto range = std::equal_range(previousBranchIDs_->begin(), previousBranchIDs_->end(), branchID);
240  if (range.first == range.second) {
241  gotBranchIDs_.insert(branchID.id());
242  } else {
243  gotBranchIDsFromPrevious_[range.first - previousBranchIDs_->begin()] = true;
244  }
245  } else if (gotBranchIDsFromAcquire_) {
246  gotBranchIDsFromAcquire_->push_back(branchID);
247  }
248  }

References gotBranchIDs_, gotBranchIDsFromAcquire_, gotBranchIDsFromPrevious_, edm::BranchID::id(), previousBranchIDs_, and FastTimerService_cff::range.

◆ addToGotBranchIDs() [2/2]

void Event::addToGotBranchIDs ( Provenance const &  prov) const
private

Definition at line 235 of file Event.cc.

235 { addToGotBranchIDs(prov.originalBranchID()); }

References edm::Provenance::originalBranchID().

Referenced by fillView_(), get(), getByLabel(), getByLabelImpl(), getByToken(), getHandle(), getImpl(), getManyByType(), and setProducer().

◆ cacheIdentifier()

Event::CacheIdentifier_t Event::cacheIdentifier ( ) const

◆ commit_()

void Event::commit_ ( std::vector< edm::ProductResolverIndex > const &  iShouldPut,
ParentageID previousParentageId = nullptr 
)
private

Definition at line 156 of file Event.cc.

156  {
157  size_t nPut = 0;
158  for (auto const& p : putProducts()) {
159  if (p) {
160  ++nPut;
161  }
162  }
163  if (nPut > 0) {
164  commit_aux(putProducts(), previousParentageId);
165  }
166  auto sz = iShouldPut.size();
167  if (sz != 0 and sz != nPut) {
168  //some were missed
169  auto& p = provRecorder_.principal();
170  for (auto index : iShouldPut) {
171  auto resolver = p.getProductResolverByIndex(index);
172  if (not resolver->productResolved()) {
173  dynamic_cast<ProductPutterBase const*>(resolver)->putProduct(std::unique_ptr<WrapperBase>());
174  }
175  }
176  }
177  }

References commit_aux(), AlCaHLTBitMon_ParallelJobs::p, edm::PrincipalGetAdapter::principal(), provRecorder_, and putProducts().

◆ commit_aux()

void Event::commit_aux ( Event::ProductPtrVec products,
ParentageID previousParentageId = nullptr 
)
private

Definition at line 179 of file Event.cc.

179  {
180  // fill in guts of provenance here
181  auto& ep = eventPrincipal();
182 
183  //If we don't have a valid previousParentage then we want to use a temp value in order to
184  // avoid constantly recalculating the ParentageID which is a time consuming operation
185  ParentageID const* presentParentageId;
186 
187  if (previousBranchIDs_) {
188  bool sameAsPrevious = gotBranchIDs_.empty();
189  if (sameAsPrevious) {
190  for (auto i : gotBranchIDsFromPrevious_) {
191  if (not i) {
192  sameAsPrevious = false;
193  break;
194  }
195  }
196  }
197  if (not sameAsPrevious) {
198  std::vector<BranchID> gotBranchIDVector{gotBranchIDs_.begin(), gotBranchIDs_.end()};
199  //add items in common from previous
200  auto n = gotBranchIDsFromPrevious_.size();
201  for (size_t i = 0; i < n; ++i) {
203  gotBranchIDVector.push_back((*previousBranchIDs_)[i]);
204  }
205  }
206  std::sort(gotBranchIDVector.begin(), gotBranchIDVector.end());
207  previousBranchIDs_->assign(gotBranchIDVector.begin(), gotBranchIDVector.end());
208 
209  Parentage p;
210  p.setParents(std::move(gotBranchIDVector));
211  *previousParentageId = p.id();
213  }
214  presentParentageId = previousParentageId;
215  } else {
216  presentParentageId = &s_emptyParentage;
217  }
218 
219  auto const& recordProv = provRecorder_.recordProvenanceList();
220  for (unsigned int i = 0; i < products.size(); ++i) {
221  auto& p = get_underlying_safe(products[i]);
222  if (p) {
223  if (recordProv[i]) {
224  ep.put(provRecorder_.putTokenIndexToProductResolverIndex()[i], std::move(p), *presentParentageId);
225  } else {
226  ep.put(provRecorder_.putTokenIndexToProductResolverIndex()[i], std::move(p), s_emptyParentage);
227  }
228  }
229  }
230 
231  // the cleanup is all or none
232  products.clear();
233  }

References SiStripBadComponentsDQMServiceTemplate_cfg::ep, eventPrincipal(), edm::get_underlying_safe(), gotBranchIDs_, gotBranchIDsFromPrevious_, mps_fire::i, edm::ParentageRegistry::insertMapped(), edm::ParentageRegistry::instance(), eostools::move(), dqmiodumpmetadata::n, AlCaHLTBitMon_ParallelJobs::p, previousBranchIDs_, edm::es::products(), provRecorder_, edm::PrincipalGetAdapter::putTokenIndexToProductResolverIndex(), edm::PrincipalGetAdapter::recordProvenanceList(), and jetUpdater_cfi::sort.

Referenced by commit_().

◆ emplace() [1/2]

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

◆ emplace() [2/2]

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

◆ emplaceImpl()

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

Definition at line 450 of file Event.h.

450  {
451  assert(index < putProducts().size());
452 
453  std::unique_ptr<Wrapper<PROD>> wp(new Wrapper<PROD>(WrapperBase::Emplace{}, std::forward<Args>(args)...));
454 
455  // The following will call post_insert if T has such a function,
456  // and do nothing if T has no such function.
457  std::conditional_t<detail::has_postinsert<PROD>::value, DoPostInsert<PROD>, DoNotPostInsert<PROD>> maybe_inserter;
458  maybe_inserter(&(wp->bareProduct()));
459 
460  PROD const* prod = wp->product();
461 
463  auto const& prodID = provRecorder_.getProductID(index);
464  return (OrphanHandle<PROD>(prod, prodID));
465  }

References writedatasetfile::args, cms::cuda::assert(), edm::PrincipalGetAdapter::getProductID(), eostools::move(), dumpMFGeometry_cfg::prod, PROD, provRecorder_, putProducts(), size(), relativeConstraints::value, and pfClustersFromHGC3DClusters_cfi::wp.

Referenced by emplace().

◆ eventAuxiliary()

EventAuxiliary const& edm::Event::eventAuxiliary ( ) const
inlineoverridevirtual

Implements edm::EventBase.

Definition at line 95 of file Event.h.

95 { return aux_; }

References aux_.

Referenced by DetStatus::filter().

◆ eventPrincipal()

EventPrincipal const & Event::eventPrincipal ( ) const
private

◆ eventSelectionIDs()

EventSelectionIDVector const & Event::eventSelectionIDs ( ) const

Definition at line 114 of file Event.cc.

114 { return eventPrincipal().eventSelectionIDs(); }

References eventPrincipal(), and edm::EventPrincipal::eventSelectionIDs().

◆ fillLuminosityBlock()

void Event::fillLuminosityBlock ( ) const
private

◆ fillView_()

template<typename ELEMENT >
Handle< View< ELEMENT > > Event::fillView_ ( BasicHandle bh) const

Definition at line 657 of file Event.h.

657  {
658  std::vector<void const*> pointersToElements;
660  // the following must initialize the
661  // fill the helper vector
662  bh.wrapper()->fillView(bh.id(), pointersToElements, helpers);
663 
664  auto newview = std::make_shared<View<ELEMENT>>(pointersToElements, helpers, &(productGetter()));
665 
666  addToGotBranchIDs(*bh.provenance());
667  gotViews_.push_back(newview);
668  return Handle<View<ELEMENT>>(newview.get(), bh.provenance());
669  }

References addToGotBranchIDs(), edm::WrapperBase::fillView(), gotViews_, edm::BasicHandle::id(), productGetter(), edm::BasicHandle::provenance(), and edm::BasicHandle::wrapper().

◆ get() [1/4]

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

◆ get() [2/4]

template<typename ELEMENT >
View< ELEMENT > const & Event::get ( EDGetTokenT< View< ELEMENT >>  token) const
noexcept

◆ get() [3/4]

template<typename PROD >
bool Event::get ( ProductID const &  oid,
Handle< PROD > &  result 
) const

Definition at line 342 of file Event.h.

342  {
343  result.clear();
344  BasicHandle bh = this->getByProductID_(oid);
345  result = convert_handle_check_type<PROD>(std::move(bh)); // throws on conversion error
346  if (result.failedToGet()) {
347  return false;
348  }
349  addToGotBranchIDs(*bh.provenance());
350  return true;
351  }

References addToGotBranchIDs(), getByProductID_(), eostools::move(), edm::BasicHandle::provenance(), and mps_fire::result.

Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), submitPVValidationJobs.BetterConfigParser::__updateDict(), ElectronHcalHelper::beginEvent(), rrapi.RRApi::columns(), rrapi.RRApi::count(), rrapi.RRApi::data(), GlobalVariablesTableProducer::VariableT< ValType, ColType, Converter >::fill(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), submitPVValidationJobs.BetterConfigParser::getResultingSection(), PATTauIDEmbedder::produce(), HGCalRecHitMapProducer::produce(), ParticleBasedIsoProducer::produce(), TrackFromPackedCandidateProducer::produce(), TrackstersProducer::produce(), RecoTauGenericJetRegionProducer< JetType, CandType >::produce(), UniqueMerger< InputCollection, OutputCollection, P >::produce(), ConvertedPhotonProducer::produce(), PhotonProducer::produce(), ConversionTrackCandidateProducer::produce(), GEDPhotonProducer::produce(), TrackstersFromSimClustersProducer::produce(), HLTRechitInRegionsProducer< T1 >::produce(), rrapi.RRApi::report(), rrapi.RRApi::reports(), AnalyticalTrackSelector::run(), EGRegressionModifierV2::setEvent(), EGRegressionModifierV1::setEvent(), EGRegressionModifierV3::setEvent(), rrapi.RRApi::tables(), rrapi.RRApi::tags(), rrapi.RRApi::templates(), and rrapi.RRApi::workspaces().

◆ get() [4/4]

template<typename ELEMENT >
bool Event::get ( ProductID const &  oid,
Handle< View< ELEMENT >> &  result 
) const

Definition at line 354 of file Event.h.

354  {
355  result.clear();
356  BasicHandle bh = this->getByProductID_(oid);
357 
358  if (bh.failedToGet()) {
359  result = Handle<View<ELEMENT>>(makeHandleExceptionFactory([oid]() -> std::shared_ptr<cms::Exception> {
360  std::shared_ptr<cms::Exception> whyFailed = std::make_shared<edm::Exception>(edm::errors::ProductNotFound);
361  *whyFailed << "get View by ID failed: no product with ID = " << oid << "\n";
362  return whyFailed;
363  }));
364  return false;
365  }
366 
367  result = fillView_<ELEMENT>(bh);
368  return true;
369  }

References edm::BasicHandle::failedToGet(), getByProductID_(), edm::makeHandleExceptionFactory(), edm::errors::ProductNotFound, and mps_fire::result.

Referenced by Options.Options::__getitem__(), betterConfigParser.BetterConfigParser::__updateDict(), submitPVValidationJobs.BetterConfigParser::__updateDict(), rrapi.RRApi::columns(), rrapi.RRApi::count(), rrapi.RRApi::data(), betterConfigParser.BetterConfigParser::getCompares(), betterConfigParser.BetterConfigParser::getGeneral(), betterConfigParser.BetterConfigParser::getResultingSection(), submitPVValidationJobs.BetterConfigParser::getResultingSection(), rrapi.RRApi::report(), rrapi.RRApi::reports(), rrapi.RRApi::tables(), rrapi.RRApi::tags(), rrapi.RRApi::templates(), and rrapi.RRApi::workspaces().

◆ getAllProvenance()

void Event::getAllProvenance ( std::vector< Provenance const * > &  provenances) const

Definition at line 132 of file Event.cc.

132  {
134  }

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

◆ getAllStableProvenance()

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

◆ getByLabel() [1/10]

template<>
bool edm::Event::getByLabel ( InputTag const &  tag,
Handle< GenericObject > &  result 
) const

Definition at line 61 of file GenericHandle.cc.

61  {
62  if (tag.process().empty()) {
63  return this->getByLabel(tag.label(), tag.instance(), result);
64  } else {
65  BasicHandle bh = provRecorder_.getByLabel_(
66  TypeID(result.type().typeInfo()), tag.label(), tag.instance(), tag.process(), moduleCallingContext_);
67  convert_handle(std::move(bh), result); // throws on conversion error
68  if (!result.failedToGet()) {
69  addToGotBranchIDs(*bh.provenance());
70  return true;
71  }
72  }
73  return false;
74  }

References addToGotBranchIDs(), edm::convert_handle(), getByLabel(), edm::PrincipalGetAdapter::getByLabel_(), edm::InputTag::label(), moduleCallingContext_, eostools::move(), edm::BasicHandle::provenance(), provRecorder_, mps_fire::result, and GlobalPosition_Frontier_DevDB_cff::tag.

◆ getByLabel() [2/10]

template<>
bool edm::Event::getByLabel ( InputTag const &  tag,
Handle< GenericObject > &  result 
) const

◆ getByLabel() [3/10]

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

◆ getByLabel() [4/10]

template<typename ELEMENT >
bool Event::getByLabel ( InputTag const &  tag,
Handle< View< ELEMENT >> &  result 
) const

Definition at line 579 of file Event.h.

579  {
580  result.clear();
581  BasicHandle bh = provRecorder_.getMatchingSequenceByLabel_(TypeID(typeid(ELEMENT)), tag, moduleCallingContext_);
582  if UNLIKELY (bh.failedToGet()) {
583  Handle<View<ELEMENT>> h(std::move(bh.whyFailedFactory()));
584  h.swap(result);
585  return false;
586  }
587  result = fillView_<ELEMENT>(bh);
588  return true;
589  }

References edm::BasicHandle::failedToGet(), edm::PrincipalGetAdapter::getMatchingSequenceByLabel_(), h, moduleCallingContext_, eostools::move(), provRecorder_, mps_fire::result, GlobalPosition_Frontier_DevDB_cff::tag, UNLIKELY, and edm::BasicHandle::whyFailedFactory().

◆ getByLabel() [5/10]

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

Definition at line 521 of file Event.h.

521  {
523  }

References emptyString_, getByLabel(), label, and mps_fire::result.

◆ getByLabel() [6/10]

template<typename ELEMENT >
bool Event::getByLabel ( std::string const &  label,
Handle< View< ELEMENT >> &  result 
) const

Definition at line 608 of file Event.h.

608  {
610  }

References emptyString_, getByLabel(), HerwigMaxPtPartonFilter_cfi::moduleLabel, and mps_fire::result.

◆ getByLabel() [7/10]

template<>
bool edm::Event::getByLabel ( std::string const &  label,
std::string const &  productInstanceName,
Handle< GenericObject > &  result 
) const

Specialize the getByLabel method to work with a Handle<GenericObject>

Definition at line 47 of file GenericHandle.cc.

49  {
50  BasicHandle bh = provRecorder_.getByLabel_(
51  TypeID(result.type().typeInfo()), label, productInstanceName, std::string(), moduleCallingContext_);
52  convert_handle(std::move(bh), result); // throws on conversion error
53  if (!result.failedToGet()) {
54  addToGotBranchIDs(*bh.provenance());
55  return true;
56  }
57  return false;
58  }

References addToGotBranchIDs(), edm::convert_handle(), edm::PrincipalGetAdapter::getByLabel_(), label, moduleCallingContext_, eostools::move(), edm::BasicHandle::provenance(), provRecorder_, mps_fire::result, and AlCaHLTBitMon_QueryRunRegistry::string.

◆ getByLabel() [8/10]

template<>
bool edm::Event::getByLabel ( std::string const &  label,
std::string const &  productInstanceName,
Handle< GenericObject > &  result 
) const

Specialize the Event's getByLabel method to work with a Handle<GenericObject>

◆ getByLabel() [9/10]

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

Definition at line 508 of file Event.h.

508  {
509  result.clear();
510  BasicHandle bh = provRecorder_.getByLabel_(
511  TypeID(typeid(PROD)), label, productInstanceName, emptyString_, moduleCallingContext_);
512  result = convert_handle<PROD>(std::move(bh)); // throws on conversion error
513  if UNLIKELY (result.failedToGet()) {
514  return false;
515  }
516  addToGotBranchIDs(*result.provenance());
517  return true;
518  }

References addToGotBranchIDs(), emptyString_, edm::PrincipalGetAdapter::getByLabel_(), label, moduleCallingContext_, eostools::move(), PROD, provRecorder_, mps_fire::result, and UNLIKELY.

◆ getByLabel() [10/10]

template<typename ELEMENT >
bool Event::getByLabel ( std::string const &  label,
std::string const &  productInstanceName,
Handle< View< ELEMENT >> &  result 
) const

Definition at line 592 of file Event.h.

594  {
595  result.clear();
597  TypeID(typeid(ELEMENT)), moduleLabel, productInstanceName, emptyString_, moduleCallingContext_);
598  if UNLIKELY (bh.failedToGet()) {
599  Handle<View<ELEMENT>> h(std::move(bh.whyFailedFactory()));
600  h.swap(result);
601  return false;
602  }
603  result = fillView_<ELEMENT>(bh);
604  return true;
605  }

References emptyString_, edm::BasicHandle::failedToGet(), edm::PrincipalGetAdapter::getMatchingSequenceByLabel_(), h, moduleCallingContext_, HerwigMaxPtPartonFilter_cfi::moduleLabel, eostools::move(), provRecorder_, mps_fire::result, UNLIKELY, and edm::BasicHandle::whyFailedFactory().

◆ getByLabelImpl()

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

Implements edm::EventBase.

Definition at line 257 of file Event.cc.

259  {
260  BasicHandle h = provRecorder_.getByLabel_(TypeID(iProductType), iTag, moduleCallingContext_);
261  if (h.isValid()) {
262  addToGotBranchIDs(*(h.provenance()));
263  }
264  return h;
265  }

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

◆ getByProductID_()

BasicHandle Event::getByProductID_ ( ProductID const &  oid) const
private

Definition at line 154 of file Event.cc.

154 { return eventPrincipal().getByProductID(oid); }

References eventPrincipal(), and edm::EventPrincipal::getByProductID().

Referenced by get(), and getImpl().

◆ getByToken() [1/6]

template<>
bool edm::Event::getByToken ( EDGetToken  token,
Handle< GenericObject > &  result 
) const

Specialize the Event's getByToken method to work with a Handle<GenericObject>

Definition at line 78 of file GenericHandle.cc.

78  {
79  result.clear();
80  BasicHandle bh =
82  convert_handle(std::move(bh), result); // throws on conversion error
83  if (UNLIKELY(result.failedToGet())) {
84  return false;
85  }
86  addToGotBranchIDs(*result.provenance());
87  return true;
88  }

References addToGotBranchIDs(), edm::convert_handle(), edm::PrincipalGetAdapter::getByToken_(), moduleCallingContext_, eostools::move(), edm::PRODUCT_TYPE, provRecorder_, mps_fire::result, unpackBuffers-CaloStage2::token, and UNLIKELY.

◆ getByToken() [2/6]

template<>
bool edm::Event::getByToken ( EDGetToken  token,
Handle< GenericObject > &  result 
) const

Specialize the Event's getByToken method to work with a Handle<GenericObject>

◆ getByToken() [3/6]

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

Definition at line 535 of file Event.h.

535  {
536  result.clear();
537  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(PROD)), PRODUCT_TYPE, token, moduleCallingContext_);
538  result = convert_handle<PROD>(std::move(bh)); // throws on conversion error
539  if UNLIKELY (result.failedToGet()) {
540  return false;
541  }
542  addToGotBranchIDs(*result.provenance());
543  return true;
544  }

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

Referenced by PatElectronAnalyzer::analyze(), PatTauAnalyzer::analyze(), EgammaBasicClusters::analyze(), EgammaSuperClusters::analyze(), EcalDQMonitorTask::analyze(), EcalFEDMonitorTemp< SUBDET >::analyze(), sistrip::SpyExtractRunModule::analyze(), L1TStage2OMTF::analyze(), sistrip::SpyIdentifyRunsModule::analyze(), L1TStage2uGTTiming::analyze(), JetTester::analyze(), TopDiLeptonDQM::analyze(), L1TStage2uGT::analyze(), ContainmentCorrectionAnalyzer::analyze(), EnergyScaleAnalyzer::analyze(), PDFWeightsTest::analyze(), SusyDQM< Mu, Ele, Jet, Met >::analyze(), L1TStage2BMTF::analyze(), HcalTB06Analysis::analyze(), JetTester_HeavyIons::analyze(), JetAnalyzer_HeavyIons::analyze(), JetAnalyzer_HeavyIons_matching::analyze(), EgammaObjects::analyzeElectrons(), EgammaObjects::analyzePhotons(), reco::tau::RecoTauDiscriminantCleanerPlugin::beginEvent(), reco::tau::RecoTauTagInfoWorkaroundModifer::beginEvent(), ecaldqm::TrigPrimTask::beginEvent(), ecaldqm::ClusterTask::beginEvent(), TauDiscriminationAgainstElectronMVA6< TauType, TauDiscriminator, ElectronType >::beginEvent(), TauDiscriminantCutMultiplexerT< TauType, TauTypeRef, ParentClass >::beginEvent(), reco::tau::RecoTauBuilderPlugin::beginEvent(), PFRecoTauDiscriminationByIsolationMVA2::beginEvent(), reco::tau::PFRecoTauDiscriminationByMVAIsolationRun2::beginEvent(), reco::tau::PATTauDiscriminationByMVAIsolationRun2::beginEvent(), TtSemiLepHypGenMatch::buildHypo(), TtFullLepHypKinSolution::buildHypo(), TtFullHadHypGenMatch::buildHypo(), TtFullLepHypGenMatch::buildHypo(), TtFullHadHypKinFit::buildHypo(), TtSemiLepHypHitFit::buildHypo(), TtSemiLepHypKinFit::buildHypo(), TtFullLepHypGenMatch::buildMatchingNeutrinos(), MuonDetLayerMeasurements::checkCSCRecHits(), MuonDetLayerMeasurements::checkDTRecHits(), MuonDetLayerMeasurements::checkGEMRecHits(), MuonDetLayerMeasurements::checkME0RecHits(), MTDDetLayerMeasurements::checkMTDRecHits(), AlignmentTrackSelector::checkPrescaledHits(), MuonDetLayerMeasurements::checkRPCRecHits(), CosmicClusterProducer::clusterizeECALPart(), METCorrectionAlgorithm::compMETCorrection(), reco::PFMETProducerMVA::computeLeptonInfo(), SiStripGainFromCalibTree::connect(), PFClusterEMEnergyCorrector::correctEnergies(), PFTauExtractor::depositFromObject(), SiStripFineDelayHit::detId(), HcalSignalGenerator< HBHEDigitizerTraits >::fill(), TauDiscriminationProducerBase< TauType, TauDiscriminator, TauDiscriminatorDataType, ConsumeType >::TauDiscInfo::fill(), deep_tau::DeepTauBase::TauDiscInfo< ConsumeType >::fill(), EcalSignalGenerator< EEDigitizerTraits >::fill(), TtEvtBuilder< C >::fillSpecific(), DetectorStateFilter::filter(), EcalMonitorPrescaler::filter(), CandCollectionExistFilter::filter(), DetStatus::filter(), EvtPlaneFilter::filter(), RecoTauPileUpVertexSelector::filter(), LHEJetFilter::filter(), StringCutObjectEvtFilter< T >::filter(), JetMETDQMDCSFilter::filter(), ObjectPairFilter< C, S >::filter(), GenHTFilter::filter(), ModelpMSSMFilter::filter(), ObjectSelector< SingleElementCollectionSelector< InputCollection, Selector, reco::CandidateCollection, StoreContainer, RefAdder >, reco::CandidateCollection, NonNullNumberSelector >::filter(), RunManagerMTWorker::generateEvent(), Multi5x5SuperClusterProducer::getClusterPtrVector(), HiSuperClusterProducer::getClusterPtrVector(), Multi5x5ClusterProducer::getCollection(), IslandClusterProducer::getCollection(), AddCorrectionsToGenericMET::getCorrection(), JetMatchingTools::getEBRecHitCollection(), JetMatchingTools::getEBSimHitCollection(), JetMatchingTools::getEERecHitCollection(), JetMatchingTools::getEESimHitCollection(), DAFTrackProducer::getFromEvt(), JetMatchingTools::getGenParticlesCollection(), JetMatchingTools::getHBHERecHitCollection(), JetMatchingTools::getHcalSimHitCollection(), JetMatchingTools::getHFRecHitCollection(), JetMatchingTools::getHORecHitCollection(), MixEvtVtxGenerator::getRecVertex(), MixBoostEvtVtxGenerator::getRecVertex(), JetMatchingTools::getSimTrackCollection(), JetMatchingTools::getSimVertexCollection(), MixEvtVtxGenerator::getVertex(), MixBoostEvtVtxGenerator::getVertex(), TrackCollectionTokens::indicesInput(), AlignmentTrackSelector::isIsolated(), PhotonConversionTrajectorySeedProducerFromSingleLegAlgo::loopOnTracks(), TrackerHitAssociator::makeMaps(), OverlapExclusionSelector< C, T, O >::newEvent(), reco::modules::MCMatchCandRefSelector::newEvent(), ObjectCountEventSelector< C, S, N, CS >::operator()(), reco::tau::PFRecoTauChargedHadronFromGenericTrackPlugin< TrackClass >::operator()(), MCPdgIndexFilter::pass(), MultiTrackSelector::processMVA(), HIMultiTrackSelector::processMVA(), TtGenEventReco::produce(), StGenEventReco::produce(), TtSemiLepJetCombMaxSumPtWMass::produce(), PATTauIDEmbedder::produce(), TtSemiLepJetCombGeom::produce(), TtSemiLepJetCombWMassMaxSumPt::produce(), HGCalUncalibRecHitProducer::produce(), TopInitSubset::produce(), MTDUncalibratedRecHitProducer::produce(), PileupSummaryInfoSlimmer::produce(), UncleanSCRecoveryProducer::produce(), reco::modules::CaloRecHitCandidateProducer< HitCollection >::produce(), TtSemiLepJetCombWMassDeltaTopMass::produce(), TrackRefitter::produce(), GenParticleDecaySelector::produce(), TtSemiLepKinFitProducer< LeptonCollection >::produce(), GsfTrackRefitter::produce(), EcalUncalibRecHitProducer::produce(), MassKinFitterCandProducer::produce(), UnifiedSCCollectionProducer::produce(), TICLLayerTileProducer::produce(), AssociationVectorSelector< KeyRefProd, CVal, KeySelector, ValSelector >::produce(), CleanAndMergeProducer::produce(), MultiClustersFromTrackstersProducer::produce(), AssociationMapOneToOne2Association< CKey, CVal >::produce(), CandOneToOneDeltaRMatcher::produce(), DAFTrackProducer::produce(), TtFullLepKinSolutionProducer::produce(), PFTICLProducer::produce(), AssociationVector2ValueMap< KeyRefProd, CVal >::produce(), CandOneToManyDeltaRMatcher::produce(), TtFullHadSignalSelMVAComputer::produce(), IPTCorrector::produce(), ScaleCorrMETData::produce(), MTDRecHitProducer::produce(), EcalDigiSelector::produce(), TrackstersMergeProducer::produce(), GenParticlePruner::produce(), RecHitFilter::produce(), CandViewRefMerger::produce(), TtSemiLepHitFitProducer< LeptonCollection >::produce(), TtSemiLepJetCombMVAComputer::produce(), GenTrackMatcher::produce(), EcalRecalibRecHitProducer::produce(), CollectionAdder< C >::produce(), PATPuppiJetSpecificProducer::produce(), TtSemiLepSignalSelMVAComputer::produce(), MCTrackMatcher::produce(), photonIsolationHIProducer::produce(), HybridClusterProducer::produce(), CaloTowerCandidateCreator::produce(), FilteredLayerClustersProducer::produce(), BaseEvtVtxGenerator::produce(), TICLCandidateFromTrackstersProducer::produce(), EcalTPSkimmer::produce(), GenVisTauProducer::produce(), HGCalRecHitProducer::produce(), PassThroughEvtVtxGenerator::produce(), reco::modulesNew::MCTruthCompositeMatcher::produce(), JVFJetIdProducer::produce(), ConstrainedFitCandProducer< Fitter, InputCollection, OutputCollection, Init >::produce(), ShiftedMETcorrInputProducer::produce(), CloneProducer< C >::produce(), PreshowerClusterShapeProducer::produce(), TrackProducerWithSCAssociation::produce(), EcalRecHitProducer::produce(), ShallowCloneProducer< C >::produce(), TrackInfoProducer::produce(), reco::modulesNew::Matcher< C1, C2, S, D >::produce(), CandReducer::produce(), reco::modules::MatcherBase< Collection, Collection, reco::helper::CandMapTrait< Collection >::type >::produce(), PhotonCoreProducer::produce(), EcalDetailedTimeRecHitProducer::produce(), MuonMETcorrInputProducer::produce(), RecoTauPiZeroUnembedder::produce(), SysShiftMETcorrInputProducer::produce(), ShiftedJetProducerByMatchedObjectT< T >::produce(), EcalBarrelClusterFastTimer::produce(), Type0PFMETcorrInputProducer::produce(), HGCalMultiClusterProducer::produce(), NoPileUpPFMEtProducer::produce(), ShiftedParticleMETcorrInputProducer::produce(), EgammaHLTCaloTowerProducer::produce(), PFCandMETcorrInputProducer::produce(), InputGenJetsParticleSelector::produce(), CaloTowerFromL1TSeededCreatorForTauHLT::produce(), ShiftedPFCandidateProducerByMatchedObject::produce(), TtFullHadHypothesis::produce(), MultShiftMETcorrInputProducer::produce(), PFchsMETcorrInputProducer::produce(), PreshowerPhiClusterProducer::produce(), CorrMETDataExtractor::produce(), EgammaHLTRecoEcalCandidateProducers::produce(), MTDTrackingRecHitProducer::produce(), MixEvtVtxGenerator::produce(), PreshowerClusterProducer::produce(), TtSemiLepHypothesis::produce(), Merger< InputCollection, OutputCollection, P >::produce(), HiEgammaSCCorrectionMaker::produce(), HGCalLayerClusterProducer::produce(), ShiftedPFCandidateProducerForPFMVAMEt::produce(), ShiftedParticleProducer::produce(), EgammaSCCorrectionMaker::produce(), CaloTowerFromL1TCreatorForTauHLT::produce(), MultShiftMETcorrDBInputProducer::produce(), TtEvtBuilder< C >::produce(), TtFullLepHypothesis::produce(), CosmicTrackSelector::produce(), CaloTowerCreatorForTauHLT::produce(), TrackMVAClassifierBase::produce(), IsolationProducer< C1, C2, Alg, OutputCollection, Setup >::produce(), HGCalTrackCollectionProducer::produce(), MinMETProducerT< T >::produce(), RecoTauGenericJetRegionProducer< JetType, CandType >::produce(), CorrectedCaloMETProducer::produce(), ObjectSelectorProducer< Selector, OutputCollection, PostProcessor, StoreManager, Base, Init >::produce(), TrackTimeValueMapProducer::produce(), NoPileUpPFMEtDataProducer::produce(), BoostedTauSeedsProducer::produce(), ShiftedPFCandidateProducerForNoPileUpPFMEt::produce(), pat::TauJetCorrFactorsProducer::produce(), dqmBmtfAlgoSelector::L1TBMTFAlgoSelector::produce(), ConvertedPhotonProducer::produce(), reco::modulesNew::IsolationProducer< C1, C2, Alg, OutputCollection, Setup >::produce(), CorrectedPATMETProducer::produce(), ShiftedPFCandidateProducerForPFNoPUMEt::produce(), reco::PFMETProducerMVA::produce(), PhotonProducer::produce(), RecoTauPiZeroProducer::produce(), EventShapeVarsProducer::produce(), TtJetPartonMatch< C >::produce(), EgammaHLTNxNClusterProducer::produce(), SimPFProducer::produce(), RecoTauProducer::produce(), IsolatedPixelTrackCandidateProducer::produce(), MixBoostEvtVtxGenerator::produce(), GEDPhotonProducer::produce(), IsolatedPixelTrackCandidateL1TProducer::produce(), CorrectedPFMETProducer::produce(), CorrectedPatMETProducer::produce(), BetaBoostEvtVtxGenerator::produce(), reco::modules::HICaloCompatibleTrackSelector::produce(), GenHFHadronMatcher::produce(), ShiftedParticleProducerT< T >::produce(), reco::modules::TrackFullCloneSelectorBase< Selector >::produce(), RecoTauCleanerImpl< Prod >::produce(), PFRecoTauChargedHadronProducer::produce(), FlavorHistoryProducer::produce(), reco::PhysObjectMatcher< C1, C2, S, D, Q >::produce(), HLTRechitInRegionsProducer< T1 >::produce(), CorrectedMETProducerT< T >::produce(), ShiftedJetProducerT< T, Textractor >::produce(), GenParticleProducer::produce(), CaloJetMETcorrInputProducerT< T, Textractor >::produce(), CandidateProducer< TColl, CColl, Selector, Conv, Creator, Init >::produce(), Type2CorrectionProducer::produce(), JetCleanerForType1METT< T, Textractor >::produce(), GenPUProtonProducer::produce(), PFJetMETcorrInputProducerT< T, Textractor >::produce(), reco::modules::CandCombiner< Selector, PairSelector, Cloner, OutputCollection, Setup, Init >::produce(), KfTrackProducerBase::putInEvt(), GsfTrackProducerBase::putInEvt(), TrackProducerWithSCAssociation::putInEvt(), RunManagerMTWorker::resetGenParticleId(), EcalRecHitWorkerRecover::run(), AnalyticalTrackSelector::run(), MultiTrackSelector::run(), HIMultiTrackSelector::run(), EcalDQMonitorTask::runOnCollection(), AssociatedVariableCollectionSelector< InputCollection, VarCollection, Selector, OutputCollection, StoreContainer, RefAdder >::select(), DualByL2TSG::selectTSG(), EcalUncalibRecHitWorkerMultiFit::set(), reco::tau::RecoTauVertexAssociator::setEvent(), ConversionSeedFinder::setEvent(), IsoTrig::studyTiming(), FastTSGFromIOHit::trackerSeeds(), TrackCollectionTokens::tracks(), and TrackCollectionTokens::trajectories().

◆ getByToken() [4/6]

template<typename ELEMENT >
bool Event::getByToken ( EDGetToken  token,
Handle< View< ELEMENT >> &  result 
) const

Definition at line 613 of file Event.h.

613  {
614  result.clear();
615  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(ELEMENT)), ELEMENT_TYPE, token, moduleCallingContext_);
616  if UNLIKELY (bh.failedToGet()) {
617  Handle<View<ELEMENT>> h(std::move(bh.whyFailedFactory()));
618  h.swap(result);
619  return false;
620  }
621  result = fillView_<ELEMENT>(bh);
622  return true;
623  }

References edm::ELEMENT_TYPE, edm::BasicHandle::failedToGet(), edm::PrincipalGetAdapter::getByToken_(), h, moduleCallingContext_, eostools::move(), provRecorder_, mps_fire::result, unpackBuffers-CaloStage2::token, UNLIKELY, and edm::BasicHandle::whyFailedFactory().

◆ getByToken() [5/6]

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

Definition at line 547 of file Event.h.

547  {
548  result.clear();
549  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(PROD)), PRODUCT_TYPE, token, moduleCallingContext_);
550  result = convert_handle<PROD>(std::move(bh));
551  if UNLIKELY (result.failedToGet()) {
552  return false;
553  }
554  addToGotBranchIDs(*result.provenance());
555  return true;
556  }

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

◆ getByToken() [6/6]

template<typename ELEMENT >
bool Event::getByToken ( EDGetTokenT< View< ELEMENT >>  token,
Handle< View< ELEMENT >> &  result 
) const

Definition at line 626 of file Event.h.

626  {
627  result.clear();
628  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(ELEMENT)), ELEMENT_TYPE, token, moduleCallingContext_);
629  if UNLIKELY (bh.failedToGet()) {
630  Handle<View<ELEMENT>> h(std::move(bh.whyFailedFactory()));
631  h.swap(result);
632  return false;
633  }
634  result = fillView_<ELEMENT>(bh);
635  return true;
636  }

References edm::ELEMENT_TYPE, edm::BasicHandle::failedToGet(), edm::PrincipalGetAdapter::getByToken_(), h, moduleCallingContext_, eostools::move(), provRecorder_, mps_fire::result, unpackBuffers-CaloStage2::token, UNLIKELY, and edm::BasicHandle::whyFailedFactory().

◆ getHandle() [1/2]

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

◆ getHandle() [2/2]

template<typename ELEMENT >
Handle< View< ELEMENT > > Event::getHandle ( EDGetTokenT< View< ELEMENT >>  token) const

Definition at line 639 of file Event.h.

639  {
640  BasicHandle bh = provRecorder_.getByToken_(TypeID(typeid(ELEMENT)), ELEMENT_TYPE, token, moduleCallingContext_);
641  if UNLIKELY (bh.failedToGet()) {
642  return Handle<View<ELEMENT>>(std::move(bh.whyFailedFactory()));
643  }
644  return fillView_<ELEMENT>(bh);
645  }

References edm::ELEMENT_TYPE, edm::BasicHandle::failedToGet(), edm::PrincipalGetAdapter::getByToken_(), moduleCallingContext_, eostools::move(), provRecorder_, unpackBuffers-CaloStage2::token, UNLIKELY, and edm::BasicHandle::whyFailedFactory().

◆ getImpl()

BasicHandle Event::getImpl ( std::type_info const &  iProductType,
ProductID const &  pid 
) const
overrideprivatevirtual

Implements edm::EventBase.

Definition at line 267 of file Event.cc.

267  {
268  BasicHandle h = this->getByProductID_(pid);
269  if (h.isValid()) {
270  addToGotBranchIDs(*(h.provenance()));
271  }
272  return h;
273  }

References addToGotBranchIDs(), getByProductID_(), and h.

◆ getLuminosityBlock()

LuminosityBlock const& edm::Event::getLuminosityBlock ( ) const
inline

Definition at line 100 of file Event.h.

100  {
101  if (not luminosityBlock_) {
103  }
104  return *luminosityBlock_;
105  }

References fillLuminosityBlock(), and luminosityBlock_.

Referenced by EcalDQMonitorTask::analyze(), and getRun().

◆ getManyByType()

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

Definition at line 526 of file Event.h.

526  {
528  for (typename std::vector<Handle<PROD>>::const_iterator it = results.begin(), itEnd = results.end(); it != itEnd;
529  ++it) {
530  addToGotBranchIDs(*it->provenance());
531  }
532  }

References addToGotBranchIDs(), edm::PrincipalGetAdapter::getManyByType(), moduleCallingContext_, provRecorder_, bookConverter::results, and trackerHitRTTI::vector.

Referenced by EnergyScaleAnalyzer::analyze().

◆ getProcessParameterSet()

bool Event::getProcessParameterSet ( std::string const &  processName,
ParameterSet ps 
) const

Definition at line 140 of file Event.cc.

140  {
141  ProcessConfiguration config;
143  if (process_found) {
144  pset::Registry::instance()->getMapped(config.parameterSetID(), ps);
145  assert(!ps.empty());
146  }
147  return process_found;
148  }

References cms::cuda::assert(), submitPVResolutionJobs::config, edm::ParameterSet::empty(), edm::ProcessHistory::getConfigurationForProcess(), edm::pset::Registry::getMapped(), edm::pset::Registry::instance(), processHistory(), and SimL1EmulatorRepack_CalouGT_cff::processName.

◆ getProvenance() [1/2]

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

Definition at line 118 of file Event.cc.

118  {
119  return provRecorder_.principal().getProvenance(bid);
120  }

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

◆ getProvenance() [2/2]

Provenance const & Event::getProvenance ( ProductID const &  theID) const

Definition at line 122 of file Event.cc.

122 { return eventPrincipal().getProvenance(pid); }

References eventPrincipal(), and edm::EventPrincipal::getProvenance().

◆ getRefBeforePut() [1/4]

template<typename PROD >
RefProd<PROD> edm::Event::getRefBeforePut ( )
inline

◆ getRefBeforePut() [2/4]

template<typename PROD >
RefProd< PROD > Event::getRefBeforePut ( EDPutToken  token)

◆ getRefBeforePut() [3/4]

template<typename PROD >
RefProd< PROD > Event::getRefBeforePut ( EDPutTokenT< PROD token)

◆ getRefBeforePut() [4/4]

template<typename PROD >
RefProd< PROD > Event::getRefBeforePut ( std::string const &  productInstanceName)

Definition at line 468 of file Event.h.

468  {
469  auto index = provRecorder_.getPutTokenIndex(TypeID{typeid(PROD)}, productInstanceName);
470 
471  //should keep track of what Ref's have been requested and make sure they are 'put'
472  return RefProd<PROD>(provRecorder_.getProductID(index), provRecorder_.prodGetter());
473  }

References edm::PrincipalGetAdapter::getProductID(), edm::PrincipalGetAdapter::getPutTokenIndex(), PROD, edm::PrincipalGetAdapter::prodGetter(), and provRecorder_.

◆ getRun()

Run const & Event::getRun ( ) const

◆ getStableProvenance() [1/2]

StableProvenance const & Event::getStableProvenance ( BranchID const &  theID) const

◆ getStableProvenance() [2/2]

StableProvenance const & Event::getStableProvenance ( ProductID const &  theID) const

Definition at line 128 of file Event.cc.

128  {
129  return eventPrincipal().getStableProvenance(pid);
130  }

References eventPrincipal(), and edm::EventPrincipal::getStableProvenance().

◆ labelsForToken()

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

Definition at line 255 of file Event.h.

255  {
256  provRecorder_.labelsForToken(iToken, oLabels);
257  }

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

Referenced by TrackerHitAssociator::makeMaps().

◆ makeProductID()

ProductID Event::makeProductID ( BranchDescription const &  desc) const
private

Definition at line 108 of file Event.cc.

108  {
109  return eventPrincipal().branchIDToProductID(desc.originalBranchID());
110  }

References edm::EventPrincipal::branchIDToProductID(), submitPVResolutionJobs::desc, and eventPrincipal().

◆ moduleCallingContext()

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

Definition at line 253 of file Event.h.

253 { return moduleCallingContext_; }

References moduleCallingContext_.

◆ parameterSet()

edm::ParameterSet const * Event::parameterSet ( edm::ParameterSetID const &  psID) const
overridevirtual

Implements edm::EventBase.

Definition at line 150 of file Event.cc.

150  {
151  return parameterSetForID_(psID);
152  }

References edm::EventBase::parameterSetForID_().

◆ processHistory()

ProcessHistory const & Event::processHistory ( ) const
overridevirtual

◆ processHistoryID()

ProcessHistoryID const & Event::processHistoryID ( ) const

◆ productGetter()

EDProductGetter const & Event::productGetter ( ) const

◆ put() [1/4]

template<typename PROD >
OrphanHandle< PROD > Event::put ( EDPutToken  token,
std::unique_ptr< PROD product 
)

◆ put() [2/4]

template<typename PROD >
OrphanHandle< PROD > Event::put ( EDPutTokenT< PROD token,
std::unique_ptr< PROD product 
)

Definition at line 400 of file Event.h.

400  {
401  if (UNLIKELY(product.get() == nullptr)) { // null pointer is illegal
402  TypeID typeID(typeid(PROD));
404  }
405  if (UNLIKELY(token.isUninitialized())) {
407  }
408  return putImpl(token.index(), std::move(product));
409  }

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 >
OrphanHandle<PROD> edm::Event::put ( std::unique_ptr< PROD product)
inline

Put a new product.

Definition at line 133 of file Event.h.

133  {
134  return put<PROD>(std::move(product), std::string());
135  }

References eostools::move(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by Multi5x5ClusterProducer::clusterizeECALPart(), IslandClusterProducer::clusterizeECALPart(), CosmicClusterProducer::clusterizeECALPart(), EDMNeutronWriter::endEvent(), RecoTauPileUpVertexSelector::filter(), gen::Pythia6Gun::loadEvent(), EgammaHLTNxNClusterProducer::makeNxNClusters(), MultiTrackSelector::processMVA(), HIMultiTrackSelector::processMVA(), TtGenEventReco::produce(), StGenEventReco::produce(), PATTauIDEmbedder::produce(), DoubleProducer::produce(), TtSemiLepJetCombMaxSumPtWMass::produce(), HGCalUncalibRecHitProducer::produce(), TtSemiLepJetCombGeom::produce(), TtSemiLepJetCombWMassMaxSumPt::produce(), PileupSummaryInfoSlimmer::produce(), MTDUncalibratedRecHitProducer::produce(), TopInitSubset::produce(), NativeArrayTableProducer< TIn, TCol >::produce(), reco::modules::CaloRecHitCandidateProducer< HitCollection >::produce(), UncleanSCRecoveryProducer::produce(), GenParticleDecaySelector::produce(), TtSemiLepJetCombWMassDeltaTopMass::produce(), TtSemiLepKinFitProducer< LeptonCollection >::produce(), EcalUncalibRecHitProducer::produce(), HGCalRecHitMapProducer::produce(), MassKinFitterCandProducer::produce(), ParticleBasedIsoProducer::produce(), UnifiedSCCollectionProducer::produce(), TICLLayerTileProducer::produce(), AssociationVectorSelector< KeyRefProd, CVal, KeySelector, ValSelector >::produce(), CleanAndMergeProducer::produce(), CandOneToOneDeltaRMatcher::produce(), AssociationMapOneToOne2Association< CKey, CVal >::produce(), EcalTBWeightUncalibRecHitProducer::produce(), MultiClustersFromTrackstersProducer::produce(), CandOneToManyDeltaRMatcher::produce(), AssociationVector2ValueMap< KeyRefProd, CVal >::produce(), TtFullHadSignalSelMVAComputer::produce(), TtFullLepKinSolutionProducer::produce(), PFTICLProducer::produce(), MTDRecHitProducer::produce(), EcalDigiSelector::produce(), IPTCorrector::produce(), ScaleCorrMETData::produce(), GenParticlePruner::produce(), CandViewRefMerger::produce(), TtSemiLepHitFitProducer< LeptonCollection >::produce(), RecHitFilter::produce(), TrackstersMergeProducer::produce(), EcalRecalibRecHitProducer::produce(), PATPuppiJetSpecificProducer::produce(), CollectionAdder< C >::produce(), MCTrackMatcher::produce(), TtSemiLepSignalSelMVAComputer::produce(), GenTrackMatcher::produce(), TtSemiLepJetCombMVAComputer::produce(), CaloTowerCandidateCreator::produce(), ChargedHadronPFTrackIsolationProducer::produce(), BaseEvtVtxGenerator::produce(), HybridClusterProducer::produce(), LmfSource::produce(), FilteredLayerClustersProducer::produce(), photonIsolationHIProducer::produce(), GenVisTauProducer::produce(), EcalTPSkimmer::produce(), reco::modulesNew::MCTruthCompositeMatcher::produce(), HGCalRecHitProducer::produce(), PassThroughEvtVtxGenerator::produce(), TICLCandidateFromTrackstersProducer::produce(), JVFJetIdProducer::produce(), ConstrainedFitCandProducer< Fitter, InputCollection, OutputCollection, Init >::produce(), ShiftedMETcorrInputProducer::produce(), EcalRecHitProducer::produce(), CloneProducer< C >::produce(), reco::modules::MatcherBase< Collection, Collection, reco::helper::CandMapTrait< Collection >::type >::produce(), ShallowCloneProducer< C >::produce(), TrackInfoProducer::produce(), CandReducer::produce(), reco::modulesNew::Matcher< C1, C2, S, D >::produce(), PreshowerClusterShapeProducer::produce(), TrackProducerWithSCAssociation::produce(), EcalDetailedTimeRecHitProducer::produce(), RecoTauPiZeroUnembedder::produce(), MuonMETcorrInputProducer::produce(), PhotonCoreProducer::produce(), ShiftedJetProducerByMatchedObjectT< T >::produce(), SysShiftMETcorrInputProducer::produce(), TICLSeedingRegionProducer::produce(), TrackFromPackedCandidateProducer::produce(), Type0PFMETcorrInputProducer::produce(), HGCalMultiClusterProducer::produce(), NoPileUpPFMEtProducer::produce(), ShiftedParticleMETcorrInputProducer::produce(), EgammaHLTCaloTowerProducer::produce(), InputGenJetsParticleSelector::produce(), CaloTowerFromL1TSeededCreatorForTauHLT::produce(), ShiftedPFCandidateProducerByMatchedObject::produce(), PFCandMETcorrInputProducer::produce(), MTDTrackingRecHitProducer::produce(), CorrMETDataExtractor::produce(), TtFullHadHypothesis::produce(), PreshowerPhiClusterProducer::produce(), EgammaHLTRecoEcalCandidateProducers::produce(), MultShiftMETcorrInputProducer::produce(), PFchsMETcorrInputProducer::produce(), TrackstersProducer::produce(), MixEvtVtxGenerator::produce(), TtSemiLepHypothesis::produce(), PreshowerClusterProducer::produce(), Merger< InputCollection, OutputCollection, P >::produce(), HGCalLayerClusterProducer::produce(), ShiftedParticleProducer::produce(), ShiftedPFCandidateProducerForPFMVAMEt::produce(), HiEgammaSCCorrectionMaker::produce(), EgammaSCCorrectionMaker::produce(), CaloTowerFromL1TCreatorForTauHLT::produce(), MultShiftMETcorrDBInputProducer::produce(), CosmicTrackSelector::produce(), CaloTowerCreatorForTauHLT::produce(), TtEvtBuilder< C >::produce(), TrackMVAClassifierBase::produce(), TtFullLepHypothesis::produce(), IsolationProducer< C1, C2, Alg, OutputCollection, Setup >::produce(), MinMETProducerT< T >::produce(), HGCalTrackCollectionProducer::produce(), RecoTauGenericJetRegionProducer< JetType, CandType >::produce(), UniqueMerger< InputCollection, OutputCollection, P >::produce(), CorrectedCaloMETProducer::produce(), BoostedTauSeedsProducer::produce(), NoPileUpPFMEtDataProducer::produce(), pat::TauJetCorrFactorsProducer::produce(), CorrectedPATMETProducer::produce(), reco::modulesNew::IsolationProducer< C1, C2, Alg, OutputCollection, Setup >::produce(), ShiftedPFCandidateProducerForNoPileUpPFMEt::produce(), ShiftedPFCandidateProducerForPFNoPUMEt::produce(), dqmBmtfAlgoSelector::L1TBMTFAlgoSelector::produce(), reco::PFMETProducerMVA::produce(), EventShapeVarsProducer::produce(), RecoTauPiZeroProducer::produce(), PhotonProducer::produce(), TtJetPartonMatch< C >::produce(), SimPFProducer::produce(), ConversionTrackCandidateProducer::produce(), RecoTauProducer::produce(), IsolatedPixelTrackCandidateProducer::produce(), MixBoostEvtVtxGenerator::produce(), IsolatedPixelTrackCandidateL1TProducer::produce(), GEDPhotonProducer::produce(), EcalSimpleProducer::produce(), CorrectedPFMETProducer::produce(), CorrectedPatMETProducer::produce(), BetaBoostEvtVtxGenerator::produce(), reco::modules::HICaloCompatibleTrackSelector::produce(), reco::modules::TrackFullCloneSelectorBase< Selector >::produce(), ShiftedParticleProducerT< T >::produce(), RecoTauCleanerImpl< Prod >::produce(), FlavorHistoryProducer::produce(), PFRecoTauChargedHadronProducer::produce(), TrackstersFromSimClustersProducer::produce(), reco::PhysObjectMatcher< C1, C2, S, D, Q >::produce(), HLTRechitInRegionsProducer< T1 >::produce(), CorrectedMETProducerT< T >::produce(), ShiftedJetProducerT< T, Textractor >::produce(), GenParticleProducer::produce(), CaloJetMETcorrInputProducerT< T, Textractor >::produce(), CandidateProducer< TColl, CColl, Selector, Conv, Creator, Init >::produce(), Type2CorrectionProducer::produce(), JetCleanerForType1METT< T, Textractor >::produce(), GenPUProtonProducer::produce(), PFJetMETcorrInputProducerT< T, Textractor >::produce(), reco::modules::CandCombiner< Selector, PairSelector, Cloner, OutputCollection, Setup, Init >::produce(), HiSuperClusterProducer::produceSuperclustersForECALPart(), helper::CandDecayStoreManager::put(), put(), helper::MuonCollectionStoreManager::put(), helper::TrackCollectionStoreManager::put(), helper::CollectionStoreManager< OutputCollection, ClonePolicy >::put(), helper::GsfElectronCollectionStoreManager::put(), KfTrackProducerBase::putInEvt(), GsfTrackProducerBase::putInEvt(), TrackProducerWithSCAssociation::putInEvt(), DAFTrackProducer::putInEvtTrajAnn(), SiStripZeroSuppression::putOutputs(), AnalyticalTrackSelector::run(), MultiTrackSelector::run(), HIMultiTrackSelector::run(), l1t::stage2::BMTFCollections::~BMTFCollections(), l1t::stage2::CaloCollections::~CaloCollections(), l1t::stage1::CaloCollections::~CaloCollections(), l1t::stage2::CaloLayer1Collections::~CaloLayer1Collections(), l1t::stage2::EMTFCollections::~EMTFCollections(), GctUnpackCollections::~GctUnpackCollections(), l1t::stage2::GMTCollections::~GMTCollections(), l1t::stage2::GTCollections::~GTCollections(), and RctUnpackCollections::~RctUnpackCollections().

◆ put() [4/4]

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

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

Definition at line 389 of file Event.h.

389  {
390  if (UNLIKELY(product.get() == nullptr)) { // null pointer is illegal
391  TypeID typeID(typeid(PROD));
392  principal_get_adapter_detail::throwOnPutOfNullProduct("Event", typeID, productInstanceName);
393  }
394 
395  auto index = provRecorder_.getPutTokenIndex(TypeID(*product), productInstanceName);
396  return putImpl(index, std::move(product));
397  }

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

◆ putImpl()

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

Definition at line 372 of file Event.h.

372  {
373  // The following will call post_insert if T has such a function,
374  // and do nothing if T has no such function.
375  std::conditional_t<detail::has_postinsert<PROD>::value, DoPostInsert<PROD>, DoNotPostInsert<PROD>> maybe_inserter;
376  maybe_inserter(product.get());
377 
378  assert(index < putProducts().size());
379 
380  std::unique_ptr<Wrapper<PROD>> wp(new Wrapper<PROD>(std::move(product)));
381  PROD const* prod = wp->product();
382 
384  auto const& prodID = provRecorder_.getProductID(index);
385  return (OrphanHandle<PROD>(prod, prodID));
386  }

References cms::cuda::assert(), edm::PrincipalGetAdapter::getProductID(), eostools::move(), dumpMFGeometry_cfg::prod, PROD, provRecorder_, putProducts(), size(), relativeConstraints::value, and pfClustersFromHGC3DClusters_cfi::wp.

Referenced by put().

◆ putProducts() [1/2]

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

Definition at line 304 of file Event.h.

304 { return putProducts_; }

References putProducts_.

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

◆ putProducts() [2/2]

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

Definition at line 305 of file Event.h.

305 { return putProducts_; }

References putProducts_.

◆ run()

RunNumber_t edm::Event::run ( ) const
inline

Definition at line 109 of file Event.h.

109 { return id().run(); }

References edm::EventBase::id(), and edm::EventID::run().

Referenced by Types.EventID::cppID(), Types.LuminosityBlockID::cppID(), and LaserSorter::writeEventHeader().

◆ setConsumer()

void Event::setConsumer ( EDConsumerBase const *  iConsumer)

◆ setProducer()

void Event::setProducer ( ProducerBase const *  iProd,
std::vector< BranchID > *  previousParentage,
std::vector< BranchID > *  gotBranchIDsFromAcquire = nullptr 
)

Definition at line 68 of file Event.cc.

70  {
71  setProducerCommon(iProd, previousParentage);
72  if (previousParentage) {
73  //are we supposed to record parentage for at least one item?
74  bool record_parents = false;
75  for (auto v : provRecorder_.recordProvenanceList()) {
76  if (v) {
77  record_parents = true;
78  break;
79  }
80  }
81  if (not record_parents) {
82  previousBranchIDs_ = nullptr;
83  return;
84  }
85  gotBranchIDsFromPrevious_.resize(previousParentage->size(), false);
86  if (gotBranchIDsFromAcquire) {
87  for (auto const& branchID : *gotBranchIDsFromAcquire) {
88  addToGotBranchIDs(branchID);
89  }
90  }
91  }
92  }

References addToGotBranchIDs(), gotBranchIDsFromPrevious_, previousBranchIDs_, provRecorder_, edm::PrincipalGetAdapter::recordProvenanceList(), setProducerCommon(), and findQualityFiles::v.

◆ setProducerCommon()

void Event::setProducerCommon ( ProducerBase const *  iProd,
std::vector< BranchID > *  previousParentage 
)

◆ setProducerForAcquire()

void Event::setProducerForAcquire ( ProducerBase const *  iProd,
std::vector< BranchID > *  previousParentage,
std::vector< BranchID > &  gotBranchIDsFromAcquire 
)

Definition at line 94 of file Event.cc.

96  {
97  setProducerCommon(iProd, previousParentage);
98  gotBranchIDsFromAcquire_ = &gotBranchIDsFromAcquire;
99  gotBranchIDsFromAcquire_->clear();
100  }

References gotBranchIDsFromAcquire_, and setProducerCommon().

◆ setSharedResourcesAcquirer()

void Event::setSharedResourcesAcquirer ( SharedResourcesAcquirer iResourceAcquirer)

Definition at line 47 of file Event.cc.

47  {
48  provRecorder_.setSharedResourcesAcquirer(iResourceAcquirer);
49  if (luminosityBlock_) {
50  luminosityBlock_->setSharedResourcesAcquirer(iResourceAcquirer);
51  }
52  }

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

◆ size()

size_t Event::size ( void  ) const

◆ streamID()

StreamID edm::Event::streamID ( ) const
inline

◆ triggerNames()

TriggerNames const & Event::triggerNames ( edm::TriggerResults const &  triggerResults) const
overridevirtual

Implements edm::EventBase.

Definition at line 275 of file Event.cc.

275  {
277  if (names != nullptr)
278  return *names;
279 
280  throw cms::Exception("TriggerNamesNotFound") << "TriggerNames not found in ParameterSet registry";
281  return *names;
282  }

References Exception, names, edm::EventBase::triggerNames_(), and edm::triggerResults().

Referenced by TopDiLeptonDQM::analyze(), EwkElecTauHistManager::fillHistograms(), EwkMuTauHistManager::fillHistograms(), and egHLT::OffHelper::setTrigInfo().

◆ triggerResultsByName()

TriggerResultsByName Event::triggerResultsByName ( edm::TriggerResults const &  triggerResults) const
overridevirtual

Implements edm::EventBase.

Definition at line 284 of file Event.cc.

References names, edm::EventBase::triggerNames_(), and edm::triggerResults().

Friends And Related Function Documentation

◆ ::testEvent

friend class ::testEvent
friend

Definition at line 266 of file Event.h.

◆ ::testEventGetRefBeforePut

friend class ::testEventGetRefBeforePut
friend

Definition at line 265 of file Event.h.

◆ InputSource

friend class InputSource
friend

Definition at line 293 of file Event.h.

◆ ProducerBase

friend class ProducerBase
friend

Definition at line 295 of file Event.h.

◆ ProducerSourceBase

friend class ProducerSourceBase
friend

Definition at line 292 of file Event.h.

◆ RawInputSource

friend class RawInputSource
friend

Definition at line 294 of file Event.h.

◆ stream::ProducingModuleAdaptorBase

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

Definition at line 297 of file Event.h.

Member Data Documentation

◆ aux_

EventAuxiliary const& edm::Event::aux_
private

Definition at line 314 of file Event.h.

Referenced by eventAuxiliary().

◆ emptyString_

const std::string Event::emptyString_
staticprivate

Definition at line 338 of file Event.h.

Referenced by getByLabel().

◆ gotBranchIDs_

BranchIDSet edm::Event::gotBranchIDs_
mutableprivate

Definition at line 324 of file Event.h.

Referenced by addToGotBranchIDs(), commit_aux(), and setConsumer().

◆ gotBranchIDsFromAcquire_

std::vector<BranchID>* edm::Event::gotBranchIDsFromAcquire_ = nullptr
private

Definition at line 327 of file Event.h.

Referenced by addToGotBranchIDs(), and setProducerForAcquire().

◆ gotBranchIDsFromPrevious_

std::vector<bool> edm::Event::gotBranchIDsFromPrevious_
mutableprivate

Definition at line 325 of file Event.h.

Referenced by addToGotBranchIDs(), commit_aux(), and setProducer().

◆ gotViews_

std::vector<std::shared_ptr<ViewBase> > edm::Event::gotViews_
mutableprivate

Definition at line 333 of file Event.h.

Referenced by fillView_().

◆ luminosityBlock_

std::optional<LuminosityBlock> edm::Event::luminosityBlock_
mutableprivate

◆ moduleCallingContext_

ModuleCallingContext const* edm::Event::moduleCallingContext_
private

◆ previousBranchIDs_

std::vector<BranchID>* edm::Event::previousBranchIDs_ = nullptr
private

Definition at line 326 of file Event.h.

Referenced by addToGotBranchIDs(), commit_aux(), setProducer(), and setProducerCommon().

◆ provRecorder_

PrincipalGetAdapter edm::Event::provRecorder_
private

◆ putProducts_

ProductPtrVec edm::Event::putProducts_
private

Definition at line 312 of file Event.h.

Referenced by putProducts(), and setProducerCommon().

◆ streamID_

StreamID edm::Event::streamID_
private

Definition at line 335 of file Event.h.

Referenced by streamID().

edm::pset::Registry::instance
static Registry * instance()
Definition: Registry.cc:12
writedatasetfile.args
args
Definition: writedatasetfile.py:18
edm::FillViewHelperVector
std::vector< std::pair< edm::ProductID, unsigned long > > FillViewHelperVector
Definition: FillViewHelperVector.h:30
edm::PrincipalGetAdapter::setConsumer
void setConsumer(EDConsumerBase const *iConsumer)
Definition: PrincipalGetAdapter.h:143
FastTimerService_cff.range
range
Definition: FastTimerService_cff.py:34
edm::PrincipalGetAdapter::principal
Principal const & principal() const
Definition: PrincipalGetAdapter.h:165
edm::Event::putProducts_
ProductPtrVec putProducts_
Definition: Event.h:312
edm::principal_get_adapter_detail::throwOnPutOfWrongType
void throwOnPutOfWrongType(std::type_info const &wrongType, TypeID const &rightType)
Definition: PrincipalGetAdapter.cc:48
electrons_cff.bool
bool
Definition: electrons_cff.py:366
mps_fire.i
i
Definition: mps_fire.py:428
edm::Event::getLuminosityBlock
LuminosityBlock const & getLuminosityBlock() const
Definition: Event.h:100
dqmiodumpmetadata.n
n
Definition: dqmiodumpmetadata.py:28
edm::PrincipalGetAdapter::setProducer
void setProducer(ProducerBase const *iProd)
Definition: PrincipalGetAdapter.h:149
TriggerResultsByName
edm::PRODUCT_TYPE
Definition: ProductKindOfType.h:5
edm::Event::addToGotBranchIDs
void addToGotBranchIDs(Provenance const &prov) const
Definition: Event.cc:235
edm::Event::previousBranchIDs_
std::vector< BranchID > * previousBranchIDs_
Definition: Event.h:326
Handle
pfClustersFromHGC3DClusters_cfi.wp
wp
Definition: pfClustersFromHGC3DClusters_cfi.py:20
edm::PrincipalGetAdapter::recordProvenanceList
std::vector< bool > const & recordProvenanceList() const
Definition: PrincipalGetAdapter.cc:293
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::Event::moduleCallingContext_
ModuleCallingContext const * moduleCallingContext_
Definition: Event.h:336
edm::Event::productGetter
EDProductGetter const & productGetter() const
Definition: Event.cc:106
edm::ParentageRegistry::instance
static ParentageRegistry * instance()
Definition: ParentageRegistry.cc:4
edm::Event::gotViews_
std::vector< std::shared_ptr< ViewBase > > gotViews_
Definition: Event.h:333
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
edm::ProcessHistory::getConfigurationForProcess
bool getConfigurationForProcess(std::string const &name, ProcessConfiguration &config) const
Definition: ProcessHistory.cc:34
info
static const TGPicture * info(bool iBackgroundIsBlack)
Definition: FWCollectionSummaryWidget.cc:153
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::Event::getByProductID_
BasicHandle getByProductID_(ProductID const &oid) const
Definition: Event.cc:154
findQualityFiles.v
v
Definition: findQualityFiles.py:179
edm::PrincipalGetAdapter::putTokenIndexToProductResolverIndex
std::vector< edm::ProductResolverIndex > const & putTokenIndexToProductResolverIndex() const
Definition: PrincipalGetAdapter.cc:289
edm::convert_handle
Handle< T > convert_handle(BasicHandle &&bh) noexcept(true)
Definition: ConvertHandle.h:22
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::es::products
ESProducts< std::remove_reference_t< TArgs >... > products(TArgs &&... args)
Definition: ESProducts.h:128
edm::PrincipalGetAdapter::setSharedResourcesAcquirer
void setSharedResourcesAcquirer(SharedResourcesAcquirer *iSra)
Definition: PrincipalGetAdapter.h:146
edm::makeHandleExceptionFactory
std::shared_ptr< HandleExceptionFactory > makeHandleExceptionFactory(T &&iFunctor)
Definition: FunctorHandleExceptionFactory.h:45
config
Definition: config.py:1
edm::errors::ProductNotFound
Definition: EDMException.h:33
UNLIKELY
#define UNLIKELY(x)
Definition: Likely.h:21
edm::Event::emplaceImpl
OrphanHandle< PROD > emplaceImpl(EDPutToken::value_type token, Args &&... args)
Definition: Event.h:450
edm::Event::eventPrincipal
EventPrincipal const & eventPrincipal() const
Definition: Event.cc:102
edm::Principal::getAllProvenance
void getAllProvenance(std::vector< Provenance const * > &provenances) const
Definition: Principal.cc:858
edm::PrincipalGetAdapter::getByToken_
BasicHandle getByToken_(TypeID const &id, KindOfType kindOfType, EDGetToken token, ModuleCallingContext const *mcc) const
Definition: PrincipalGetAdapter.cc:147
names
const std::string names[nVars_]
Definition: PhotonIDValueMapProducer.cc:124
GlobalPosition_Frontier_DevDB_cff.tag
tag
Definition: GlobalPosition_Frontier_DevDB_cff.py:11
edm::Principal::processHistoryID
ProcessHistoryID const & processHistoryID() const
Definition: Principal.h:142
edm::Principal::getProvenance
Provenance const & getProvenance(BranchID const &bid) const
Definition: Principal.cc:833
submitPVResolutionJobs.config
config
parse the configuration file
Definition: submitPVResolutionJobs.py:281
mps_fire.end
end
Definition: mps_fire.py:242
dumpMFGeometry_cfg.prod
prod
Definition: dumpMFGeometry_cfg.py:24
edm::Principal::getAllStableProvenance
void getAllStableProvenance(std::vector< StableProvenance const * > &provenances) const
Definition: Principal.cc:875
edm::PrincipalGetAdapter::getByLabel_
BasicHandle getByLabel_(TypeID const &tid, InputTag const &tag, ModuleCallingContext const *mcc) const
Definition: PrincipalGetAdapter.cc:133
edm::Event::aux_
EventAuxiliary const & aux_
Definition: Event.h:314
h
edm::Event::getByLabel
bool getByLabel(InputTag const &tag, Handle< PROD > &result) const
Definition: Event.h:496
edm::PrincipalGetAdapter::numberOfProductsConsumed
size_t numberOfProductsConsumed() const
Definition: PrincipalGetAdapter.cc:82
edm::EventID::run
RunNumber_t run() const
Definition: EventID.h:38
edm::PrincipalGetAdapter::prodGetter
EDProductGetter const * prodGetter() const
Definition: PrincipalGetAdapter.cc:297
edm::Event::streamID_
StreamID streamID_
Definition: Event.h:335
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::Event::processHistory
ProcessHistory const & processHistory() const override
Definition: Event.cc:250
edm::Event::putImpl
OrphanHandle< PROD > putImpl(EDPutToken::value_type token, std::unique_ptr< PROD > product)
Definition: Event.h:372
edm::Event::putProducts
ProductPtrVec & putProducts()
Definition: Event.h:304
edm::EventPrincipal::getProvenance
Provenance const & getProvenance(ProductID const &pid) const
Definition: EventPrincipal.cc:355
edm::Event::gotBranchIDsFromAcquire_
std::vector< BranchID > * gotBranchIDsFromAcquire_
Definition: Event.h:327
edm::Event::Event
Event(EventTransitionInfo const &, ModuleDescription const &, ModuleCallingContext const *)
Definition: Event.cc:23
edm::Event::moduleCallingContext
ModuleCallingContext const * moduleCallingContext() const
Definition: Event.h:253
helpers
Definition: makeCompositeCandidate.h:8
jetUpdater_cfi.sort
sort
Definition: jetUpdater_cfi.py:29
edm::Event::provRecorder_
PrincipalGetAdapter provRecorder_
Definition: Event.h:307
edm::Event::size
size_t size() const
Definition: Event.cc:252
edm::EventPrincipal::eventSelectionIDs
EventSelectionIDVector const & eventSelectionIDs() const
Definition: EventPrincipal.cc:365
edm::Principal::getStableProvenance
StableProvenance const & getStableProvenance(BranchID const &bid) const
Definition: Principal.cc:846
edm::PrincipalGetAdapter::getTypeIDForPutTokenIndex
TypeID const & getTypeIDForPutTokenIndex(EDPutToken::value_type index) const
Definition: PrincipalGetAdapter.cc:285
trackerHitRTTI::vector
Definition: trackerHitRTTI.h:21
edm::PrincipalGetAdapter::productInstanceLabel
std::string const & productInstanceLabel(EDPutToken) const
Definition: PrincipalGetAdapter.cc:281
edm::LuminosityBlock::getRun
Run const & getRun() const
Definition: LuminosityBlock.h:107
edm::Event::gotBranchIDs_
BranchIDSet gotBranchIDs_
Definition: Event.h:324
edm::PrincipalGetAdapter::getProductID
ProductID const & getProductID(unsigned int iPutTokenIndex) const
Definition: PrincipalGetAdapter.cc:240
edm::PrincipalGetAdapter::getConsumer
EDConsumerBase const * getConsumer() const
Definition: PrincipalGetAdapter.h:144
SimL1EmulatorRepack_CalouGT_cff.processName
processName
Definition: SimL1EmulatorRepack_CalouGT_cff.py:17
edm::EventPrincipal::getByProductID
BasicHandle getByProductID(ProductID const &oid) const
Definition: EventPrincipal.cc:269
edm::principal_get_adapter_detail::throwOnPutOfNullProduct
void throwOnPutOfNullProduct(char const *principalType, TypeID const &productType, std::string const &productInstanceName)
Definition: PrincipalGetAdapter.cc:32
edm::Event::luminosityBlock_
std::optional< LuminosityBlock > luminosityBlock_
Definition: Event.h:317
edm::EventPrincipal::getStableProvenance
StableProvenance const & getStableProvenance(ProductID const &pid) const
Definition: EventPrincipal.cc:360
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
edm::ParentageRegistry::insertMapped
bool insertMapped(value_type const &v)
Definition: ParentageRegistry.cc:24
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::ELEMENT_TYPE
Definition: ProductKindOfType.h:5
edm::Event::commit_aux
void commit_aux(ProductPtrVec &products, ParentageID *previousParentageId=nullptr)
Definition: Event.cc:179
edm::ParentageID
Hash< ParentageType > ParentageID
Definition: ParentageID.h:8
LIKELY
#define LIKELY(x)
Definition: Likely.h:20
edm::EventPrincipal::branchIDToProductID
ProductID branchIDToProductID(BranchID const &bid) const
Definition: EventPrincipal.cc:231
relativeConstraints.value
value
Definition: relativeConstraints.py:53
edm::Principal::size
size_t size() const
Definition: Principal.cc:303
Exception
Definition: hltDiff.cc:245
edm::EventBase::parameterSetForID_
static edm::ParameterSet const * parameterSetForID_(edm::ParameterSetID const &psID)
Definition: EventBase.cc:41
edm::EventBase::id
edm::EventID id() const
Definition: EventBase.h:59
edm::TriggerNames
Definition: TriggerNames.h:55
edm::triggerResults
static const std::string triggerResults("TriggerResults")
AlignmentPI::index
index
Definition: AlignmentPayloadInspectorHelper.h:46
edm::EventBase::triggerNames_
static TriggerNames const * triggerNames_(edm::TriggerResults const &triggerResults)
Definition: EventBase.cc:45
edm::Event::setProducerCommon
void setProducerCommon(ProducerBase const *iProd, std::vector< BranchID > *previousParentage)
Definition: Event.cc:61
mps_fire.result
result
Definition: mps_fire.py:311
PROD
#define PROD(A, B)
Definition: Simplify_begin.h:55
edm::PrincipalGetAdapter::getMatchingSequenceByLabel_
BasicHandle getMatchingSequenceByLabel_(TypeID const &typeID, InputTag const &tag, ModuleCallingContext const *mcc) const
Definition: PrincipalGetAdapter.cc:172
edm::Event::emptyString_
static const std::string emptyString_
Definition: Event.h:338
HerwigMaxPtPartonFilter_cfi.moduleLabel
moduleLabel
Definition: HerwigMaxPtPartonFilter_cfi.py:4
edm::Event::gotBranchIDsFromPrevious_
std::vector< bool > gotBranchIDsFromPrevious_
Definition: Event.h:325
edm::Principal::cacheIdentifier
CacheIdentifier_t cacheIdentifier() const
Definition: Principal.h:185
edm::pset::Registry::getMapped
bool getMapped(key_type const &k, value_type &result) const
Definition: Registry.cc:17
SiStripBadComponentsDQMServiceTemplate_cfg.ep
ep
Definition: SiStripBadComponentsDQMServiceTemplate_cfg.py:86
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::processHistory
ProcessHistory const & processHistory() const
Definition: PrincipalGetAdapter.cc:193
edm::Event::fillLuminosityBlock
void fillLuminosityBlock() const
Definition: Event.cc:54
unpackBuffers-CaloStage2.token
token
Definition: unpackBuffers-CaloStage2.py:316