#include <EventPrincipal.h>
Public Types | |
typedef EventAuxiliary | Auxiliary |
typedef Principal | Base |
typedef Base::ConstProductPtr | ConstProductPtr |
Public Types inherited from edm::Principal | |
typedef std::vector< BasicHandle > | BasicHandleVec |
typedef boost::filter_iterator < FilledProductPtr, ProductHolderCollection::const_iterator > | const_iterator |
typedef ProductHolderBase const * | ConstProductPtr |
typedef std::string | ProcessName |
typedef ProcessHistory::const_iterator | ProcessNameConstIterator |
typedef std::vector < boost::shared_ptr < ProductHolderBase > > | ProductHolderCollection |
typedef boost::shared_ptr < ProductHolderBase > | SharedProductPtr |
typedef ProductHolderCollection::size_type | size_type |
Static Public Attributes | |
static int const | invalidBunchXing = EventAuxiliary::invalidBunchXing |
static int const | invalidStoreNumber = EventAuxiliary::invalidStoreNumber |
Private Member Functions | |
BranchID | pidToBid (ProductID const &pid) const |
virtual void | resolveProduct_ (ProductHolderBase const &phb, bool fillOnDemand) const override |
virtual bool | unscheduledFill (std::string const &moduleLabel) const override |
Private Attributes | |
EventAuxiliary | aux_ |
boost::shared_ptr < BranchIDListHelper const > | branchIDListHelper_ |
boost::shared_ptr < BranchListIndexes > | branchListIndexes_ |
std::map< BranchListIndex, ProcessIndex > | branchListIndexToProcessIndex_ |
boost::shared_ptr< BranchMapper > | branchMapperPtr_ |
boost::shared_ptr < EventSelectionIDVector > | eventSelectionIDs_ |
boost::shared_ptr < LuminosityBlockPrincipal > | luminosityBlockPrincipal_ |
std::vector< std::string > | moduleLabelsRunning_ |
boost::shared_ptr < UnscheduledHandler > | unscheduledHandler_ |
Additional Inherited Members | |
Static Public Member Functions inherited from edm::EDProductGetter | |
static void | assignEDProductGetter (EDProductGetter const *&) |
static EDProductGetter const * | switchProductGetter (EDProductGetter const *) |
These can only be used internally by the framework. More... | |
Protected Member Functions inherited from edm::Principal | |
void | addProduct_ (std::auto_ptr< ProductHolderBase > phb) |
void | addProductOrThrow (std::auto_ptr< ProductHolderBase > phb) |
void | checkUniquenessAndType (WrapperOwningHolder const &prod, ProductHolderBase const *productHolder) const |
ProductHolderBase * | getExistingProduct (BranchID const &branchID) |
ProductHolderBase * | getExistingProduct (ProductHolderBase const &phb) |
void | putOrMerge (WrapperOwningHolder const &prod, ProductHolderBase const *productHolder) const |
void | putOrMerge (WrapperOwningHolder const &prod, ProductProvenance &prov, ProductHolderBase *productHolder) |
Definition at line 40 of file EventPrincipal.h.
Definition at line 42 of file EventPrincipal.h.
typedef Principal edm::EventPrincipal::Base |
Definition at line 43 of file EventPrincipal.h.
Definition at line 45 of file EventPrincipal.h.
edm::EventPrincipal::EventPrincipal | ( | boost::shared_ptr< ProductRegistry const > | reg, |
boost::shared_ptr< BranchIDListHelper const > | branchIDListHelper, | ||
ProcessConfiguration const & | pc, | ||
HistoryAppender * | historyAppender | ||
) |
Definition at line 21 of file EventPrincipal.cc.
|
inline |
Definition at line 53 of file EventPrincipal.h.
|
inline |
Definition at line 101 of file EventPrincipal.h.
References aux_.
Referenced by bunchCrossing(), ExperimentType(), fillEventPrincipal(), id(), isReal(), edm::isSameEvent(), edm::StreamSerializer::serializeEvent(), storeNumber(), time(), edm::SubProcess::write(), and edm::RootOutputFile::writeOne().
Definition at line 170 of file EventPrincipal.cc.
References branchIDListHelper_, branchListIndexToProcessIndex_, edm::hlt::Exception, i, edm::BranchID::isValid(), and edm::errors::NotFound.
Referenced by fillEventPrincipal(), and edm::Event::makeProductID().
BranchListIndexes const & edm::EventPrincipal::branchListIndexes | ( | ) | const |
Definition at line 257 of file EventPrincipal.cc.
References branchListIndexes_.
Referenced by fillEventPrincipal(), edm::StreamSerializer::serializeEvent(), edm::SubProcess::write(), and edm::RootOutputFile::writeOne().
|
inline |
Definition at line 115 of file EventPrincipal.h.
References branchMapperPtr_.
Referenced by fillEventPrincipal(), edm::RootOutputFile::insertAncestors(), mergeMappers(), put(), putOnRead(), edm::ProvenanceCheckerOutputModule::write(), and edm::SubProcess::write().
|
inline |
Definition at line 93 of file EventPrincipal.h.
References aux(), and edm::EventAuxiliary::bunchCrossing().
void edm::EventPrincipal::clearEventPrincipal | ( | ) |
Definition at line 38 of file EventPrincipal.cc.
References aux_, branchListIndexes_, branchListIndexToProcessIndex_, branchMapperPtr_, edm::Principal::clearPrincipal(), eventSelectionIDs_, luminosityBlockPrincipal_, moduleLabelsRunning_, and unscheduledHandler_.
Referenced by edm::VectorInputSource::clearEventPrincipal(), and edm::EventProcessor::readAndProcessEvent().
EventSelectionIDVector const & edm::EventPrincipal::eventSelectionIDs | ( | ) | const |
Definition at line 252 of file EventPrincipal.cc.
References eventSelectionIDs_.
Referenced by edm::Event::eventSelectionIDs(), fillEventPrincipal(), edm::StreamSerializer::serializeEvent(), edm::SubProcess::write(), and edm::RootOutputFile::writeOne().
|
inline |
Definition at line 89 of file EventPrincipal.h.
References aux(), and edm::EventAuxiliary::experimentType().
void edm::EventPrincipal::fillEventPrincipal | ( | EventAuxiliary const & | aux, |
boost::shared_ptr< EventSelectionIDVector > | eventSelectionIDs = boost::shared_ptr<EventSelectionIDVector>() , |
||
boost::shared_ptr< BranchListIndexes > | branchListIndexes = boost::shared_ptr<BranchListIndexes>() , |
||
boost::shared_ptr< BranchMapper > | mapper = boost::shared_ptr<BranchMapper>(new BranchMapper) , |
||
DelayedReader * | reader = 0 |
||
) |
Definition at line 51 of file EventPrincipal.cc.
References aux(), aux_, branchIDToProductID(), branchListIndexes(), branchListIndexes_, branchListIndexToProcessIndex_, branchMapperPtr(), branchMapperPtr_, eventSelectionIDs(), eventSelectionIDs_, edm::Principal::fillPrincipal(), edm::InEvent, edm::EventAuxiliary::processHistoryID(), edm::Principal::processHistoryID(), parseEventContent::prod, edm::Principal::productRegistry(), and edm::Principal::reader().
Referenced by edm::RawInputSource::makeEvent(), edm::StreamerInputSource::read(), edm::RootFile::readCurrentEvent(), LHESource::readEvent_(), edm::DaqSource::readEvent_(), edm::ProducerSourceBase::readEvent_(), and edm::SubProcess::write().
BasicHandle edm::EventPrincipal::getByProductID | ( | ProductID const & | oid | ) | const |
Definition at line 204 of file EventPrincipal.cc.
References edm::hlt::Exception, edm::Principal::getProductHolder(), pidToBid(), edm::errors::ProductNotFound, and edm::throwProductDeletedException().
Referenced by edm::Event::getByProductID_(), and getIt().
|
virtual |
Reimplemented from edm::Principal.
Definition at line 231 of file EventPrincipal.cc.
References getByProductID(), and edm::BasicHandle::wrapperHolder().
Provenance edm::EventPrincipal::getProvenance | ( | ProductID const & | pid | ) | const |
Definition at line 236 of file EventPrincipal.cc.
References pidToBid().
Referenced by edm::Event::getProvenance(), and edm::RootOutputFile::insertAncestors().
|
inline |
Definition at line 77 of file EventPrincipal.h.
References aux(), and edm::EventAuxiliary::id().
Referenced by edm::DataMixingEMWorker::addEMPileups(), edm::DataMixingEMDigiWorker::addEMPileups(), edm::DataMixingGeneralTrackWorker::addGeneralTrackPileups(), edm::DataMixingHcalWorker::addHcalPileups(), edm::DataMixingHcalDigiWorker::addHcalPileups(), edm::DataMixingHcalDigiWorkerProd::addHcalPileups(), edm::DataMixingMuonWorker::addMuonPileups(), edm::DataMixingPileupCopy::addPileupInfo(), edm::DataMixingSiPixelWorker::addSiPixelPileups(), edm::DataMixingSiStripWorker::addSiStripPileups(), edm::DataMixingSiStripRawWorker::addSiStripPileups(), edm::SecSourceAnalyzer::getBranches(), luminosityBlock(), edm::RecordEventID< T >::operator()(), edm::MixingModule::pileAllWorkers(), edm::DataMixingModule::pileWorker(), edm::OccurrenceTraits< EventPrincipal, BranchActionBegin >::preScheduleSignal(), edm::EventProcessor::readAndProcessEvent(), edm::InputSource::readEvent(), edm::PoolSource::readEvent_(), edm::Schedule::reportSkipped(), run(), edm::StreamerOutputModuleBase::serializeEvent(), edm::StreamSerializer::serializeEvent(), edm::AsciiOutputModule::write(), edm::GetProductCheckerOutputModule::write(), edm::PoolOutputModule::write(), and edm::RootOutputFile::writeOne().
|
inline |
Definition at line 85 of file EventPrincipal.h.
References aux(), and edm::EventAuxiliary::isRealData().
|
inline |
Definition at line 105 of file EventPrincipal.h.
References id(), and edm::EventID::luminosityBlock().
Referenced by Types.EventID::cppID(), Types.LuminosityBlockID::cppID(), edm::EventProcessor::readAndProcessEvent(), edm::PoolSource::readEvent_(), and edm::StreamerOutputModuleBase::serializeEvent().
|
inline |
Definition at line 63 of file EventPrincipal.h.
References luminosityBlockPrincipal_.
Referenced by runPrincipal().
|
inline |
Definition at line 67 of file EventPrincipal.h.
References luminosityBlockPrincipal_.
|
inline |
Definition at line 71 of file EventPrincipal.h.
References luminosityBlockPrincipal_.
Referenced by edm::EventProcessor::readAndProcessEvent().
|
inline |
Definition at line 144 of file EventPrincipal.h.
References branchMapperPtr(), and branchMapperPtr_.
Referenced by edm::PoolSource::readEvent_().
Definition at line 161 of file EventPrincipal.cc.
References branchIDListHelper_, branchListIndexes_, edm::hlt::Exception, edm::ProductID::isValid(), edm::productIDToBranchID(), and edm::errors::ProductNotFound.
Referenced by getByProductID(), and getProvenance().
void edm::EventPrincipal::put | ( | ConstBranchDescription const & | bd, |
WrapperOwningHolder const & | edp, | ||
ProductProvenance const & | productProvenance | ||
) |
Definition at line 100 of file EventPrincipal.cc.
References edm::ConstBranchDescription::branchID(), branchMapperPtr(), edm::Principal::checkUniquenessAndType(), edm::hlt::Exception, edm::Principal::getExistingProduct(), edm::errors::InsertFailure, edm::WrapperHolder::isValid(), and edm::ProductHolderBase::putProduct().
Referenced by edm::Event::commit_aux(), LHESource::readEvent_(), and edm::DaqSource::readEvent_().
void edm::EventPrincipal::putOnRead | ( | ConstBranchDescription const & | bd, |
void const * | product, | ||
ProductProvenance const & | productProvenance | ||
) |
Definition at line 121 of file EventPrincipal.cc.
References edm::ConstBranchDescription::branchID(), branchMapperPtr(), edm::Principal::checkUniquenessAndType(), edm::Principal::getExistingProduct(), edm::ProductData::getInterface(), edm::ConstBranchDescription::produced(), edm::ProductHolderBase::productData(), and edm::ProductHolderBase::putProduct().
Referenced by edm::StreamerInputSource::read().
|
overrideprivatevirtual |
Reimplemented from edm::Principal.
Definition at line 137 of file EventPrincipal.cc.
References edm::ProductHolderBase::branchDescription(), edm::Principal::checkUniquenessAndType(), edm::ProductData::getInterface(), edm::getProduct(), edm::ProductHolderBase::onDemand(), edm::ConstBranchDescription::produced(), edm::ProductHolderBase::product(), edm::ProductHolderBase::productData(), edm::ProductHolderBase::productUnavailable(), edm::ProductHolderBase::putProduct(), edm::Principal::reader(), edm::ProductHolderBase::resolvedModuleLabel(), and unscheduledFill().
|
inline |
Definition at line 109 of file EventPrincipal.h.
References id(), and edm::EventID::run().
Referenced by Types.LuminosityBlockID::cppID(), edm::EventProcessor::readAndProcessEvent(), and edm::PoolSource::readEvent_().
RunPrincipal const & edm::EventPrincipal::runPrincipal | ( | ) | const |
Definition at line 95 of file EventPrincipal.cc.
References luminosityBlockPrincipal(), and edm::LuminosityBlockPrincipal::runPrincipal().
void edm::EventPrincipal::setLuminosityBlockPrincipal | ( | boost::shared_ptr< LuminosityBlockPrincipal > const & | lbp | ) |
Definition at line 90 of file EventPrincipal.cc.
References luminosityBlockPrincipal_.
Referenced by edm::EventProcessor::readAndProcessEvent(), and edm::SubProcess::write().
void edm::EventPrincipal::setUnscheduledHandler | ( | boost::shared_ptr< UnscheduledHandler > | iHandler | ) |
Definition at line 242 of file EventPrincipal.cc.
References unscheduledHandler_.
Referenced by edm::Schedule::setupOnDemandSystem().
|
inline |
Definition at line 97 of file EventPrincipal.h.
References aux(), and edm::EventAuxiliary::storeNumber().
|
inline |
Definition at line 81 of file EventPrincipal.h.
References aux(), and edm::EventAuxiliary::time().
Referenced by edm::OccurrenceTraits< EventPrincipal, BranchActionBegin >::preScheduleSignal(), edm::EventProcessor::readAndProcessEvent(), edm::InputSource::readEvent(), and edm::AsciiOutputModule::write().
|
overrideprivatevirtual |
Implements edm::Principal.
Definition at line 262 of file EventPrincipal.cc.
References edm::hlt::Exception, edm::find_in_all(), i, edm::errors::LogicError, moduleLabelsRunning_, and unscheduledHandler_.
Referenced by resolveProduct_().
boost::shared_ptr< UnscheduledHandler > edm::EventPrincipal::unscheduledHandler | ( | ) | const |
Definition at line 247 of file EventPrincipal.cc.
References unscheduledHandler_.
Referenced by edm::getUnscheduledHandler().
|
private |
Definition at line 160 of file EventPrincipal.h.
Referenced by aux(), clearEventPrincipal(), and fillEventPrincipal().
|
private |
Definition at line 174 of file EventPrincipal.h.
Referenced by branchIDToProductID(), and pidToBid().
|
private |
Definition at line 176 of file EventPrincipal.h.
Referenced by branchListIndexes(), clearEventPrincipal(), fillEventPrincipal(), and pidToBid().
|
private |
Definition at line 178 of file EventPrincipal.h.
Referenced by branchIDToProductID(), clearEventPrincipal(), and fillEventPrincipal().
|
private |
Definition at line 165 of file EventPrincipal.h.
Referenced by branchMapperPtr(), clearEventPrincipal(), fillEventPrincipal(), and mergeMappers().
|
private |
Definition at line 172 of file EventPrincipal.h.
Referenced by clearEventPrincipal(), eventSelectionIDs(), and fillEventPrincipal().
|
static |
Definition at line 46 of file EventPrincipal.h.
|
static |
Definition at line 47 of file EventPrincipal.h.
|
private |
Definition at line 162 of file EventPrincipal.h.
Referenced by clearEventPrincipal(), luminosityBlockPrincipal(), luminosityBlockPrincipalPtrValid(), and setLuminosityBlockPrincipal().
|
mutableprivate |
Definition at line 170 of file EventPrincipal.h.
Referenced by clearEventPrincipal(), and unscheduledFill().
|
private |
Definition at line 168 of file EventPrincipal.h.
Referenced by clearEventPrincipal(), setUnscheduledHandler(), unscheduledFill(), and unscheduledHandler().