LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
art::Event Class Referencefinal

#include "Event.h"

Inheritance diagram for art::Event:
art::ProductRetriever

Public Types

template<typename T >
using HandleT = Handle< T >
 

Public Member Functions

 ~Event ()
 
 Event (EventPrincipal const &ep, ModuleContext const &mc, std::optional< ProductInserter > inserter=std::nullopt)
 
 Event (Event const &)=delete
 
 Event (Event &&)=delete
 
Eventoperator= (Event const &)=delete
 
Eventoperator= (Event &&)=delete
 
EventID id () const
 
RunNumber_t run () const
 
SubRunNumber_t subRun () const
 
EventNumber_t event () const
 
Timestamp time () const
 
bool isRealData () const
 
EventAuxiliary::ExperimentType experimentType () const
 
SubRun const & getSubRun () const
 
Run const & getRun () const
 
ProcessHistory const & processHistory () const
 
ProcessHistoryID const & processHistoryID () const
 
template<typename PROD >
PutHandle< PROD > put (std::unique_ptr< PROD > &&edp, std::string const &instance={})
 

Private Member Functions

void commitProducts ()
 
void commitProducts (bool const checkProducts, std::map< TypeLabel, BranchDescription > const *expectedProducts)
 
template<typename PROD >
PROD const & getProduct (InputTag const &tag) const
 
template<typename PROD >
PROD const & getProduct (ProductToken< PROD > const &token) const
 
template<typename PROD >
Handle< PROD > getHandle (SelectorBase const &) const
 
template<typename PROD >
Handle< PROD > getHandle (ProductID const pid) const
 
template<typename PROD >
Handle< PROD > getHandle (InputTag const &tag) const
 
template<typename PROD >
Handle< PROD > getHandle (ProductToken< PROD > const &token) const
 
template<typename PROD >
ValidHandle< PROD > getValidHandle (InputTag const &tag) const
 
template<typename PROD >
ValidHandle< PROD > getValidHandle (ProductToken< PROD > const &token) const
 
template<typename PROD >
std::vector< InputTaggetInputTags (SelectorBase const &selector=MatchAllSelector{}) const
 
template<typename PROD >
std::vector< ProductToken< PROD > > getProductTokens (SelectorBase const &selector=MatchAllSelector{}) const
 
template<typename PROD >
std::vector< Handle< PROD > > getMany (SelectorBase const &selector=MatchAllSelector{}) const
 
template<typename PROD >
bool get (SelectorBase const &, Handle< PROD > &result) const
 
template<typename PROD >
bool get (ProductID const pid, Handle< PROD > &result) const
 
template<typename PROD >
bool getByLabel (std::string const &label, std::string const &instance, Handle< PROD > &result) const
 
template<typename PROD >
bool getByLabel (std::string const &label, std::string const &instance, std::string const &process, Handle< PROD > &result) const
 
template<typename PROD >
bool getByLabel (InputTag const &tag, Handle< PROD > &result) const
 
template<typename ELEMENT >
std::size_t getView (std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
 
template<typename ELEMENT >
std::size_t getView (std::string const &moduleLabel, std::string const &productInstanceName, std::vector< ELEMENT const * > &result) const
 
template<typename ELEMENT >
std::size_t getView (InputTag const &, std::vector< ELEMENT const * > &result) const
 
template<typename ELEMENT >
std::size_t getView (ViewToken< ELEMENT > const &, std::vector< ELEMENT const * > &result) const
 
template<typename ELEMENT >
bool getView (std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, View< ELEMENT > &result) const
 
template<typename ELEMENT >
bool getView (std::string const &moduleLabel, std::string const &productInstanceName, View< ELEMENT > &result) const
 
template<typename ELEMENT >
bool getView (InputTag const &, View< ELEMENT > &result) const
 
template<typename ELEMENT >
bool getView (ViewToken< ELEMENT > const &, View< ELEMENT > &result) const
 
std::vector< ProductIDretrievedPIDs () const
 
std::optional< Provenance const > getProductProvenance (ProductID) const
 
std::optional< fhicl::ParameterSet const > getProcessParameterSet (std::string const &process) const
 
cet::exempt_ptr< BranchDescription const > getProductDescription (ProductID) const
 
EDProductGetter const * productGetter (ProductID const pid) const
 
template<typename T >
ProductID getProductID (std::string const &instance_name="") const
 

Private Attributes

std::optional< ProductInserterinserter_
 
EventPrincipal const & eventPrincipal_
 
SubRun const subRun_
 

Friends

class detail::Analyzer
 
class detail::Filter
 
class detail::Producer
 
class ProducingService
 

Detailed Description

Definition at line 26 of file Event.h.

Member Typedef Documentation

template<typename T >
using art::Event::HandleT = Handle<T>

Definition at line 29 of file Event.h.

Constructor & Destructor Documentation

art::Event::~Event ( )
default
art::Event::Event ( EventPrincipal const &  ep,
ModuleContext const &  mc,
std::optional< ProductInserter inserter = std::nullopt 
)
explicit

Definition at line 13 of file Event.cc.

References eventPrincipal_, art::InEvent, inserter_, and subRun_.

16  : ProductRetriever{InEvent, ep, mc, inserter.has_value()}
17  , inserter_{std::move(inserter)}
18  , eventPrincipal_{ep}
19  , subRun_{ep.subRunPrincipal().makeSubRun(mc)}
20  {}
ProductRetriever(BranchType bt, Principal const &p, ModuleContext const &mc, bool recordParents)
EventPrincipal const & eventPrincipal_
Definition: Event.h:96
std::optional< ProductInserter > inserter_
Definition: Event.h:95
SubRun const subRun_
Definition: Event.h:97
art::Event::Event ( Event const &  )
delete
art::Event::Event ( Event &&  )
delete

Member Function Documentation

void art::Event::commitProducts ( )
private

Definition at line 89 of file Event.cc.

References inserter_.

Referenced by put().

90  {
91  assert(inserter_);
92  inserter_->commitProducts();
93  }
std::optional< ProductInserter > inserter_
Definition: Event.h:95
void art::Event::commitProducts ( bool const  checkProducts,
std::map< TypeLabel, BranchDescription > const *  expectedProducts 
)
private

Definition at line 96 of file Event.cc.

References inserter_, and art::ProductRetriever::retrievedPIDs().

99  {
100  assert(inserter_);
101  inserter_->commitProducts(
102  checkProducts, expectedProducts, ProductRetriever::retrievedPIDs());
103  }
std::optional< ProductInserter > inserter_
Definition: Event.h:95
std::vector< ProductID > retrievedPIDs() const
EventAuxiliary::ExperimentType art::Event::experimentType ( ) const

Definition at line 59 of file Event.cc.

References eventPrincipal_, and art::EventPrincipal::ExperimentType().

Referenced by rndm::NuRandomServiceHelper::ArtState::set_event().

60  {
62  }
EventAuxiliary::ExperimentType ExperimentType() const
EventPrincipal const & eventPrincipal_
Definition: Event.h:96
template<typename PROD >
bool art::ProductRetriever::get ( SelectorBase const &  sel,
Handle< PROD > &  result 
) const
inherited

Definition at line 417 of file ProductRetriever.h.

Referenced by art::Observer::getTriggerResults(), and art::detail::ProcessAndEventSelector::triggerResults().

418  {
419  result = getHandle<PROD>(sel);
420  return static_cast<bool>(result);
421  }
template<typename PROD >
bool art::ProductRetriever::get ( ProductID const  pid,
Handle< PROD > &  result 
) const
inherited

Definition at line 425 of file ProductRetriever.h.

426  {
427  result = getHandle<PROD>(pid);
428  return static_cast<bool>(result);
429  }
template<typename PROD >
bool art::ProductRetriever::getByLabel ( std::string const &  label,
std::string const &  instance,
Handle< PROD > &  result 
) const
inherited

Definition at line 444 of file ProductRetriever.h.

Referenced by lar::util::details::FindAllP< Source, Dest >::Add(), reco3d::PlotSpacePoints::analyze(), opdet::OpDigiAna::analyze(), opdet::FIFOHistogramAna::analyze(), opdet::OpFlashMCTruthAna::analyze(), cheat::CheckBackTracking::analyze(), calo::PrintCalorimetry::analyze(), opdet::OpFlashSimpleAna::analyze(), shower::TCShowerAnalysis::analyze(), opdet::OpHitAna::analyze(), opdet::OpFlashAna::analyze(), pid::PIDAAnalyzer::analyze(), trk::TrackContainmentAnalyzer::analyze(), MCBTDemo::analyze(), vertex::AggregateVertexAna::analyze(), detsim::SimWireAna::analyze(), shower::TCShowerElectronLikelihood::analyze(), shower::TCShowerTemplateMaker::analyze(), detsim::WienerFilterAna::analyze(), larg4::ISCalcAna::analyze(), microboone::CosmicRemovalAna::analyze(), vertex::FeatureVertexFinderAna::analyze(), cluster::HoughLineFinderAna::analyze(), opdet::FlashHypothesisAna::analyze(), hit::MagDriftAna::analyze(), pfpf::PFPAna::analyze(), calo::CaloChecker::analyze(), pdsp::CheckCNNScore::analyze(), opreco::OpticalRecoAna::analyze(), cluster::ClusterAna::analyze(), cluster::ClusterPCA::analyze(), caldata::CalWireAna::analyze(), lar_pandora::ConsolidatedPFParticleAnalysisTemplate::analyze(), opdet::LEDCalibrationAna::analyze(), hit::GausHitFinderAna::analyze(), hit::HitAnaModule::analyze(), cluster::DBclusterAna::analyze(), hit::HitFinderAna::analyze(), trkf::SpacePointAna::analyze(), cluster::ClusterTrackAna::analyze(), cheat::RecoCheckAna::analyze(), rwgt::ReweightAna::analyze(), nnet::EvaluateROIEff::analyze(), NuShowerEff::analyze(), nnet::RawWaveformDump::analyze(), nnet::PointIdEffTest::analyze(), nnet::RawWaveformClnSigDump::analyze(), ems::MultiEMShowers::analyze(), lar::example::AnalysisExample::analyze(), trkf::SeedAna::analyze(), trkf::TrackAna::analyze(), ClusteringValidation::ClusteringValidation::analyze(), trkf::TrackAna::anaStitch(), lar_pandora::LArPandoraHelper::BuildMCParticleHitMaps(), evd::AnalysisBaseDrawer::CalorShower(), evd::HitSelector::ChangeHit(), lar_cluster3d::StandardHit3DBuilder::CollectArtHits(), lar_cluster3d::SnippetHit3DBuilder::CollectArtHits(), lar_pandora::LArPandoraHelper::CollectClusters(), lar_pandora::LArPandoraHelper::CollectCosmicTags(), lar_pandora::LArPandoraHelper::CollectGeneratorMCParticles(), lar_pandora::LArPandoraHelper::CollectHits(), lar_pandora::LArPandoraHelper::CollectMCParticles(), lar_pandora::LArPandoraSliceIdHelper::CollectNeutrinoMCParticles(), lar_pandora::LArPandoraHelper::CollectPFParticleMetadata(), lar_pandora::LArPandoraExternalEventBuilding::CollectPFParticles(), lar_pandora::LArPandoraHelper::CollectPFParticles(), lar_pandora::LArPandoraHelper::CollectSeeds(), ems::EMShower3D::CollectShower2D(), lar_pandora::LArPandoraHelper::CollectShowers(), lar_pandora::LArPandoraHelper::CollectSimChannels(), lar_pandora::LArPandoraHelper::CollectSpacePoints(), lar_pandora::LArPandoraHelper::CollectT0s(), lar_pandora::LArPandoraHelper::CollectTracks(), lar_pandora::LArPandoraHelper::CollectVertices(), lar_pandora::LArPandoraHelper::CollectWires(), ems::MultiEMShowers::convCluster(), t0::IndirectHitParticleAssns::CreateHitParticleAssociations(), t0::DirectHitParticleAssns::CreateHitParticleAssociations(), evdb_tool::DrawSimPhoton3D::Draw(), evdb_tool::DrawLArVoxel3D::Draw(), evdb_tool::DrawSimEnergyDeposit3D::drawAll(), evd::AnalysisBaseDrawer::DrawDeDx(), evd::AnalysisBaseDrawer::DrawKineticEnergy(), evdb_tool::DrawSimEnergyDeposit3D::drawMCPartAssociated(), evd::RecoBaseDrawer::DrawTrackVertexAssns2D(), lcvn::LArNuCVNZlibMaker::endSubRun(), sim::POTaccumulator::endSubRun(), filt::LArG4ParticleFilter::filter(), filt::FinalStateParticleFilter::filter(), simfilter::FilterNoDirtNeutrinos::filter(), filter::MuonFilter::filter(), trkf::StitchAlg::FindHeadsAndTails(), anab::FVectorReader< T, N >::FVectorReader(), trkf::Track3DKalmanHit::getAllHits(), lar_pandora::LArPandoraHelper::GetAssociatedHits(), lar_pandora::LArPandoraSliceIdHelper::GetBeamNeutrinoMCTruth(), trkf::Track3DKalmanHit::getClusteredHits(), evd::RecoBaseDrawer::GetClusters(), evd::RecoBaseDrawer::GetEdges(), evd::RecoBaseDrawer::GetEndPoint2D(), evd::RecoBaseDrawer::GetEvents(), lar_pandora::LArPandoraSliceIdHelper::GetHitOrigins(), trkf::SeedFinderModule::GetHitsFromEvent(), evd::RecoBaseDrawer::GetOpFlashes(), evd::RecoBaseDrawer::GetPFParticles(), trkf::Track3DKalmanHit::getPFParticleStuff(), lar_pandora::LArPandoraSliceIdHelper::GetPFParticleToHitsMap(), evd::RecoBaseDrawer::GetSeeds(), sim::SimListUtils::GetSimPhotonsCollection(), evd::RecoBaseDrawer::GetSlices(), trkf::SeedFinderModule::GetSortedHitsFromClusters(), evd::RecoBaseDrawer::GetSpacePoints(), evd::RecoBaseDrawer::GetVertices(), quad::GetVtxByAssns(), evd::RecoBaseDrawer::GetWires(), lar_cluster3d::SpacePointHit3DBuilder::Hit3DBuilder(), lar_pandora::LArPandoraEventDump::PandoraData::LoadCollection(), evgb::MCTruthAndFriendsItr::MCTruthAndFriendsItr(), mvapid::MVAAlg::PrepareEvent(), wc::CellTree::processCalib(), DUNE::NeutrinoShowerEff::processEff(), DUNE::MuonTrackingEff::processEff(), DUNE::NeutrinoTrackingEff::processEff(), wc::CellTree::processMC(), wc::CellTree::processOpFlash(), wc::CellTree::processOpHit(), wc::CellTree::processRaw(), wc::CellTree::processSimChannel(), wc::CellTree::processSpacePointTruthDepo(), wc::CellTree::processTrigger(), opdet::OpticalRawDigitReformatter::produce(), pid::Chi2ParticleID::produce(), cosmic::TrackPFParticleMatch::produce(), MCReco::produce(), vertex::VertexCheater::produce(), hit::DisambigCheater::produce(), hit::MCHitFinder::produce(), cosmic::CosmicClusterTagger::produce(), shwf::ShowerCheater::produce(), trk::TrackContainmentTagger::produce(), event::EventCheater::produce(), trkf::FeatureTracker::produce(), cosmic::CosmicTrackTagger::produce(), hit::TTHitFinder::produce(), trkf::SpacePointCheater::produce(), trkf::SpacePointFinder::produce(), hit::RawHitFinder::produce(), apa::APAHitFinder::produce(), sppt::TTSpacePointFinder::produce(), cosmic::CosmicPFParticleTagger::produce(), trkf::TrackCheater::produce(), hit::RFFHitFinder::produce(), hit::FFTHitFinder::produce(), cluster::ClusterCheater::produce(), shwf::ShowerFinder::produce(), trkf::TrackStitcher::produce(), noisefilteralg::WireCellNoiseFilter::produce(), vertex::PrimaryVertexFinder::produce(), cluster::DBcluster::produce(), caldata::CalWire::produce(), cosmic::BeamFlashTrackMatchTagger::produce(), caldata::CalWireT962::produce(), cluster::EndPointModule::produce(), cluster::LineMerger::produce(), reco3d::SpacePointSolver::produce(), CRHitRemoval::produce(), cosmic::CosmicPCAxisTagger::produce(), calo::TrackCalorimetry::produce(), shower::TCShower::produce(), trkf::SpacePts::produce(), ShowerReco3D::produce(), trkf::Track3Dreco::produce(), t0::MCParticleShowerMatching::produce(), t0::MCParticleTrackMatching::produce(), cluster::BlurredClustering::produce(), nnet::WaveformRoiFinder::produce(), sce::SCECorrection::produce(), cluster::TrajCluster::produce(), trkf::MCSFitProducer::produce(), ems::EMShower3D::produce(), phot::PDFastSimPVS::produce(), trkf::CCTrackMaker::produce(), trkf::Track3DKalman::produce(), shwf::ShowerReco::produce(), phot::PDFastSimANN::produce(), hit::GausHitFinder::produce(), cluster::SmallClusterFinder::produce(), trkf::TrackKalmanCheater::produce(), quad::QuadVtx::produce(), hit::DPRawHitFinder::produce(), CRHitRemovalByPCA::produce(), vertex::VertexFinder2D::produce(), lbne::PhotonCounterT0Matching::produce(), NuGraphInference::produce(), vertex::FeatureVertexFinder::produce(), shower::EMShower::produce(), trkf::PMAlgTrajFitter::produce(), detsim::DriftElectronstoPlane::produce(), t0::MCTruthT0Matching::produce(), calo::Calorimetry::produce(), trkf::Track3DKalmanSPS::produce(), detsim::SimDriftElectrons::produce(), trkf::KalmanFilterTrajectoryFitter::produce(), calo::GnocchiCalorimetry::produce(), phot::PDFastSimPAR::produce(), opdet::OpHitFinder::produce(), trkf::CosmicTracker::produce(), larg4::LArG4::produce(), evd::details::RawDigitCacheDataClass::ReadProduct(), evd::InfoTransfer::Rebuild(), cheat::PhotonBackTracker::Rebuild(), evd::HitSelector::SaveHits(), evd::HitSelector::SaveSeedLines(), cluster::ClusterMergeHelper::SetClusters(), nnet::TrainingDataAlg::setDataEventData(), tss::TrackShowerHits::sortHits(), and evd::details::RawDigitCacheDataClass::Update().

447  {
448  result = getHandle<PROD>({moduleLabel, instance});
449  return static_cast<bool>(result);
450  }
const std::string instance
template<typename PROD >
bool art::ProductRetriever::getByLabel ( std::string const &  label,
std::string const &  instance,
std::string const &  process,
Handle< PROD > &  result 
) const
inherited

Definition at line 433 of file ProductRetriever.h.

437  {
438  result = getHandle<PROD>({moduleLabel, productInstanceName, processName});
439  return static_cast<bool>(result);
440  }
template<typename PROD >
bool art::ProductRetriever::getByLabel ( InputTag const &  tag,
Handle< PROD > &  result 
) const
inherited

Definition at line 454 of file ProductRetriever.h.

455  {
456  result = getHandle<PROD>(tag);
457  return static_cast<bool>(result);
458  }
template<typename PROD >
Handle< PROD > art::ProductRetriever::getHandle ( SelectorBase const &  sel) const
inherited
template<typename PROD >
Handle< PROD > art::ProductRetriever::getHandle ( ProductID const  pid) const
inherited

Definition at line 244 of file ProductRetriever.h.

245  {
246  auto qr = getByProductID_(pid);
247  return Handle<PROD>{qr};
248  }
GroupQueryResult getByProductID_(ProductID productID) const
template<typename PROD >
Handle< PROD > art::ProductRetriever::getHandle ( InputTag const &  tag) const
inherited

Definition at line 252 of file ProductRetriever.h.

253  {
254  auto qr = getByLabel_(WrappedTypeID::make<PROD>(), tag);
255  return Handle<PROD>{qr};
256  }
GroupQueryResult getByLabel_(WrappedTypeID const &wrapped, InputTag const &tag) const
template<typename PROD >
Handle< PROD > art::ProductRetriever::getHandle ( ProductToken< PROD > const &  token) const
inherited

Definition at line 260 of file ProductRetriever.h.

References art::ProductToken< T >::inputTag().

261  {
262  return getHandle<PROD>(token.inputTag());
263  }
template<typename PROD >
std::vector< InputTag > art::ProductRetriever::getInputTags ( SelectorBase const &  selector = MatchAllSelector{}) const
inherited

Definition at line 283 of file ProductRetriever.h.

284  {
285  return getInputTags_(WrappedTypeID::make<PROD>(), selector);
286  }
std::vector< InputTag > getInputTags_(WrappedTypeID const &wrapped, SelectorBase const &selector) const
template<typename PROD >
std::vector< Handle< PROD > > art::ProductRetriever::getMany ( SelectorBase const &  selector = MatchAllSelector{}) const
inherited

Definition at line 303 of file ProductRetriever.h.

Referenced by opdet::PhotonInf::analyze(), opdet::SimPhotonCounter::analyze(), nnet::RawWaveformDump::analyze(), nnet::RawWaveformClnSigDump::analyze(), artg4tk::dataFromRunOrService(), evd::RecoBaseDrawer::DrawShower3D(), evd::RecoBaseDrawer::DrawShowerOrtho(), evd::RecoBaseDrawer::DrawTrack3D(), evd::RecoBaseDrawer::DrawTrackOrtho(), simfilter::FilterCryostatNus::filter(), simfilter::FilterGenInTime::filter(), artg4tk::PrimaryEventActionService::generatePrimaries(), evdb_tool::DrawLArVoxel3D::GetMCTruth(), evd::SimulationDrawer::GetMCTruth(), evwgh::PPFXThinNeutronPionWeightCalc::GetWeight(), evwgh::PPFXTotAbsorpWeightCalc::GetWeight(), evwgh::PPFXWeightCalc::GetWeight(), evwgh::PPFXMIPPPionWeightCalc::GetWeight(), evwgh::PPFXOtherWeightCalc::GetWeight(), evwgh::PPFXTargAttenWeightCalc::GetWeight(), evwgh::PPFXThinKaonWeightCalc::GetWeight(), evwgh::PPFXThinMesonWeightCalc::GetWeight(), evwgh::PPFXThinNucAWeightCalc::GetWeight(), evwgh::PPFXMIPPKaonWeightCalc::GetWeight(), evwgh::PPFXThinNucWeightCalc::GetWeight(), evwgh::PPFXThinPionWeightCalc::GetWeight(), evwgh::PPFXCVWeightCalc::GetWeight(), larg4::IonAndScint::inputCollections(), larg4::larg4Main::inputCollections(), evgb::MCTruthAndFriendsItr::MCTruthAndFriendsItr(), geo::AuxDetGeometry::preBeginRun(), sim::GenericCRT::produce(), sim::PhotonHitConverter::produce(), larg4::LArG4::produce(), geo::GeometryConfigurationWriter::readRunData(), and evdb::ScanFrame::Record().

304  {
305  auto const qrs = getMany_(WrappedTypeID::make<PROD>(), sel);
306  std::vector<Handle<PROD>> products;
307  products.reserve(qrs.size());
308  cet::transform_all(qrs, back_inserter(products), [](auto const& qr) {
309  return Handle<PROD>{qr};
310  });
311  return products;
312  }
std::vector< GroupQueryResult > getMany_(WrappedTypeID const &wrapped, SelectorBase const &sel) const
std::optional< fhicl::ParameterSet const > art::ProductRetriever::getProcessParameterSet ( std::string const &  process) const
inherited

Definition at line 53 of file ProductRetriever.cc.

References fhicl::ParameterSetRegistry::get(), art::ProcessHistory::getConfigurationForProcess(), art::ProductRetriever::mutex_, art::ProductRetriever::principal_, and art::Principal::processHistory().

54  {
55  std::lock_guard lock{mutex_};
56  auto const config =
58  if (!config) {
59  return std::nullopt;
60  }
61 
62  if (fhicl::ParameterSet ps;
63  fhicl::ParameterSetRegistry::get(config->parameterSetID(), ps)) {
64  return std::make_optional(std::move(ps));
65  }
66  return std::nullopt;
67  }
static collection_type const & get() noexcept
Principal const & principal_
std::recursive_mutex mutex_
ProcessHistory const & processHistory() const
Definition: Principal.cc:247
std::optional< ProcessConfiguration > getConfigurationForProcess(std::string const &name) const
template<typename PROD >
PROD const & art::ProductRetriever::getProduct ( InputTag const &  tag) const
inherited
template<typename PROD >
PROD const & art::ProductRetriever::getProduct ( ProductToken< PROD > const &  token) const
inherited

Definition at line 228 of file ProductRetriever.h.

229  {
230  return *getValidHandle(token);
231  }
ValidHandle< PROD > getValidHandle(InputTag const &tag) const
cet::exempt_ptr< BranchDescription const > art::ProductRetriever::getProductDescription ( ProductID  pid) const
inherited

Definition at line 95 of file ProductRetriever.cc.

References art::Principal::getProductDescription(), and art::ProductRetriever::principal_.

96  {
98  }
Principal const & principal_
cet::exempt_ptr< BranchDescription const > getProductDescription(ProductID const pid, bool const alwaysEnableLookupOfProducedProducts=false) const
Definition: Principal.cc:779
template<typename PROD >
ProductID art::ProductRetriever::getProductID ( std::string const &  instance_name = "") const
inherited
std::optional< Provenance const > art::ProductRetriever::getProductProvenance ( ProductID  pid) const
inherited

Definition at line 78 of file ProductRetriever.cc.

References art::Principal::getByProductID(), art::ProductRetriever::principal_, and art::GroupQueryResult::result().

79  {
80  auto gqr = principal_.getByProductID(pid);
81  if (gqr.failed()) {
82  return std::nullopt;
83  }
84 
85  auto group = gqr.result();
86  if (!group->productProvenance()) {
87  // This can happen if someone tries to access the provenance
88  // before the product has been produced.
89  return std::nullopt;
90  }
91  return std::make_optional<Provenance const>(group);
92  }
Principal const & principal_
cet::exempt_ptr< Group > result() const
GroupQueryResult getByProductID(ProductID const pid) const
Definition: Principal.cc:839
template<typename PROD >
std::vector< ProductToken< PROD > > art::ProductRetriever::getProductTokens ( SelectorBase const &  selector = MatchAllSelector{}) const
inherited

Definition at line 290 of file ProductRetriever.h.

291  {
292  auto const tags = getInputTags<PROD>(selector);
293  std::vector<ProductToken<PROD>> tokens;
294  tokens.reserve(tags.size());
295  cet::transform_all(tags, back_inserter(tokens), [](auto const& tag) {
296  return ProductToken<PROD>{tag};
297  });
298  return tokens;
299  }
Run const & art::Event::getRun ( ) const

Definition at line 83 of file Event.cc.

References art::SubRun::getRun(), and getSubRun().

84  {
85  return getSubRun().getRun();
86  }
Run const & getRun() const
Definition: SubRun.cc:61
SubRun const & getSubRun() const
Definition: Event.cc:77
SubRun const & art::Event::getSubRun ( ) const

Definition at line 77 of file Event.cc.

References subRun_.

Referenced by getRun().

78  {
79  return subRun_;
80  }
SubRun const subRun_
Definition: Event.h:97
template<typename PROD >
ValidHandle< PROD > art::ProductRetriever::getValidHandle ( InputTag const &  tag) const
inherited

Definition at line 268 of file ProductRetriever.h.

References art::ValidHandle< T >::product().

Referenced by quad::EvalVtx::analyze(), hit::MCHitAnaExample::analyze(), detsim::SimDriftedElectronClusterAna::analyze(), larg::LArSimChannelAna::analyze(), vertex::FeatureVertexFinderAna::analyze(), ShowerQuality::analyze(), recob::DumpVertices::analyze(), hit::HitAnaModule::analyze(), nnet::WaveformDenoiseTest::analyze(), nnet::NoiseWaveformDump::analyze(), nnet::EvaluateROIEff::analyze(), sim::DumpMCTruth::analyze(), recob::DumpPCAxes::analyze(), recob::DumpSeeds::analyze(), recob::DumpSpacePoints::analyze(), sim::DumpGTruth::analyze(), hit::DumpHits::analyze(), recob::DumpClusters::analyze(), nnet::RawWaveformDump::analyze(), nnet::PointIdEffTest::analyze(), detsim::DumpRawDigits::analyze(), caldata::DumpWires::analyze(), nnet::RawWaveformClnSigDump::analyze(), recob::DumpPFParticles::analyze(), recob::DumpTracks::analyze(), ShowerRecoTools::ShowerExampleTool::CalculateElement(), ShowerRecoTools::ShowerLengthPercentile::CalculateElement(), ShowerRecoTools::ShowerTrackTrajToSpacePoint::CalculateElement(), ShowerRecoTools::ShowerTrackHitDirection::CalculateElement(), ShowerRecoTools::ShowerStartPositionCheater::CalculateElement(), ShowerRecoTools::ShowerTrackFinderCheater::CalculateElement(), ShowerRecoTools::Shower3DCylinderTrackHitFinder::CalculateElement(), ShowerRecoTools::ShowerPCAPropergationStartPosition::CalculateElement(), ShowerRecoTools::ShowerPFPVertexStartPosition::CalculateElement(), ShowerRecoTools::Shower2DLinearRegressionTrackHitFinder::CalculateElement(), ShowerRecoTools::ShowerLinearEnergy::CalculateElement(), ShowerRecoTools::ShowerDirectionCheater::CalculateElement(), ShowerRecoTools::ShowerTrackPCADirection::CalculateElement(), ShowerRecoTools::ShowerNumElectronsEnergy::CalculateElement(), ShowerRecoTools::ShowerPCADirection::CalculateElement(), ShowerRecoTools::ShowerIncrementalTrackHitFinder::CalculateElement(), ShowerRecoTools::ShowerTrajPointdEdx::CalculateElement(), shower::LArPandoraShowerCheatingAlg::CheatDebugEVD(), nnet::EmTrack< N >::classify_hits(), t0::IndirectHitParticleAssns::CreateHitParticleAssociations(), t0::DirectHitParticleAssns::CreateHitParticleAssociations(), shower::LArPandoraShowerAlg::DebugEVD(), simfilter::FilterNoMCParticles::filter(), simfilter::FilterSimPhotonTime::filter(), cluster::SmallClusterFilter::filter(), simfilter::FilterSimPhotonLiteTime::filter(), anab::FVectorReader< T, N >::FVectorReader(), quad::GetFirstVertex(), trkmkr::KalmanFilterFitTrackMaker::initEvent(), nnet::EmTrack< N >::make_clusters(), nnet::EmTrack< N >::make_tracks(), MCReco::MakeMCEdep(), lar_cluster3d::StandardHit3DBuilder::makeRawDigitAssns(), lar_cluster3d::SnippetHit3DBuilder::makeRawDigitAssns(), lar_cluster3d::StandardHit3DBuilder::makeWireAssns(), lar_cluster3d::SnippetHit3DBuilder::makeWireAssns(), MCReco::produce(), hit::HitFinder::produce(), trkf::TCTrack::produce(), reco::shower::LArPandoraModularShowerCreation::produce(), cluster::LineCluster::produce(), opdet::OpFlashFinder::produce(), cluster::ClusterCrawler::produce(), hit::HitCheater::produce(), spacecharge::ShiftEdepSCE::produce(), opdet::OpMCDigi::produce(), evwgh::EventWeight::produce(), NuSliceHitsProducer::produce(), cluster::HoughLineFinder::produce(), cluster::DBCluster3D::produce(), TrackProducerFromTrack::produce(), TrackProducerFromTrackTrajectory::produce(), calo::ShowerCalorimetry::produce(), cluster::TrajCluster::produce(), TrackProducerFromPFParticle::produce(), trkf::VertexFitter::produce(), nnet::EmTrack< N >::produce(), nnet::ParticleDecayId::produce(), t0::MCTruthT0Matching::produce(), nnet::EmTrackClusterId2out::produce(), nnet::EmTrackClusterId::produce(), nnet::EmTrackMichelId::produce(), trkf::KalmanFilterTrajectoryFitter::produce(), trkf::PMAlgTrackMaker::produce(), sim::MergeSimSources::produce(), phot::PhotonLibraryPropagation::produce(), and trkf::KalmanFilterFinalTrackFitter::produce().

269  {
270  auto h = getHandle<PROD>(tag);
271  return ValidHandle{h.product(), h.productGetter(), *h.provenance()};
272  }
template<typename PROD >
ValidHandle< PROD > art::ProductRetriever::getValidHandle ( ProductToken< PROD > const &  token) const
inherited

Definition at line 276 of file ProductRetriever.h.

References art::ProductToken< T >::inputTag().

277  {
278  return getValidHandle<PROD>(token.inputTag());
279  }
template<typename ELEMENT >
std::size_t art::ProductRetriever::getView ( std::string const &  moduleLabel,
std::string const &  productInstanceName,
std::string const &  processName,
std::vector< ELEMENT const * > &  result 
) const
inherited

Definition at line 316 of file ProductRetriever.h.

Referenced by larg4::LArG4Ana::analyze(), pmtana::PMTAna::analyze(), opdet::SimPhotonCounter::analyze(), evd::RecoBaseDrawer::CountHits(), cluster::ClusterMatchAlg::FillMCInfo(), filter::ADCFilter::filter(), evd::RecoBaseDrawer::GetHits(), sim::SimListUtils::GetLArVoxelList(), evd::SimulationDrawer::GetParticle(), evd::RecoBaseDrawer::GetShowers(), evd::RecoBaseDrawer::GetTracks(), opdet::OpticalRawDigitReformatter::produce(), event::EventCheater::produce(), hit::HitCheater::produce(), detsim::SimWire::produce(), and opdet::OpHitFinder::produce().

320  {
321  std::lock_guard lock{mutex_};
322  std::size_t const orig_size = result.size();
323  auto grp = getContainerForView_(TypeID{typeid(ELEMENT)},
324  moduleLabel,
325  productInstanceName,
326  ProcessTag{processName, md_.processName()});
327  if (recordParents_) {
328  recordAsParent_(grp);
329  }
330  auto const view = grp->uniqueProduct()->getView();
331  std::vector<ELEMENT const*> castedView;
332  for (auto p : view) {
333  castedView.push_back(static_cast<ELEMENT const*>(p));
334  }
335  result = std::move(castedView);
336  return result.size() - orig_size;
337  }
void recordAsParent_(cet::exempt_ptr< Group const > grp) const
std::string const & processName() const
ModuleDescription const & md_
std::recursive_mutex mutex_
cet::exempt_ptr< Group const > getContainerForView_(TypeID const &, std::string const &moduleLabel, std::string const &productInstanceName, ProcessTag const &processTag) const
template<typename ELEMENT >
std::size_t art::ProductRetriever::getView ( std::string const &  moduleLabel,
std::string const &  productInstanceName,
std::vector< ELEMENT const * > &  result 
) const
inherited

Definition at line 341 of file ProductRetriever.h.

344  {
345  return getView(moduleLabel, productInstanceName, {}, result);
346  }
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
template<typename ELEMENT >
std::size_t art::ProductRetriever::getView ( InputTag const &  tag,
std::vector< ELEMENT const * > &  result 
) const
inherited

Definition at line 350 of file ProductRetriever.h.

References art::InputTag::instance(), art::InputTag::label(), and art::InputTag::process().

352  {
353  return getView(tag.label(), tag.instance(), tag.process(), result);
354  }
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
template<typename ELEMENT >
std::size_t art::ProductRetriever::getView ( ViewToken< ELEMENT > const &  token,
std::vector< ELEMENT const * > &  result 
) const
inherited

Definition at line 358 of file ProductRetriever.h.

References art::ViewToken< Element >::inputTag().

360  {
361  return getView(token.inputTag(), result);
362  }
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
template<typename ELEMENT >
bool art::ProductRetriever::getView ( std::string const &  moduleLabel,
std::string const &  productInstanceName,
std::string const &  processName,
View< ELEMENT > &  result 
) const
inherited

Definition at line 366 of file ProductRetriever.h.

370  {
371  std::lock_guard lock{mutex_};
372  auto grp = getContainerForView_(TypeID{typeid(ELEMENT)},
373  moduleLabel,
374  productInstanceName,
375  ProcessTag{processName, md_.processName()});
376  if (recordParents_) {
377  recordAsParent_(grp);
378  }
379  auto const view = grp->uniqueProduct()->getView();
380  std::vector<ELEMENT const*> castedView;
381  for (auto p : view) {
382  castedView.push_back(static_cast<ELEMENT const*>(p));
383  }
384  result =
385  View{std::move(castedView), grp->productID(), grp->uniqueProduct()};
386  return true;
387  }
void recordAsParent_(cet::exempt_ptr< Group const > grp) const
std::string const & processName() const
ModuleDescription const & md_
std::recursive_mutex mutex_
cet::exempt_ptr< Group const > getContainerForView_(TypeID const &, std::string const &moduleLabel, std::string const &productInstanceName, ProcessTag const &processTag) const
template<typename ELEMENT >
bool art::ProductRetriever::getView ( std::string const &  moduleLabel,
std::string const &  productInstanceName,
View< ELEMENT > &  result 
) const
inherited

Definition at line 391 of file ProductRetriever.h.

394  {
395  return getView(moduleLabel, productInstanceName, {}, result);
396  }
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
template<typename ELEMENT >
bool art::ProductRetriever::getView ( InputTag const &  tag,
View< ELEMENT > &  result 
) const
inherited

Definition at line 400 of file ProductRetriever.h.

References art::InputTag::instance(), art::InputTag::label(), and art::InputTag::process().

401  {
402  return getView(tag.label(), tag.instance(), tag.process(), result);
403  }
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
template<typename ELEMENT >
bool art::ProductRetriever::getView ( ViewToken< ELEMENT > const &  token,
View< ELEMENT > &  result 
) const
inherited

Definition at line 407 of file ProductRetriever.h.

References art::ViewToken< Element >::inputTag().

409  {
410  return getView(token.inputTag(), result);
411  }
std::size_t getView(std::string const &moduleLabel, std::string const &productInstanceName, std::string const &processName, std::vector< ELEMENT const * > &result) const
EventID art::Event::id ( ) const

Definition at line 23 of file Event.cc.

References art::EventPrincipal::eventID(), and eventPrincipal_.

Referenced by opdet::OpDigiAna::analyze(), lar_pandora::PFParticleTrackAna::analyze(), opdet::OpFlashMCTruthAna::analyze(), lar_pandora::PFParticleCosmicAna::analyze(), opdet::OpHitAna::analyze(), shower::TCShowerAnalysis::analyze(), lar_pandora::PFParticleAnalysis::analyze(), opdet::OpFlashAna::analyze(), lar_pandora::PFParticleMonitoring::analyze(), lar_pandora::PFParticleHitDumper::analyze(), larg4::LArG4Ana::analyze(), cluster::HoughLineFinderAna::analyze(), vertex::FeatureVertexFinderAna::analyze(), opdet::FlashHypothesisAna::analyze(), opdet::PhotonInf::analyze(), pfpf::PFPAna::analyze(), pdsp::CheckCNNScore::analyze(), cluster::ClusterAna::analyze(), recob::DumpVertices::analyze(), opreco::OpticalRecoAna::analyze(), hit::GausHitFinderAna::analyze(), hit::HitAnaModule::analyze(), cluster::DBclusterAna::analyze(), hit::HitFinderAna::analyze(), cheat::RecoCheckAna::analyze(), nnet::WaveformDenoiseTest::analyze(), nnet::NoiseWaveformDump::analyze(), NuShowerEff::analyze(), opdet::SimPhotonCounter::analyze(), recob::DumpSeeds::analyze(), nnet::RawWaveformDump::analyze(), nnet::PointIdEffTest::analyze(), detsim::DumpRawDigits::analyze(), caldata::DumpWires::analyze(), nnet::RawWaveformClnSigDump::analyze(), nnet::PointIdTrainingData::analyze(), recob::DumpPFParticles::analyze(), ems::MultiEMShowers::analyze(), evd::HitSelector::ChangeHit(), evd::GraphClusterAlg::CheckValidity(), t0::IndirectHitParticleAssns::CreateHitParticleAssociations(), event(), util::EventChangeTracker_t::EventChangeTracker_t(), filter::EventFilter::filter(), art::EventIDFilter::filter(), evd::HeaderDrawer::Header(), evdb::DisplayWindow::OpenWindow(), art::TimeTracker::postEventReading(), evdb::EventDisplay::postProcessEvent(), art::Tracer::preEvent(), lar_cluster3d::Cluster3D::PrepareEvent(), evdb::EventDisplay::preProcessEvent(), mvapid::MVAPID::produce(), vertex::PrimaryVertexFinder::produce(), evgen::NDKGen::produce(), artg4tk::artg4tkMain::produce(), larg4::larg4Main::produce(), trkf::Track3DKalman::produce(), shwf::ShowerReco::produce(), nnet::EmTrack< N >::produce(), nnet::ParticleDecayId::produce(), trkf::Track3DKalmanSPS::produce(), nnet::EmTrackClusterId2out::produce(), nnet::EmTrackClusterId::produce(), nnet::EmTrackMichelId::produce(), lar_cluster3d::Cluster3D::produce(), larg4::LArG4::produce(), evd::InfoTransfer::Rebuild(), evdb::ScanFrame::Record(), art::MemoryTracker::recordEventData(), run(), evd::HitSelector::SaveHits(), dnn::SavePiMu::saveImage(), evd::HitSelector::SaveSeedLines(), rndm::NuRandomServiceHelper::ArtState::set_event(), and subRun().

24  {
25  return eventPrincipal_.eventID();
26  }
EventPrincipal const & eventPrincipal_
Definition: Event.h:96
EventID const & eventID() const
bool art::Event::isRealData ( ) const

Definition at line 53 of file Event.cc.

References eventPrincipal_, and art::EventPrincipal::isReal().

Referenced by lar_pandora::PFParticleMonitoring::analyze(), larg::LArSimChannelAna::analyze(), hit::MagDriftAna::analyze(), opreco::OpticalRecoAna::analyze(), cluster::DBclusterAna::analyze(), hit::HitFinderAna::analyze(), cheat::RecoCheckAna::analyze(), trkf::SpacePointAna::analyze(), DUNE::MuonTrackingEff::analyze(), DUNE::NeutrinoTrackingEff::analyze(), trkf::SeedAna::analyze(), trkf::TrackAna::analyze(), trkf::TrackAna::anaStitch(), lar_pandora::LArPandora::CreatePandoraInput(), evdb_tool::DrawLArVoxel3D::GetMCTruth(), evd::SimulationDrawer::GetMCTruth(), evd::SimulationDrawer::GetParticle(), evd::SimulationDrawer::MCTruth3D(), evd::SimulationDrawer::MCTruthLongText(), evd::SimulationDrawer::MCTruthOrtho(), evd::SimulationDrawer::MCTruthShortText(), evd::SimulationDrawer::MCTruthVectors2D(), caldata::CalWire::produce(), caldata::CalWireT962::produce(), t0::MCParticleHitMatching::produce(), t0::MCParticleShowerMatching::produce(), t0::MCParticleTrackMatching::produce(), trkf::Track3DKalman::produce(), t0::MCTruthT0Matching::produce(), trkf::Track3DKalmanSPS::produce(), cheat::PhotonBackTracker::Rebuild(), rndm::NuRandomServiceHelper::ArtState::set_event(), and nnet::TrainingDataAlg::setEventData().

54  {
55  return eventPrincipal_.isReal();
56  }
bool isReal() const
EventPrincipal const & eventPrincipal_
Definition: Event.h:96
Event& art::Event::operator= ( Event const &  )
delete
Event& art::Event::operator= ( Event &&  )
delete
ProcessHistory const & art::Event::processHistory ( ) const

Definition at line 71 of file Event.cc.

References eventPrincipal_, and art::Principal::processHistory().

Referenced by art::TriggerNamesService::pathResults().

72  {
74  }
EventPrincipal const & eventPrincipal_
Definition: Event.h:96
ProcessHistory const & processHistory() const
Definition: Principal.cc:247
ProcessHistoryID const & art::Event::processHistoryID ( ) const

Definition at line 65 of file Event.cc.

References eventPrincipal_, and art::Principal::processHistoryID().

66  {
68  }
EventPrincipal const & eventPrincipal_
Definition: Event.h:96
ProcessHistoryID const & processHistoryID() const
Definition: Principal.h:148
template<typename PROD >
PutHandle<PROD> art::Event::put ( std::unique_ptr< PROD > &&  edp,
std::string const &  instance = {} 
)
inline

Definition at line 77 of file Event.h.

References commitProducts(), inserter_, and instance.

Referenced by larg4::LArG4DetectorService::doFillEventWithArtHits(), simfilter::FilterGenInTime::filter(), lar_cluster3d::StandardHit3DBuilder::Hit3DBuilder(), lar_cluster3d::SnippetHit3DBuilder::Hit3DBuilder(), nnet::EmTrack< N >::make_clusters(), art::MixOp< Prod, OProd >::mixAndPut(), reco::shower::ShowerUniqueProductPtr< std::vector< T > >::MoveToEvent(), reco::shower::ShowerUniqueAssnPtr< T >::MoveToEvent(), lar_cluster3d::Cluster3D::ArtOutputHandler::outputObjects(), art::TriggerResultInserter::produce(), art::RandomNumberSaver::produce(), opdet::OpticalRawDigitReformatter::produce(), mvapid::MVAPID::produce(), trkf::SeedFinderModule::produce(), pid::Chi2ParticleID::produce(), lar_pandora::LArPandoraShowerCreation::produce(), lar_pandora::LArPandoraTrackCreation::produce(), cosmic::TrackPFParticleMatch::produce(), MCReco::produce(), vertex::VertexCheater::produce(), hit::MCHitFinder::produce(), lcvn::LArCVNEvaluator::produce(), trkf::TCTrack::produce(), trk::TrackContainmentTagger::produce(), cosmic::CosmicClusterTagger::produce(), event::EventCheater::produce(), shwf::ShowerCheater::produce(), cosmic::CosmicTrackTagger::produce(), trkf::FeatureTracker::produce(), lcvn::ICVNMapper< T, U >::produce(), trkf::SpacePointCheater::produce(), trkf::SpacePointFinder::produce(), tss::TrackShowerHits::produce(), evgen::CosmicsGen::produce(), opdet::OptDetDigitizer::produce(), sppt::TTSpacePointFinder::produce(), trkf::TrackCheater::produce(), cluster::LineCluster::produce(), cosmic::CosmicPFParticleTagger::produce(), opdet::OpFlashFinder::produce(), cluster::ClusterCheater::produce(), cluster::ClusterCrawler::produce(), shwf::ShowerFinder::produce(), trkf::TrackStitcher::produce(), noisefilteralg::WireCellNoiseFilter::produce(), sim::GenericCRT::produce(), vertex::PrimaryVertexFinder::produce(), cluster::DBcluster::produce(), spacecharge::ShiftEdepSCE::produce(), opdet::OpMCDigi::produce(), evwgh::EventWeight::produce(), sim::PhotonHitConverter::produce(), caldata::CalWire::produce(), cosmic::BeamFlashTrackMatchTagger::produce(), cluster::EndPointModule::produce(), evgen::FileMuons::produce(), caldata::CalWireT962::produce(), cluster::DBCluster3D::produce(), cluster::HoughLineFinder::produce(), evgen::PhotonGen::produce(), cluster::LineMerger::produce(), t0::MCParticleHitMatching::produce(), TrackProducerFromTrack::produce(), evgen::NDKGen::produce(), reco3d::SpacePointSolver::produce(), calo::ShowerCalorimetry::produce(), calo::TrackCalorimetry::produce(), TrackProducerFromTrackTrajectory::produce(), shower::TCShower::produce(), cosmic::CosmicPCAxisTagger::produce(), trkf::SpacePts::produce(), ShowerReco3D::produce(), t0::MCParticleShowerMatching::produce(), t0::MCParticleTrackMatching::produce(), trkf::Track3Dreco::produce(), cluster::BlurredClustering::produce(), nnet::WaveformRoiFinder::produce(), sce::SCECorrection::produce(), cluster::TrajCluster::produce(), trkf::MCSFitProducer::produce(), ems::EMShower3D::produce(), larg4::larg4Main::produce(), trkf::CCTrackMaker::produce(), evgen::NucleonDecay::produce(), shwf::ShowerReco::produce(), trkf::Track3DKalman::produce(), evgen::GaisserParam::produce(), cluster::SmallClusterFinder::produce(), evgen::TestGENIEHelper::produce(), trkf::TrackKalmanCheater::produce(), quad::QuadVtx::produce(), evgen::MarleyGen::produce(), trkf::VertexFitter::produce(), detsim::SimWire::produce(), CRHitRemovalByPCA::produce(), vertex::VertexFinder2D::produce(), evd::GraphCluster::produce(), lbne::PhotonCounterT0Matching::produce(), NuGraphInference::produce(), trkf::Track3DKalmanHit::produce(), vertex::FeatureVertexFinder::produce(), shower::EMShower::produce(), nnet::ParticleDecayId::produce(), evgen::NeutronOsc::produce(), evgen::TextFileGen::produce(), trkf::PMAlgTrajFitter::produce(), calo::Calorimetry::produce(), t0::MCTruthT0Matching::produce(), evgen::GENIEGen::produce(), trkf::Track3DKalmanSPS::produce(), nnet::EmTrackClusterId2out::produce(), nnet::EmTrackClusterId::produce(), nnet::EmTrackMichelId::produce(), trkf::KalmanFilterTrajectoryFitter::produce(), trkf::PMAlgTrackMaker::produce(), sim::MergeSimSources::produce(), calo::GnocchiCalorimetry::produce(), evgen::LightSource::produce(), phot::PhotonLibraryPropagation::produce(), trkf::KalmanFilterFinalTrackFitter::produce(), opdet::OpHitFinder::produce(), evgen::larg4SingleGen::produce(), evgen::SingleGen::produce(), evgen::MUSUN::produce(), evgen::RadioGen::produce(), trkf::CosmicTracker::produce(), evg::AddGenieEventsToArt::produce(), evgen::MarleyTimeGen::produce(), evgen::CORSIKAGen::produce(), larg4::LArG4::produce(), evgen::SpectrumVolumeGen::produce_radio(), evgen::Decay0Gen::produce_radio(), lar_pandora::LArPandoraOutput::ProduceArtOutput(), recob::ChargedSpacePointCollectionCreator::put(), and anab::FVectorWriter< N >::saveOutputs().

77  {})
78  {
79  assert(inserter_);
80  return inserter_->put(std::move(edp), instance);
81  }
const std::string instance
std::optional< ProductInserter > inserter_
Definition: Event.h:95
std::vector< ProductID > art::ProductRetriever::retrievedPIDs ( ) const
inherited

Definition at line 70 of file ProductRetriever.cc.

References util::begin(), util::end(), art::ProductRetriever::mutex_, and art::ProductRetriever::retrievedProducts_.

Referenced by commitProducts().

71  {
72  std::lock_guard lock{mutex_};
73  return std::vector<ProductID>(begin(retrievedProducts_),
75  }
std::set< ProductID > retrievedProducts_
decltype(auto) constexpr end(T &&obj)
ADL-aware version of std::end.
Definition: StdUtils.h:77
std::recursive_mutex mutex_
decltype(auto) constexpr begin(T &&obj)
ADL-aware version of std::begin.
Definition: StdUtils.h:69
RunNumber_t art::Event::run ( ) const

Definition at line 29 of file Event.cc.

References id(), and art::EventID::run().

Referenced by opdet::FIFOHistogramAna::analyze(), lar_pandora::PFParticleTrackAna::analyze(), calo::PrintCalorimetry::analyze(), detsim::SimDriftedElectronClusterAna::analyze(), lar_pandora::PFParticleCosmicAna::analyze(), shower::TCShowerAnalysis::analyze(), trk::TrackContainmentAnalyzer::analyze(), pid::PIDAAnalyzer::analyze(), lar_pandora::PFParticleAnalysis::analyze(), lar_pandora::PFParticleMonitoring::analyze(), lar_pandora::PFParticleHitDumper::analyze(), larg4::LArG4Ana::analyze(), larg4::ISCalcAna::analyze(), microboone::CosmicRemovalAna::analyze(), vertex::FeatureVertexFinderAna::analyze(), opdet::FlashHypothesisAna::analyze(), pdsp::CheckCNNScore::analyze(), opdet::LEDCalibrationAna::analyze(), hit::GausHitFinderAna::analyze(), hit::HitAnaModule::analyze(), cluster::DBclusterAna::analyze(), hit::HitFinderAna::analyze(), cheat::RecoCheckAna::analyze(), cluster::ClusterTrackAna::analyze(), lcvn::LArNuCVNZlibMaker::analyze(), NuShowerEff::analyze(), opdet::SimPhotonCounter::analyze(), nnet::PointIdEffTest::analyze(), trkf::TrackAna::analyze(), shower::LArPandoraShowerCheatingAlg::CheatDebugEVD(), t0::IndirectHitParticleAssns::CreateHitParticleAssociations(), shower::LArPandoraShowerAlg::DebugEVD(), noisefilteralg::WireCellNoiseFilter::DoNoiseFilter(), filter::EventFilter::filter(), evd::HeaderDrawer::Header(), lar_cluster3d::Cluster3D::PrepareEvent(), lar_pandora::LArPandoraEventDump::PrintEventMetadata(), trk::TrackContainmentTagger::produce(), cluster::BlurredClustering::produce(), cluster::TrajCluster::produce(), evgen::MarleyGen::produce(), nnet::EmTrack< N >::produce(), trkf::Track3DKalmanSPS::produce(), nnet::EmTrackClusterId2out::produce(), nnet::EmTrackClusterId::produce(), nnet::EmTrackMichelId::produce(), lar_cluster3d::Cluster3D::produce(), evgen::MarleyTimeGen::produce(), evdb::ScanFrame::Record(), and dnn::SavePiMu::saveImage().

30  {
31  return id().run();
32  }
RunNumber_t run() const
Definition: EventID.h:98
EventID id() const
Definition: Event.cc:23

Friends And Related Function Documentation

friend class detail::Analyzer
friend

Definition at line 90 of file Event.h.

friend class detail::Filter
friend

Definition at line 91 of file Event.h.

friend class detail::Producer
friend

Definition at line 92 of file Event.h.

friend class ProducingService
friend

Definition at line 93 of file Event.h.

Member Data Documentation

EventPrincipal const& art::Event::eventPrincipal_
private

Definition at line 96 of file Event.h.

Referenced by Event(), experimentType(), id(), isRealData(), processHistory(), processHistoryID(), and time().

std::optional<ProductInserter> art::Event::inserter_
private

Definition at line 95 of file Event.h.

Referenced by commitProducts(), Event(), and put().

SubRun const art::Event::subRun_
private

Definition at line 97 of file Event.h.

Referenced by Event(), and getSubRun().


The documentation for this class was generated from the following files: