#include <LuminosityBlockPrincipal.h>
Definition at line 29 of file LuminosityBlockPrincipal.h.
Definition at line 31 of file LuminosityBlockPrincipal.h.
Definition at line 32 of file LuminosityBlockPrincipal.h.
edm::LuminosityBlockPrincipal::LuminosityBlockPrincipal | ( | boost::shared_ptr< LuminosityBlockAuxiliary > | aux, |
boost::shared_ptr< ProductRegistry const > | reg, | ||
ProcessConfiguration const & | pc, | ||
boost::shared_ptr< RunPrincipal > | rp | ||
) |
Definition at line 9 of file LuminosityBlockPrincipal.cc.
: Base(reg, pc, InLumi), runPrincipal_(rp), aux_(aux) { }
edm::LuminosityBlockPrincipal::~LuminosityBlockPrincipal | ( | ) | [inline] |
Definition at line 39 of file LuminosityBlockPrincipal.h.
{}
LuminosityBlockAuxiliary const& edm::LuminosityBlockPrincipal::aux | ( | ) | const [inline] |
Definition at line 73 of file LuminosityBlockPrincipal.h.
References aux_.
Referenced by edm::SubProcess::beginLuminosityBlock(), beginTime(), endTime(), id(), luminosityBlock(), run(), and edm::RootOutputFile::writeLuminosityBlock().
{ return *aux_; }
Timestamp const& edm::LuminosityBlockPrincipal::beginTime | ( | ) | const [inline] |
Definition at line 57 of file LuminosityBlockPrincipal.h.
References aux(), and edm::LuminosityBlockAuxiliary::beginTime().
Referenced by edm::EventProcessor::beginLumi(), edm::OccurrenceTraits< LuminosityBlockPrincipal, BranchActionBegin >::preScheduleSignal(), edm::OccurrenceTraits< LuminosityBlockPrincipal, BranchActionEnd >::preScheduleSignal(), and DQMRootOutputModule::writeLuminosityBlock().
{ return aux().beginTime(); }
Timestamp const& edm::LuminosityBlockPrincipal::endTime | ( | ) | const [inline] |
Definition at line 61 of file LuminosityBlockPrincipal.h.
References aux(), and edm::LuminosityBlockAuxiliary::endTime().
Referenced by edm::EventProcessor::endLumi(), and DQMRootOutputModule::writeLuminosityBlock().
{ return aux().endTime(); }
void edm::LuminosityBlockPrincipal::fillLuminosityBlockPrincipal | ( | boost::shared_ptr< BranchMapper > | mapper = boost::shared_ptr<BranchMapper>(new BranchMapper) , |
boost::shared_ptr< DelayedReader > | rtrv = boost::shared_ptr<DelayedReader>(new NoDelayedReader) |
||
) |
Definition at line 20 of file LuminosityBlockPrincipal.cc.
References aux_, edm::Principal::begin(), edm::Principal::end(), edm::Principal::fillPrincipal(), i, edm::Principal::processHistoryID(), runPrincipal_, and edm::Principal::setProcessHistory().
{ fillPrincipal(aux_->processHistoryID(), mapper, rtrv); if (runPrincipal_) { setProcessHistory(*runPrincipal_); } mapper->processHistoryID() = processHistoryID(); for (const_iterator i = this->begin(), iEnd = this->end(); i != iEnd; ++i) { (*i)->setProvenance(mapper); } }
LuminosityBlockID edm::LuminosityBlockPrincipal::id | ( | void | ) | const [inline] |
Definition at line 53 of file LuminosityBlockPrincipal.h.
References aux(), and edm::LuminosityBlockAuxiliary::id().
Referenced by edm::NoDelayedReader::getProduct_(), edm::OccurrenceTraits< LuminosityBlockPrincipal, BranchActionBegin >::preScheduleSignal(), edm::OccurrenceTraits< LuminosityBlockPrincipal, BranchActionEnd >::preScheduleSignal(), edm::PoolOutputModule::writeLuminosityBlock(), DQMRootOutputModule::writeLuminosityBlock(), and edm::GetProductCheckerOutputModule::writeLuminosityBlock().
{ return aux().id(); }
LuminosityBlockNumber_t edm::LuminosityBlockPrincipal::luminosityBlock | ( | ) | const [inline] |
Definition at line 69 of file LuminosityBlockPrincipal.h.
References aux(), and edm::LuminosityBlockAuxiliary::luminosityBlock().
Referenced by edm::EventProcessor::beginLumi(), edm::EventProcessor::endLumi(), and edm::InputSource::markLumi().
{ return aux().luminosityBlock(); }
void edm::LuminosityBlockPrincipal::mergeAuxiliary | ( | LuminosityBlockAuxiliary const & | aux | ) | [inline] |
Definition at line 81 of file LuminosityBlockPrincipal.h.
References aux_.
void edm::LuminosityBlockPrincipal::put | ( | ConstBranchDescription const & | bd, |
std::auto_ptr< EDProduct > | edp, | ||
std::auto_ptr< ProductProvenance > | productProvenance | ||
) |
Definition at line 35 of file LuminosityBlockPrincipal.cc.
References edm::ConstBranchDescription::branchID(), edm::Principal::branchMapperPtr(), Exception, g, edm::Principal::getExistingGroup(), edm::errors::InsertFailure, edm::ConstBranchDescription::produced(), and edm::Principal::putOrMerge().
Referenced by edm::LuminosityBlock::commit_().
{ assert(bd.produced()); if (edp.get() == 0) { throw edm::Exception(edm::errors::InsertFailure,"Null Pointer") << "put: Cannot put because auto_ptr to product is null." << "\n"; } branchMapperPtr()->insert(*productProvenance); Group *g = getExistingGroup(bd.branchID()); assert(g); // Group assumes ownership putOrMerge(edp, productProvenance, g); }
void edm::LuminosityBlockPrincipal::readImmediate | ( | ) | const |
Definition at line 54 of file LuminosityBlockPrincipal.cc.
References edm::Principal::begin(), edm::Group::branchDescription(), edm::Principal::branchMapperPtr(), edm::Principal::end(), g, i, edm::ConstBranchDescription::produced(), edm::Group::productUnavailable(), and resolveProductImmediate().
{ for (Principal::const_iterator i = begin(), iEnd = end(); i != iEnd; ++i) { Group const& g = **i; if (!g.branchDescription().produced()) { if (!g.productUnavailable()) { resolveProductImmediate(g); } } } branchMapperPtr()->setDelayedRead(false); }
void edm::LuminosityBlockPrincipal::resolveProductImmediate | ( | Group const & | g | ) | const [private] |
Definition at line 67 of file LuminosityBlockPrincipal.cc.
References edm::Group::branchDescription(), edm::getProduct(), edm::ConstBranchDescription::produced(), edm::Principal::putOrMerge(), and edm::Principal::store().
Referenced by readImmediate().
{ if (g.branchDescription().produced()) return; // nothing to do. // must attempt to load from persistent store BranchKey const bk = BranchKey(g.branchDescription()); std::auto_ptr<EDProduct> edp(store()->getProduct(bk, this)); // Now fix up the Group if (edp.get() != 0) { putOrMerge(edp, &g); } }
RunNumber_t edm::LuminosityBlockPrincipal::run | ( | void | ) | const [inline] |
Definition at line 77 of file LuminosityBlockPrincipal.h.
References aux(), and edm::LuminosityBlockAuxiliary::run().
Referenced by edm::EventProcessor::beginLumi(), and edm::EventProcessor::endLumi().
{ return aux().run(); }
RunPrincipal const& edm::LuminosityBlockPrincipal::runPrincipal | ( | ) | const [inline] |
Definition at line 45 of file LuminosityBlockPrincipal.h.
References runPrincipal_.
Referenced by edm::EventPrincipal::runPrincipal().
{ return *runPrincipal_; }
RunPrincipal& edm::LuminosityBlockPrincipal::runPrincipal | ( | ) | [inline] |
Definition at line 49 of file LuminosityBlockPrincipal.h.
References runPrincipal_.
{ return *runPrincipal_; }
void edm::LuminosityBlockPrincipal::setEndTime | ( | Timestamp const & | time | ) | [inline] |
Definition at line 65 of file LuminosityBlockPrincipal.h.
References aux_.
Referenced by edm::InputSource::doEndLumi().
void edm::LuminosityBlockPrincipal::setUnscheduledHandler | ( | boost::shared_ptr< UnscheduledHandler > | ) | [inline] |
Definition at line 85 of file LuminosityBlockPrincipal.h.
{}
void edm::LuminosityBlockPrincipal::swap | ( | LuminosityBlockPrincipal & | iOther | ) |
Definition at line 81 of file LuminosityBlockPrincipal.cc.
References aux_, runPrincipal_, and edm::Principal::swapBase().
{ swapBase(iOther); std::swap(runPrincipal_,iOther.runPrincipal_); std::swap(aux_, iOther.aux_); }
virtual bool edm::LuminosityBlockPrincipal::unscheduledFill | ( | std::string const & | ) | const [inline, private, virtual] |
Implements edm::Principal.
Definition at line 97 of file LuminosityBlockPrincipal.h.
{return false;}
boost::shared_ptr<LuminosityBlockAuxiliary> edm::LuminosityBlockPrincipal::aux_ [private] |
Definition at line 103 of file LuminosityBlockPrincipal.h.
Referenced by aux(), fillLuminosityBlockPrincipal(), mergeAuxiliary(), setEndTime(), and swap().
boost::shared_ptr<RunPrincipal> edm::LuminosityBlockPrincipal::runPrincipal_ [private] |
Definition at line 101 of file LuminosityBlockPrincipal.h.
Referenced by fillLuminosityBlockPrincipal(), runPrincipal(), and swap().