![]() |
![]() |
#include <InputSource.h>
Classes | |
class | EventSourceSentry |
class | FileCloseSentry |
class | FileOpenSentry |
class | LumiSourceSentry |
class | RunSourceSentry |
class | SourceSentry |
Public Types | |
enum | ItemType { IsInvalid, IsStop, IsFile, IsRun, IsLumi, IsEvent, IsRepeat } |
enum | ProcessingMode { Runs, RunsAndLumis, RunsLumisAndEvents } |
typedef ProductRegistryHelper::TypeLabelList | TypeLabelList |
Public Member Functions | |
boost::shared_ptr < ActivityRegistry > | actReg () const |
Accessor for Activity Registry. | |
boost::shared_ptr < BranchIDListHelper > | branchIDListHelper () const |
Accessor for branchIDListHelper. | |
void | closeFile (FileBlock *, bool cleaningUpAfterException) |
close current file | |
void | doBeginJob () |
Called by framework at beginning of job. | |
void | doBeginLumi (LuminosityBlockPrincipal &lbp) |
Called by framework at beginning of lumi block. | |
void | doBeginRun (RunPrincipal &rp) |
Called by framework at beginning of run. | |
void | doEndJob () |
Called by framework at end of job. | |
void | doEndLumi (LuminosityBlockPrincipal &lbp, bool cleaningUpAfterException) |
Called by framework at end of lumi block. | |
void | doEndRun (RunPrincipal &rp, bool cleaningUpAfterException) |
Called by framework at end of run. | |
void | doPostForkReacquireResources (boost::shared_ptr< multicore::MessageReceiverForSource >) |
void | doPreForkReleaseResources () |
Called by the framework before forking the process. | |
ProcessingController::ForwardState | forwardState () const |
bool | goToEvent (EventID const &eventID) |
InputSource (ParameterSet const &, InputSourceDescription const &) | |
Constructor. | |
InputSource (InputSource const &) | |
void | issueReports (EventID const &eventID) |
issue an event report | |
LuminosityBlockNumber_t | luminosityBlock () const |
Accessor for current luminosity block number. | |
boost::shared_ptr < LuminosityBlockAuxiliary > | luminosityBlockAuxiliary () const |
Called by the framework to merge or insert lumi in principal cache. | |
int | maxEvents () const |
int | maxLuminosityBlocks () const |
ModuleDescription const & | moduleDescription () const |
Accessor for 'module' description. | |
ItemType | nextItemType () |
InputSource & | operator= (InputSource const &) |
bool | primary () const |
Accessor for primary input source flag. | |
ProcessConfiguration const & | processConfiguration () const |
Accessor for Process Configuration. | |
std::string const & | processGUID () const |
Accessor for global process identifier. | |
ProcessingMode | processingMode () const |
RunsLumisAndEvents (default), RunsAndLumis, or Runs. | |
boost::shared_ptr < ProductRegistry const > | productRegistry () const |
Accessor for product registry. | |
bool | randomAccess () const |
boost::shared_ptr < LuminosityBlockPrincipal > | readAndCacheLumi (HistoryAppender &historyAppender) |
Read next luminosity block (new lumi) | |
boost::shared_ptr< RunPrincipal > | readAndCacheRun (HistoryAppender &historyAppender) |
Read next run (new run) | |
void | readAndMergeLumi (boost::shared_ptr< LuminosityBlockPrincipal > lbp) |
Read next luminosity block (same as a prior lumi) | |
void | readAndMergeRun (boost::shared_ptr< RunPrincipal > rp) |
Read next run (same as a prior run) | |
EventPrincipal * | readEvent (EventPrincipal &ep) |
EventPrincipal * | readEvent (EventPrincipal &ep, EventID const &) |
Read a specific event. | |
std::unique_ptr< FileBlock > | readFile () |
Read next file. | |
boost::shared_ptr < LuminosityBlockAuxiliary > | readLuminosityBlockAuxiliary () |
Read next luminosity block Auxilary. | |
boost::shared_ptr< RunAuxiliary > | readRunAuxiliary () |
Read next run Auxiliary. | |
ProcessHistoryID const & | reducedProcessHistoryID () const |
void | registerProducts () |
Register any produced products. | |
int | remainingEvents () const |
int | remainingLuminosityBlocks () const |
void | repeat () |
Reset the remaining number of events/lumis to the maximum number. | |
ProcessingController::ReverseState | reverseState () const |
void | rewind () |
Begin again at the first event. | |
RunNumber_t | run () const |
Accessor for current run number. | |
boost::shared_ptr< RunAuxiliary > | runAuxiliary () const |
Called by the framework to merge or insert run in principal cache. | |
void | setLuminosityBlockNumber_t (LuminosityBlockNumber_t lb) |
Set the luminosity block ID. | |
void | setRunNumber (RunNumber_t r) |
Set the run number. | |
void | skipEvents (int offset) |
bool | skipForForking () |
Timestamp const & | timestamp () const |
Accessor for the current time, as seen by the input source. | |
virtual | ~InputSource () |
Destructor. | |
Static Public Member Functions | |
static const std::string & | baseType () |
static void | fillDescription (ParameterSetDescription &desc) |
static void | fillDescriptions (ConfigurationDescriptions &descriptions) |
static void | prevalidate (ConfigurationDescriptions &) |
Protected Member Functions | |
void | decreaseRemainingEventsBy (int iSkipped) |
bool | eventCached () const |
boost::shared_ptr < LuminosityBlockPrincipal > const | luminosityBlockPrincipal () const |
bool | newLumi () const |
bool | newRun () const |
ProductRegistry & | productRegistryUpdate () const |
void | reset () const |
void | resetEventCached () |
void | resetLuminosityBlockAuxiliary (bool isNewLumi=true) const |
void | resetNewLumi () |
void | resetNewRun () |
void | resetRunAuxiliary (bool isNewRun=true) const |
boost::shared_ptr < RunPrincipal > const | runPrincipal () const |
void | setEventCached () |
Called by the framework to merge or ached() const {return eventCached_;}. | |
void | setLuminosityBlockAuxiliary (LuminosityBlockAuxiliary *lbp) |
void | setNewLumi () |
void | setNewRun () |
void | setRunAuxiliary (RunAuxiliary *rp) |
void | setTimestamp (Timestamp const &theTime) |
To set the current time, as seen by the input source. | |
virtual void | skip (int offset) |
ItemType | state () const |
Private Member Functions | |
virtual void | beginJob () |
virtual void | beginLuminosityBlock (LuminosityBlock &) |
virtual void | beginRun (Run &) |
virtual void | closeFile_ () |
virtual void | endJob () |
virtual void | endLuminosityBlock (LuminosityBlock &) |
virtual void | endRun (Run &) |
bool | eventLimitReached () const |
virtual ProcessingController::ForwardState | forwardState_ () const |
virtual ItemType | getNextItemType ()=0 |
virtual bool | goToEvent_ (EventID const &eventID) |
bool | limitReached () const |
bool | lumiLimitReached () const |
ItemType | nextItemType_ () |
virtual void | postForkReacquireResources (boost::shared_ptr< multicore::MessageReceiverForSource >) |
void | postRead (Event &event) |
virtual void | preForkReleaseResources () |
virtual bool | randomAccess_ () const |
virtual EventPrincipal * | readEvent_ (EventPrincipal &eventPrincipal)=0 |
virtual std::unique_ptr < FileBlock > | readFile_ () |
virtual EventPrincipal * | readIt (EventID const &, EventPrincipal &eventPrincipal) |
virtual boost::shared_ptr < LuminosityBlockPrincipal > | readLuminosityBlock_ (boost::shared_ptr< LuminosityBlockPrincipal > lumiPrincipal) |
virtual boost::shared_ptr < LuminosityBlockAuxiliary > | readLuminosityBlockAuxiliary_ ()=0 |
virtual boost::shared_ptr < RunPrincipal > | readRun_ (boost::shared_ptr< RunPrincipal > runPrincipal) |
virtual boost::shared_ptr < RunAuxiliary > | readRunAuxiliary_ ()=0 |
virtual ProcessingController::ReverseState | reverseState_ () const |
virtual void | rewind_ () |
virtual void | setLumi (LuminosityBlockNumber_t lb) |
virtual void | setRun (RunNumber_t r) |
Private Attributes | |
boost::shared_ptr < ActivityRegistry > | actReg_ |
boost::shared_ptr < BranchIDListHelper > | branchIDListHelper_ |
bool | eventCached_ |
boost::shared_ptr < LuminosityBlockAuxiliary > | lumiAuxiliary_ |
int | maxEvents_ |
int | maxLumis_ |
ModuleDescription const | moduleDescription_ |
bool | newLumi_ |
bool | newRun_ |
unsigned int | numberOfEventsBeforeBigSkip_ |
bool const | primary_ |
std::string | processGUID_ |
ProcessingMode | processingMode_ |
boost::shared_ptr < ProductRegistry const > | productRegistry_ |
int | readCount_ |
boost::shared_ptr < edm::multicore::MessageReceiverForSource > | receiver_ |
int | remainingEvents_ |
int | remainingLumis_ |
boost::shared_ptr< RunAuxiliary > | runAuxiliary_ |
ItemType | state_ |
std::string | statusFileName_ |
Timestamp | time_ |
Definition at line 70 of file InputSource.h.
Reimplemented from edm::ProductRegistryHelper.
Definition at line 88 of file InputSource.h.
Definition at line 82 of file InputSource.h.
{ Runs, RunsAndLumis, RunsLumisAndEvents };
InputSource::InputSource | ( | ParameterSet const & | pset, |
InputSourceDescription const & | desc | ||
) | [explicit] |
Constructor.
Definition at line 55 of file InputSource.cc.
References edm::errors::Configuration, Exception, edm::ParameterSet::getUntrackedParameter(), primary_, processingMode(), processingMode_, edm::InputSourceDescription::productRegistry_, Runs, RunsAndLumis, statusFileName_, and AlCaHLTBitMon_QueryRunRegistry::string.
: ProductRegistryHelper(), actReg_(desc.actReg_), maxEvents_(desc.maxEvents_), remainingEvents_(maxEvents_), maxLumis_(desc.maxLumis_), remainingLumis_(maxLumis_), readCount_(0), processingMode_(RunsLumisAndEvents), moduleDescription_(desc.moduleDescription_), productRegistry_(createSharedPtrToStatic<ProductRegistry const>(desc.productRegistry_)), branchIDListHelper_(desc.branchIDListHelper_), primary_(pset.getParameter<std::string>("@module_label") == std::string("@main_input")), processGUID_(primary_ ? createGlobalIdentifier() : std::string()), time_(), newRun_(true), newLumi_(true), eventCached_(false), state_(IsInvalid), runAuxiliary_(), lumiAuxiliary_(), statusFileName_(), receiver_(), numberOfEventsBeforeBigSkip_(0) { if(pset.getUntrackedParameter<bool>("writeStatusFile", false)) { std::ostringstream statusfilename; statusfilename << "source_" << getpid(); statusFileName_ = statusfilename.str(); } // Secondary input sources currently do not have a product registry. if(primary_) { assert(desc.productRegistry_ != 0); } std::string const defaultMode("RunsLumisAndEvents"); std::string const runMode("Runs"); std::string const runLumiMode("RunsAndLumis"); // The default value provided as the second argument to the getUntrackedParameter function call // is not used when the ParameterSet has been validated and the parameters are not optional // in the description. As soon as all primary input sources and all modules with a secondary // input sources have defined descriptions, the defaults in the getUntrackedParameterSet function // calls can and should be deleted from the code. std::string processingMode = pset.getUntrackedParameter<std::string>("processingMode", defaultMode); if(processingMode == runMode) { processingMode_ = Runs; } else if(processingMode == runLumiMode) { processingMode_ = RunsAndLumis; } else if(processingMode != defaultMode) { throw Exception(errors::Configuration) << "InputSource::InputSource()\n" << "The 'processingMode' parameter for sources has an illegal value '" << processingMode << "'\n" << "Legal values are '" << defaultMode << "', '" << runLumiMode << "', or '" << runMode << "'.\n"; } }
InputSource::~InputSource | ( | ) | [virtual] |
edm::InputSource::InputSource | ( | InputSource const & | ) |
boost::shared_ptr<ActivityRegistry> edm::InputSource::actReg | ( | ) | const [inline] |
Accessor for Activity Registry.
Definition at line 241 of file InputSource.h.
References actReg_.
Referenced by edm::InputSource::FileCloseSentry::FileCloseSentry().
{return actReg_;}
std::string const & InputSource::baseType | ( | ) | [static] |
void InputSource::beginJob | ( | void | ) | [private, virtual] |
Reimplemented in edm::ProducerSourceBase.
Definition at line 567 of file InputSource.cc.
Referenced by doBeginJob().
{}
void InputSource::beginLuminosityBlock | ( | LuminosityBlock & | ) | [private, virtual] |
Reimplemented in ErrorStreamSource, and edm::ProducerSourceBase.
Definition at line 555 of file InputSource.cc.
Referenced by doBeginLumi().
{}
void InputSource::beginRun | ( | Run & | ) | [private, virtual] |
Reimplemented in ErrorStreamSource, edm::ProducerSourceBase, AlpgenSource, LHESource, and MCatNLOSource.
Definition at line 561 of file InputSource.cc.
Referenced by doBeginRun().
{}
boost::shared_ptr<BranchIDListHelper> edm::InputSource::branchIDListHelper | ( | ) | const [inline] |
Accessor for branchIDListHelper.
Definition at line 165 of file InputSource.h.
References branchIDListHelper_.
Referenced by edm::StreamerInputSource::deserializeAndMergeWithRegistry(), edm::RootInputFileSequence::initFile(), and edm::StreamerInputSource::read().
{return branchIDListHelper_;}
void InputSource::closeFile | ( | FileBlock * | fb, |
bool | cleaningUpAfterException | ||
) |
close current file
Definition at line 270 of file InputSource.cc.
References edm::FileBlock::close(), and closeFile_().
Referenced by edm::RawInputSource::preForkReleaseResources().
{ if(fb != nullptr) fb->close(); callWithTryCatchAndPrint<void>( [this](){ closeFile_(); }, "Calling InputSource::closeFile_", cleaningUpAfterException ); return; }
virtual void edm::InputSource::closeFile_ | ( | ) | [inline, private, virtual] |
Reimplemented in DQMRootSource, edm::PoolSource, edm::StreamerInputModule< Producer >, and edm::StreamerFileReader.
Definition at line 370 of file InputSource.h.
Referenced by closeFile().
{}
void InputSource::decreaseRemainingEventsBy | ( | int | iSkipped | ) | [protected] |
Called by inheriting classes when running multicore when the receiver has told them to skip some events.
Definition at line 474 of file InputSource.cc.
References remainingEvents_.
Referenced by rewind(), and skipForForking().
{ if(-1 == remainingEvents_) { return; } if(iSkipped < remainingEvents_) { remainingEvents_ -= iSkipped; } else { remainingEvents_ = 0; } }
void InputSource::doBeginJob | ( | ) |
Called by framework at beginning of job.
Definition at line 244 of file InputSource.cc.
References beginJob().
{ this->beginJob(); }
void InputSource::doBeginLumi | ( | LuminosityBlockPrincipal & | lbp | ) |
Called by framework at beginning of lumi block.
Definition at line 510 of file InputSource.cc.
References beginLuminosityBlock(), edm::LuminosityBlock::commit_(), and moduleDescription().
{ LuminosityBlock lb(lbp, moduleDescription()); callWithTryCatchAndPrint<void>( [this,&lb](){ beginLuminosityBlock(lb); }, "Calling InputSource::beginLuminosityBlock" ); lb.commit_(); }
void InputSource::doBeginRun | ( | RunPrincipal & | rp | ) |
Called by framework at beginning of run.
Definition at line 494 of file InputSource.cc.
References beginRun(), edm::Run::commit_(), moduleDescription(), and run().
void InputSource::doEndJob | ( | ) |
Called by framework at end of job.
Definition at line 249 of file InputSource.cc.
References endJob().
{ endJob(); }
void InputSource::doEndLumi | ( | LuminosityBlockPrincipal & | lbp, |
bool | cleaningUpAfterException | ||
) |
Called by framework at end of lumi block.
Definition at line 517 of file InputSource.cc.
References edm::LuminosityBlock::commit_(), endLuminosityBlock(), moduleDescription(), edm::LuminosityBlockPrincipal::setComplete(), edm::LuminosityBlockPrincipal::setEndTime(), and time_.
{ lbp.setEndTime(time_); lbp.setComplete(); LuminosityBlock lb(lbp, moduleDescription()); callWithTryCatchAndPrint<void>( [this,&lb](){ endLuminosityBlock(lb); }, "Calling InputSource::endLuminosityBlock", cleaningUpAfterException ); lb.commit_(); }
void InputSource::doEndRun | ( | RunPrincipal & | rp, |
bool | cleaningUpAfterException | ||
) |
Called by framework at end of run.
Definition at line 501 of file InputSource.cc.
References edm::Run::commit_(), endRun(), moduleDescription(), run(), edm::RunPrincipal::setComplete(), edm::RunPrincipal::setEndTime(), and time_.
void InputSource::doPostForkReacquireResources | ( | boost::shared_ptr< multicore::MessageReceiverForSource > | iReceiver | ) |
Definition at line 531 of file InputSource.cc.
References postForkReacquireResources().
{ callWithTryCatchAndPrint<void>( [this, &iReceiver](){ postForkReacquireResources(iReceiver); }, "Calling InputSource::postForkReacquireResources" ); }
void InputSource::doPreForkReleaseResources | ( | ) |
Called by the framework before forking the process.
Definition at line 526 of file InputSource.cc.
References preForkReleaseResources().
{ callWithTryCatchAndPrint<void>( [this](){ preForkReleaseResources(); }, "Calling InputSource::preForkReleaseResources" ); }
void InputSource::endJob | ( | void | ) | [private, virtual] |
Reimplemented in LHESource, MCatNLOSource, and edm::PoolSource.
Definition at line 570 of file InputSource.cc.
Referenced by doEndJob().
{}
void InputSource::endLuminosityBlock | ( | LuminosityBlock & | ) | [private, virtual] |
Reimplemented in ErrorStreamSource, and edm::ProducerSourceBase.
Definition at line 558 of file InputSource.cc.
Referenced by doEndLumi().
{}
void InputSource::endRun | ( | Run & | ) | [private, virtual] |
Reimplemented in ErrorStreamSource, edm::ProducerSourceBase, and LHESource.
Definition at line 564 of file InputSource.cc.
Referenced by doEndRun().
{}
bool edm::InputSource::eventCached | ( | ) | const [inline, protected] |
Definition at line 347 of file InputSource.h.
References eventCached_.
Referenced by edm::ProducerSourceBase::getNextItemType(), edm::RawInputSource::getNextItemType(), LHESource::readEvent_(), edm::RawInputSource::readEvent_(), edm::ProducerSourceBase::readEvent_(), and edm::StreamerInputSource::resetAfterEndRun().
{return eventCached_;}
bool edm::InputSource::eventLimitReached | ( | ) | const [inline, private] |
Definition at line 357 of file InputSource.h.
References remainingEvents_.
Referenced by limitReached(), nextItemType(), readEvent(), and skipForForking().
{return remainingEvents_ == 0;}
void InputSource::fillDescription | ( | ParameterSetDescription & | desc | ) | [static] |
Reimplemented in edm::EDInputSource, edm::ProducerSourceBase, edm::ProducerSourceFromFiles, edm::RawInputSource, edm::RawInputSourceFromFiles, and edm::StreamerInputSource.
Definition at line 134 of file InputSource.cc.
References edm::ParameterSetDescription::addUntracked(), and AlCaHLTBitMon_QueryRunRegistry::string.
{ std::string defaultString("RunsLumisAndEvents"); desc.addUntracked<std::string>("processingMode", defaultString)->setComment( "'RunsLumisAndEvents': process runs, lumis, and events.\n" "'RunsAndLumis': process runs and lumis (not events).\n" "'Runs': process runs (not lumis or events)."); desc.addUntracked<bool>("writeStatusFile", false)->setComment("Write a status file. Intended for use by workflow management."); }
void InputSource::fillDescriptions | ( | ConfigurationDescriptions & | descriptions | ) | [static] |
Reimplemented in DQMRootSource, edm::EmptySource, edm::PoolSource, and edm::StreamerFileReader.
Definition at line 115 of file InputSource.cc.
References edm::ConfigurationDescriptions::addDefault(), and edm::ParameterSetDescription::setUnknown().
{ ParameterSetDescription desc; desc.setUnknown(); descriptions.addDefault(desc); }
ProcessingController::ForwardState InputSource::forwardState | ( | ) | const |
Definition at line 543 of file InputSource.cc.
References forwardState_().
{ return callWithTryCatchAndPrint<ProcessingController::ForwardState>( [this](){ return forwardState_(); }, "Calling InputSource::forwardState_" ); }
ProcessingController::ForwardState InputSource::forwardState_ | ( | ) | const [private, virtual] |
Reimplemented in edm::PoolSource.
Definition at line 589 of file InputSource.cc.
References edm::ProcessingController::kUnknownForward.
Referenced by forwardState().
{ return ProcessingController::kUnknownForward; }
virtual ItemType edm::InputSource::getNextItemType | ( | ) | [private, pure virtual] |
Implemented in DQMRootSource, edm::ProducerSourceBase, edm::RawInputSource, edm::PoolSource, and edm::DaqSource.
Referenced by nextItemType_().
bool InputSource::goToEvent | ( | EventID const & | eventID | ) |
Definition at line 387 of file InputSource.cc.
References goToEvent_().
{ return callWithTryCatchAndPrint<bool>( [this,&eventID](){ return goToEvent_(eventID); }, "Calling InputSource::goToEvent_" ); }
bool InputSource::goToEvent_ | ( | EventID const & | eventID | ) | [private, virtual] |
Reimplemented in edm::PoolSource.
Definition at line 457 of file InputSource.cc.
References Exception, and edm::errors::LogicError.
Referenced by goToEvent().
{ throw Exception(errors::LogicError) << "InputSource::goToEvent_()\n" << "Random access is not implemented for this type of Input Source\n" << "Contact a Framework Developer\n"; return true; }
void InputSource::issueReports | ( | EventID const & | eventID | ) |
issue an event report
Definition at line 407 of file InputSource.cc.
References edm::EventID::event(), edm::isInfoEnabled(), edm::EventID::luminosityBlock(), readCount_, edm::EventID::run(), statusFileName_, and createPayload::suffix.
Referenced by readEvent().
{ if(isInfoEnabled()) { LogVerbatim("FwkReport") << "Begin processing the " << readCount_ << suffix(readCount_) << " record. Run " << eventID.run() << ", Event " << eventID.event() << ", LumiSection " << eventID.luminosityBlock() << " at " << std::setprecision(3) << TimeOfDay(); } if(!statusFileName_.empty()) { std::ofstream statusFile(statusFileName_.c_str()); statusFile << eventID << " time: " << std::setprecision(3) << TimeOfDay() << '\n'; statusFile.close(); } // At some point we may want to initiate checkpointing here }
bool edm::InputSource::limitReached | ( | ) | const [inline, private] |
Definition at line 359 of file InputSource.h.
References eventLimitReached(), and lumiLimitReached().
Referenced by readEvent(), and readFile().
{return eventLimitReached() || lumiLimitReached();}
bool edm::InputSource::lumiLimitReached | ( | ) | const [inline, private] |
Definition at line 358 of file InputSource.h.
References remainingLumis_.
Referenced by limitReached(), and nextItemType().
{return remainingLumis_ == 0;}
LuminosityBlockNumber_t InputSource::luminosityBlock | ( | ) | const |
Accessor for current luminosity block number.
Reimplemented in edm::ProducerSourceBase.
Definition at line 611 of file InputSource.cc.
References luminosityBlockAuxiliary().
Referenced by edm::DQMHttpSource::checkNextEvent(), and edm::StreamerInputSource::deserializeEvent().
{ assert(luminosityBlockAuxiliary()); return luminosityBlockAuxiliary()->luminosityBlock(); }
boost::shared_ptr<LuminosityBlockAuxiliary> edm::InputSource::luminosityBlockAuxiliary | ( | ) | const [inline] |
Called by the framework to merge or insert lumi in principal cache.
Definition at line 247 of file InputSource.h.
References lumiAuxiliary_.
Referenced by edm::DQMHttpSource::checkNextEvent(), edm::StreamerInputSource::deserializeEvent(), edm::RawInputSource::getNextItemType(), luminosityBlock(), readAndCacheLumi(), LHESource::readLuminosityBlock_(), and edm::RawInputSource::readLuminosityBlockAuxiliary_().
{return lumiAuxiliary_;}
boost::shared_ptr<LuminosityBlockPrincipal> const edm::InputSource::luminosityBlockPrincipal | ( | ) | const [protected] |
int edm::InputSource::maxEvents | ( | ) | const [inline] |
Accessor for maximum number of events to be read. -1 is used for unlimited.
Definition at line 175 of file InputSource.h.
References maxEvents_.
{return maxEvents_;}
int edm::InputSource::maxLuminosityBlocks | ( | ) | const [inline] |
Accessor for maximum number of lumis to be read. -1 is used for unlimited.
Definition at line 183 of file InputSource.h.
References maxLumis_.
{return maxLumis_;}
ModuleDescription const& edm::InputSource::moduleDescription | ( | ) | const [inline] |
Accessor for 'module' description.
Definition at line 190 of file InputSource.h.
References moduleDescription_.
Referenced by doBeginLumi(), doBeginRun(), doEndLumi(), doEndRun(), processConfiguration(), readEvent(), edm::ProducerSourceBase::readEvent_(), and registerProducts().
{return moduleDescription_;}
bool edm::InputSource::newLumi | ( | ) | const [inline, protected] |
Definition at line 344 of file InputSource.h.
References newLumi_.
Referenced by edm::ProducerSourceBase::getNextItemType(), edm::RawInputSource::getNextItemType(), edm::RawInputSource::readEvent_(), and edm::RawInputSource::readLuminosityBlockAuxiliary_().
{return newLumi_;}
bool edm::InputSource::newRun | ( | ) | const [inline, protected] |
Definition at line 341 of file InputSource.h.
References newRun_.
Referenced by edm::DaqSource::doMyBeginRun(), edm::ProducerSourceBase::getNextItemType(), edm::RawInputSource::getNextItemType(), edm::RawInputSource::readEvent_(), edm::RawInputSource::readLuminosityBlockAuxiliary_(), and edm::RawInputSource::readRunAuxiliary_().
{return newRun_;}
InputSource::ItemType InputSource::nextItemType | ( | ) |
Definition at line 187 of file InputSource.cc.
References eventLimitReached(), IsEvent, IsFile, IsInvalid, IsLumi, IsRun, IsStop, lumiAuxiliary_, lumiLimitReached(), nextItemType_(), processingMode(), readLuminosityBlockAuxiliary(), readRunAuxiliary(), runAuxiliary_, Runs, RunsLumisAndEvents, and state_.
{ ItemType oldState = state_; if(eventLimitReached()) { // If the maximum event limit has been reached, stop. state_ = IsStop; } else if(lumiLimitReached()) { // If the maximum lumi limit has been reached, stop // when reaching a new file, run, or lumi. if(oldState == IsInvalid || oldState == IsFile || oldState == IsRun || processingMode() != RunsLumisAndEvents) { state_ = IsStop; } else { ItemType newState = nextItemType_(); if(newState == IsEvent) { assert (processingMode() == RunsLumisAndEvents); state_ = IsEvent; } else { state_ = IsStop; } } } else { ItemType newState = nextItemType_(); if(newState == IsStop) { state_ = IsStop; } else if(newState == IsFile || oldState == IsInvalid) { state_ = IsFile; } else if(newState == IsRun || oldState == IsFile) { runAuxiliary_ = readRunAuxiliary(); state_ = IsRun; } else if(newState == IsLumi || oldState == IsRun) { assert (processingMode() != Runs); lumiAuxiliary_ = readLuminosityBlockAuxiliary(); state_ = IsLumi; } else { assert (processingMode() == RunsLumisAndEvents); state_ = IsEvent; } } if(state_ == IsStop) { lumiAuxiliary_.reset(); runAuxiliary_.reset(); } return state_; }
InputSource::ItemType InputSource::nextItemType_ | ( | ) | [private] |
Definition at line 172 of file InputSource.cc.
References getNextItemType(), IsEvent, IsLumi, processingMode(), Runs, RunsLumisAndEvents, and skipEvents().
Referenced by nextItemType().
{ ItemType itemType = callWithTryCatchAndPrint<ItemType>( [this](){ return getNextItemType(); }, "Calling InputSource::getNextItemType" ); if(itemType == IsEvent && processingMode() != RunsLumisAndEvents) { skipEvents(1); return nextItemType_(); } if(itemType == IsLumi && processingMode() == Runs) { // QQQ skipLuminosityBlock_(); return nextItemType_(); } return itemType; }
InputSource& edm::InputSource::operator= | ( | InputSource const & | ) |
void InputSource::postForkReacquireResources | ( | boost::shared_ptr< multicore::MessageReceiverForSource > | iReceiver | ) | [private, virtual] |
Definition at line 576 of file InputSource.cc.
References numberOfEventsBeforeBigSkip_, receiver_, and rewind().
Referenced by doPostForkReacquireResources().
{ receiver_ = iReceiver; receiver_->receive(); numberOfEventsBeforeBigSkip_ = receiver_->numberOfConsecutiveIndices(); rewind(); }
void InputSource::postRead | ( | Event & | event | ) | [private] |
Definition at line 486 of file InputSource.cc.
References edm::Service< T >::isAvailable().
Referenced by readEvent().
{ Service<RandomNumberGenerator> rng; if(rng.isAvailable()) { rng->postEventRead(event); } }
void InputSource::preForkReleaseResources | ( | ) | [private, virtual] |
Reimplemented in edm::RawInputSource, and edm::PoolSource.
Definition at line 573 of file InputSource.cc.
Referenced by doPreForkReleaseResources().
{}
void InputSource::prevalidate | ( | ConfigurationDescriptions & | ) | [static] |
Definition at line 122 of file InputSource.cc.
{ }
bool edm::InputSource::primary | ( | ) | const [inline] |
Accessor for primary input source flag.
Definition at line 196 of file InputSource.h.
References primary_.
{return primary_;}
ProcessConfiguration const& edm::InputSource::processConfiguration | ( | ) | const [inline] |
Accessor for Process Configuration.
Definition at line 193 of file InputSource.h.
References moduleDescription(), and edm::ModuleDescription::processConfiguration().
Referenced by edm::RootInputFileSequence::processConfiguration(), readAndCacheLumi(), readAndCacheRun(), edm::PoolSource::readLuminosityBlock_(), and edm::PoolSource::readRun_().
{return moduleDescription().processConfiguration();}
std::string const& edm::InputSource::processGUID | ( | ) | const [inline] |
Accessor for global process identifier.
Definition at line 199 of file InputSource.h.
References processGUID_.
Referenced by LHESource::readEvent_(), and edm::ProducerSourceBase::readEvent_().
{return processGUID_;}
ProcessingMode edm::InputSource::processingMode | ( | ) | const [inline] |
RunsLumisAndEvents (default), RunsAndLumis, or Runs.
Definition at line 238 of file InputSource.h.
References processingMode_.
Referenced by edm::ProducerSourceBase::getNextItemType(), edm::RootInputFileSequence::initFile(), InputSource(), nextItemType(), nextItemType_(), LHESource::readEvent_(), edm::ProducerSourceBase::readEvent_(), and edm::ProducerSourceBase::readLuminosityBlockAuxiliary_().
{return processingMode_;}
boost::shared_ptr<ProductRegistry const> edm::InputSource::productRegistry | ( | ) | const [inline] |
Accessor for product registry.
Definition at line 162 of file InputSource.h.
References productRegistry_.
Referenced by edm::RootInputFileSequence::productRegistry(), and edm::StreamerInputSource::read().
{return productRegistry_;}
ProductRegistry& edm::InputSource::productRegistryUpdate | ( | ) | const [inline, protected] |
Definition at line 316 of file InputSource.h.
Referenced by edm::DaqSource::DaqSource(), edm::StreamerInputSource::deserializeAndMergeWithRegistry(), LHESource::LHESource(), edm::RootInputFileSequence::productRegistryUpdate(), and registerProducts().
{return const_cast<ProductRegistry&>(*productRegistry_);}
bool InputSource::randomAccess | ( | ) | const |
Definition at line 537 of file InputSource.cc.
References randomAccess_().
{ return callWithTryCatchAndPrint<bool>( [this](){ return randomAccess_(); }, "Calling InputSource::randomAccess_" ); }
bool InputSource::randomAccess_ | ( | ) | const [private, virtual] |
Reimplemented in edm::PoolSource.
Definition at line 584 of file InputSource.cc.
Referenced by randomAccess().
{ return false; }
boost::shared_ptr< LuminosityBlockPrincipal > InputSource::readAndCacheLumi | ( | HistoryAppender & | historyAppender | ) |
Read next luminosity block (new lumi)
Definition at line 301 of file InputSource.cc.
References luminosityBlockAuxiliary(), processConfiguration(), productRegistry_, readLuminosityBlock_(), and remainingLumis_.
{ LumiSourceSentry sentry(*this); boost::shared_ptr<LuminosityBlockPrincipal> lbp( new LuminosityBlockPrincipal(luminosityBlockAuxiliary(), productRegistry_, processConfiguration(), &historyAppender)); callWithTryCatchAndPrint<boost::shared_ptr<LuminosityBlockPrincipal> >( [this,&lbp](){ return readLuminosityBlock_(lbp); }, "Calling InputSource::readLuminosityBlock_" ); if(remainingLumis_ > 0) { --remainingLumis_; } return lbp; }
boost::shared_ptr< RunPrincipal > InputSource::readAndCacheRun | ( | HistoryAppender & | historyAppender | ) |
Read next run (new run)
Definition at line 287 of file InputSource.cc.
References processConfiguration(), productRegistry_, readRun_(), and runAuxiliary().
{ RunSourceSentry sentry(*this); boost::shared_ptr<RunPrincipal> rp(new RunPrincipal(runAuxiliary(), productRegistry_, processConfiguration(), &historyAppender)); callWithTryCatchAndPrint<boost::shared_ptr<RunPrincipal> >( [this,&rp](){ return readRun_(rp); }, "Calling InputSource::readRun_" ); return rp; }
void InputSource::readAndMergeLumi | ( | boost::shared_ptr< LuminosityBlockPrincipal > | lbp | ) |
Read next luminosity block (same as a prior lumi)
Definition at line 317 of file InputSource.cc.
References readLuminosityBlock_(), and remainingLumis_.
{ LumiSourceSentry sentry(*this); callWithTryCatchAndPrint<boost::shared_ptr<LuminosityBlockPrincipal> >( [this,&lbp](){ return readLuminosityBlock_(lbp); }, "Calling InputSource::readLuminosityBlock_" ); if(remainingLumis_ > 0) { --remainingLumis_; } }
void InputSource::readAndMergeRun | ( | boost::shared_ptr< RunPrincipal > | rp | ) |
Read next run (same as a prior run)
Definition at line 295 of file InputSource.cc.
References readRun_().
{ RunSourceSentry sentry(*this); callWithTryCatchAndPrint<boost::shared_ptr<RunPrincipal> >( [this,&rp](){ return readRun_(rp); }, "Calling InputSource::readRun_" ); }
EventPrincipal * InputSource::readEvent | ( | EventPrincipal & | ep, |
EventID const & | eventID | ||
) |
Read a specific event.
Definition at line 363 of file InputSource.cc.
References event(), edm::EventPrincipal::id(), issueReports(), limitReached(), moduleDescription(), postRead(), readCount_, readIt(), remainingEvents_, and query::result.
{ EventPrincipal* result = 0; if(!limitReached()) { //result = callWithTryCatchAndPrint<EventPrincipal*>( [this,ep,&eventID](){ return readIt(eventID, ep); }, "Calling InputSource::readIt" ); result = readIt(eventID, ep); if(result != 0) { Event event(*result, moduleDescription()); postRead(event); if(remainingEvents_ > 0) --remainingEvents_; ++readCount_; issueReports(result->id()); } } return result; }
EventPrincipal * InputSource::readEvent | ( | EventPrincipal & | ep | ) |
Read next event Indicate inability to get a new event by returning a null ptr.
Definition at line 342 of file InputSource.cc.
References event(), eventLimitReached(), edm::EventPrincipal::id(), IsEvent, issueReports(), moduleDescription(), numberOfEventsBeforeBigSkip_, postRead(), readCount_, readEvent_(), receiver_, remainingEvents_, query::result, setTimestamp(), state_, and edm::EventPrincipal::time().
{ assert(state_ == IsEvent); assert(!eventLimitReached()); EventPrincipal* result = callWithTryCatchAndPrint<EventPrincipal*>( [this,&ep](){ return readEvent_(ep); }, "Calling InputSource::readEvent_" ); if(receiver_) { --numberOfEventsBeforeBigSkip_; } if(result != 0) { Event event(*result, moduleDescription()); postRead(event); if(remainingEvents_ > 0) --remainingEvents_; ++readCount_; setTimestamp(result->time()); issueReports(result->id()); } return result; }
virtual EventPrincipal* edm::InputSource::readEvent_ | ( | EventPrincipal & | eventPrincipal | ) | [private, pure virtual] |
Implemented in DQMRootSource, edm::ProducerSourceBase, edm::RawInputSource, LHESource, edm::PoolSource, and edm::DaqSource.
Referenced by readEvent().
std::unique_ptr< FileBlock > InputSource::readFile | ( | ) |
Read next file.
Definition at line 262 of file InputSource.cc.
References IsFile, limitReached(), readFile_(), and state_.
{ assert(state_ == IsFile); assert(!limitReached()); return callWithTryCatchAndPrint<std::unique_ptr<FileBlock> >( [this](){ return readFile_(); }, "Calling InputSource::readFile_" ); }
std::unique_ptr< FileBlock > InputSource::readFile_ | ( | ) | [private, virtual] |
Reimplemented in DQMRootSource, edm::PoolSource, and edm::StreamerInputSource.
Definition at line 282 of file InputSource.cc.
Referenced by readFile().
{ return std::unique_ptr<FileBlock>(new FileBlock); }
EventPrincipal * InputSource::readIt | ( | EventID const & | , |
EventPrincipal & | eventPrincipal | ||
) | [private, virtual] |
Reimplemented in edm::PoolSource.
Definition at line 425 of file InputSource.cc.
References Exception, and edm::errors::LogicError.
Referenced by readEvent().
{ throw Exception(errors::LogicError) << "InputSource::readIt()\n" << "Random access is not implemented for this type of Input Source\n" << "Contact a Framework Developer\n"; }
boost::shared_ptr< LuminosityBlockPrincipal > InputSource::readLuminosityBlock_ | ( | boost::shared_ptr< LuminosityBlockPrincipal > | lumiPrincipal | ) | [private, virtual] |
Reimplemented in DQMRootSource, LHESource, and edm::PoolSource.
Definition at line 336 of file InputSource.cc.
Referenced by readAndCacheLumi(), and readAndMergeLumi().
{
lumiPrincipal->fillLuminosityBlockPrincipal();
return lumiPrincipal;
}
boost::shared_ptr< LuminosityBlockAuxiliary > InputSource::readLuminosityBlockAuxiliary | ( | ) |
Read next luminosity block Auxilary.
Definition at line 232 of file InputSource.cc.
References readLuminosityBlockAuxiliary_().
Referenced by nextItemType().
{ return callWithTryCatchAndPrint<boost::shared_ptr<LuminosityBlockAuxiliary> >( [this](){ return readLuminosityBlockAuxiliary_(); }, "Calling InputSource::readLuminosityBlockAuxiliary_" ); }
virtual boost::shared_ptr<LuminosityBlockAuxiliary> edm::InputSource::readLuminosityBlockAuxiliary_ | ( | ) | [private, pure virtual] |
Implemented in DQMRootSource, edm::ProducerSourceBase, edm::RawInputSource, edm::PoolSource, and edm::DaqSource.
Referenced by readLuminosityBlockAuxiliary().
boost::shared_ptr< RunPrincipal > InputSource::readRun_ | ( | boost::shared_ptr< RunPrincipal > | runPrincipal | ) | [private, virtual] |
Reimplemented in DQMRootSource, LHESource, and edm::PoolSource.
Definition at line 327 of file InputSource.cc.
References runPrincipal().
Referenced by readAndCacheRun(), and readAndMergeRun().
{ // Note: For the moment, we do not support saving and restoring the state of the // random number generator if random numbers are generated during processing of runs // (e.g. beginRun(), endRun()) runPrincipal->fillRunPrincipal(); return runPrincipal; }
boost::shared_ptr< RunAuxiliary > InputSource::readRunAuxiliary | ( | ) |
Read next run Auxiliary.
Definition at line 238 of file InputSource.cc.
References readRunAuxiliary_().
Referenced by nextItemType().
{ return callWithTryCatchAndPrint<boost::shared_ptr<RunAuxiliary> >( [this](){ return readRunAuxiliary_(); }, "Calling InputSource::readRunAuxiliary_" ); }
virtual boost::shared_ptr<RunAuxiliary> edm::InputSource::readRunAuxiliary_ | ( | ) | [private, pure virtual] |
Implemented in DQMRootSource, edm::ProducerSourceBase, edm::RawInputSource, edm::PoolSource, and edm::DaqSource.
Referenced by readRunAuxiliary().
ProcessHistoryID const & InputSource::reducedProcessHistoryID | ( | ) | const |
Accessor for the reduced process history ID of the current run. This is the ID of the input process history which does not include the current process.
Definition at line 599 of file InputSource.cc.
References instance, and runAuxiliary().
{ assert(runAuxiliary()); return ProcessHistoryRegistry::instance()->extra().reduceProcessHistoryID(runAuxiliary()->processHistoryID()); }
void InputSource::registerProducts | ( | ) |
Register any produced products.
Definition at line 254 of file InputSource.cc.
References edm::ProductRegistryHelper::addToRegistry(), begin, relativeConstraints::empty, end, moduleDescription(), productRegistryUpdate(), and edm::ProductRegistryHelper::typeLabelList().
{ if(!typeLabelList().empty()) { addToRegistry(typeLabelList().begin(), typeLabelList().end(), moduleDescription(), productRegistryUpdate()); } }
int edm::InputSource::remainingEvents | ( | ) | const [inline] |
Accessor for remaining number of events to be read. -1 is used for unlimited.
Definition at line 179 of file InputSource.h.
References remainingEvents_.
Referenced by edm::RootInputFileSequence::remainingEvents(), and skipForForking().
{return remainingEvents_;}
int edm::InputSource::remainingLuminosityBlocks | ( | ) | const [inline] |
Accessor for remaining number of lumis to be read. -1 is used for unlimited.
Definition at line 187 of file InputSource.h.
References remainingLumis_.
Referenced by edm::RootInputFileSequence::remainingLuminosityBlocks(), and skipForForking().
{return remainingLumis_;}
void edm::InputSource::repeat | ( | ) | [inline] |
Reset the remaining number of events/lumis to the maximum number.
Definition at line 168 of file InputSource.h.
References maxEvents_, maxLumis_, remainingEvents_, and remainingLumis_.
{ remainingEvents_ = maxEvents_; remainingLumis_ = maxLumis_; }
void edm::InputSource::reset | ( | void | ) | const [inline, protected] |
Definition at line 334 of file InputSource.h.
References IsInvalid, resetLuminosityBlockAuxiliary(), resetRunAuxiliary(), and state_.
Referenced by edm::StreamerInputSource::resetAfterEndRun().
{ resetLuminosityBlockAuxiliary(); resetRunAuxiliary(); state_ = IsInvalid; }
void edm::InputSource::resetEventCached | ( | ) | [inline, protected] |
Definition at line 350 of file InputSource.h.
References eventCached_.
Referenced by LHESource::readEvent_(), edm::RawInputSource::readEvent_(), edm::ProducerSourceBase::readEvent_(), and rewind().
{eventCached_ = false;}
void edm::InputSource::resetLuminosityBlockAuxiliary | ( | bool | isNewLumi = true | ) | const [inline, protected] |
Definition at line 330 of file InputSource.h.
References lumiAuxiliary_, and newLumi_.
Referenced by edm::StreamerInputSource::deserializeEvent(), edm::RawInputSource::getNextItemType(), reset(), and edm::StreamerInputSource::resetAfterEndRun().
{ lumiAuxiliary_.reset(); newLumi_ = isNewLumi; }
void edm::InputSource::resetNewLumi | ( | ) | [inline, protected] |
Definition at line 346 of file InputSource.h.
References newLumi_.
Referenced by edm::RawInputSource::readLuminosityBlockAuxiliary_(), and edm::ProducerSourceBase::readLuminosityBlockAuxiliary_().
{newLumi_ = false;}
void edm::InputSource::resetNewRun | ( | ) | [inline, protected] |
Definition at line 343 of file InputSource.h.
References newRun_.
Referenced by edm::RawInputSource::readRunAuxiliary_(), and edm::ProducerSourceBase::readRunAuxiliary_().
{newRun_ = false;}
void edm::InputSource::resetRunAuxiliary | ( | bool | isNewRun = true | ) | const [inline, protected] |
Definition at line 326 of file InputSource.h.
References newLumi_, newRun_, and runAuxiliary_.
Referenced by edm::RawInputSource::getNextItemType(), reset(), and edm::StreamerInputSource::resetAfterEndRun().
{ runAuxiliary_.reset(); newRun_ = newLumi_ = isNewRun; }
ProcessingController::ReverseState InputSource::reverseState | ( | ) | const |
Definition at line 549 of file InputSource.cc.
References reverseState_().
{ return callWithTryCatchAndPrint<ProcessingController::ReverseState>( [this](){ return reverseState_(); }, "Calling InputSource::reverseState__" ); }
ProcessingController::ReverseState InputSource::reverseState_ | ( | ) | const [private, virtual] |
Reimplemented in edm::PoolSource.
Definition at line 594 of file InputSource.cc.
References edm::ProcessingController::kUnknownReverse.
Referenced by reverseState().
{ return ProcessingController::kUnknownReverse; }
void InputSource::rewind | ( | ) |
Begin again at the first event.
Definition at line 392 of file InputSource.cc.
References decreaseRemainingEventsBy(), IsInvalid, maxEvents_, receiver_, remainingEvents_, resetEventCached(), rewind_(), setNewLumi(), setNewRun(), skip(), and state_.
Referenced by postForkReacquireResources().
{ state_ = IsInvalid; remainingEvents_ = maxEvents_; setNewRun(); setNewLumi(); resetEventCached(); callWithTryCatchAndPrint<void>( [this](){ rewind_(); }, "Calling InputSource::rewind_" ); if(receiver_) { unsigned int numberToSkip = receiver_->numberToSkip(); skip(numberToSkip); decreaseRemainingEventsBy(numberToSkip); } }
void InputSource::rewind_ | ( | ) | [private, virtual] |
Reimplemented in edm::ProducerSourceBase, edm::RawInputSource, and edm::PoolSource.
Definition at line 466 of file InputSource.cc.
References Exception, and edm::errors::LogicError.
Referenced by rewind().
{ throw Exception(errors::LogicError) << "InputSource::rewind()\n" << "Forking and random access are not implemented for this type of Input Source\n" << "Contact a Framework Developer\n"; }
RunNumber_t InputSource::run | ( | void | ) | const |
Accessor for current run number.
Reimplemented in edm::ProducerSourceBase.
Definition at line 605 of file InputSource.cc.
References runAuxiliary().
Referenced by edm::DQMHttpSource::checkNextEvent(), edm::StreamerInputSource::deserializeEvent(), doBeginRun(), and doEndRun().
{ assert(runAuxiliary()); return runAuxiliary()->run(); }
boost::shared_ptr<RunAuxiliary> edm::InputSource::runAuxiliary | ( | ) | const [inline] |
Called by the framework to merge or insert run in principal cache.
Definition at line 244 of file InputSource.h.
References runAuxiliary_.
Referenced by edm::DQMHttpSource::checkNextEvent(), edm::StreamerInputSource::deserializeEvent(), edm::RawInputSource::getNextItemType(), readAndCacheRun(), LHESource::readRun_(), edm::RawInputSource::readRunAuxiliary_(), reducedProcessHistoryID(), and run().
{return runAuxiliary_;}
boost::shared_ptr<RunPrincipal> const edm::InputSource::runPrincipal | ( | ) | const [protected] |
Referenced by readRun_(), and LHESource::readRun_().
void edm::InputSource::setEventCached | ( | ) | [inline, protected] |
Called by the framework to merge or ached() const {return eventCached_;}.
Definition at line 349 of file InputSource.h.
References eventCached_.
Referenced by edm::DQMHttpSource::checkNextEvent(), edm::StreamerInputSource::deserializeEvent(), and edm::ProducerSourceBase::getNextItemType().
{eventCached_ = true;}
void InputSource::setLumi | ( | LuminosityBlockNumber_t | lb | ) | [private, virtual] |
Reimplemented in edm::DaqSource.
Definition at line 441 of file InputSource.cc.
References Exception, and edm::errors::LogicError.
Referenced by setLuminosityBlockNumber_t().
{ throw Exception(errors::LogicError) << "InputSource::setLumi()\n" << "Luminosity Block ID cannot be modified for this type of Input Source\n" << "Contact a Framework Developer\n"; }
void edm::InputSource::setLuminosityBlockAuxiliary | ( | LuminosityBlockAuxiliary * | lbp | ) | [inline, protected] |
Definition at line 322 of file InputSource.h.
References lumiAuxiliary_, and newLumi_.
Referenced by edm::DQMHttpSource::checkNextEvent(), and edm::StreamerInputSource::deserializeEvent().
{ lumiAuxiliary_.reset(lbp); newLumi_ = true; }
void edm::InputSource::setLuminosityBlockNumber_t | ( | LuminosityBlockNumber_t | lb | ) | [inline] |
Set the luminosity block ID.
Definition at line 153 of file InputSource.h.
References setLumi().
{setLumi(lb);}
void edm::InputSource::setNewLumi | ( | ) | [inline, protected] |
Definition at line 345 of file InputSource.h.
References newLumi_.
Referenced by edm::ProducerSourceBase::getNextItemType(), rewind(), edm::ProducerSourceBase::rewind_(), and edm::ProducerSourceBase::skip().
{newLumi_ = true;}
void edm::InputSource::setNewRun | ( | ) | [inline, protected] |
Definition at line 342 of file InputSource.h.
References newRun_.
Referenced by edm::ProducerSourceBase::getNextItemType(), rewind(), edm::ProducerSourceBase::rewind_(), and edm::ProducerSourceBase::skip().
{newRun_ = true;}
void InputSource::setRun | ( | RunNumber_t | r | ) | [private, virtual] |
Reimplemented in edm::StreamerInputSource, and edm::DaqSource.
Definition at line 433 of file InputSource.cc.
References Exception, and edm::errors::LogicError.
Referenced by setRunNumber().
{ throw Exception(errors::LogicError) << "InputSource::setRun()\n" << "Run number cannot be modified for this type of Input Source\n" << "Contact a Framework Developer\n"; }
void edm::InputSource::setRunAuxiliary | ( | RunAuxiliary * | rp | ) | [inline, protected] |
Definition at line 318 of file InputSource.h.
References newLumi_, newRun_, and runAuxiliary_.
Referenced by edm::DQMHttpSource::checkNextEvent(), and edm::StreamerInputSource::deserializeEvent().
{ runAuxiliary_.reset(rp); newRun_ = newLumi_ = true; }
void edm::InputSource::setRunNumber | ( | RunNumber_t | r | ) | [inline] |
void edm::InputSource::setTimestamp | ( | Timestamp const & | theTime | ) | [inline, protected] |
To set the current time, as seen by the input source.
Definition at line 314 of file InputSource.h.
References time_.
Referenced by edm::DaqSource::DaqSource(), edm::ProducerSourceBase::ProducerSourceBase(), edm::RawInputSource::RawInputSource(), and readEvent().
{time_ = theTime;}
void InputSource::skip | ( | int | offset | ) | [protected, virtual] |
Reimplemented in edm::ProducerSourceBase, edm::PoolSource, edm::StreamerFileReader, and edm::DaqSource.
Definition at line 449 of file InputSource.cc.
References Exception, and edm::errors::LogicError.
Referenced by rewind(), and skipEvents().
{ throw Exception(errors::LogicError) << "InputSource::skip()\n" << "Forking and random access are not implemented for this type of Input Source\n" << "Contact a Framework Developer\n"; }
void InputSource::skipEvents | ( | int | offset | ) |
Skip the number of events specified. Offset may be negative.
Definition at line 382 of file InputSource.cc.
References evf::evtn::offset(), and skip().
Referenced by nextItemType_(), and skipForForking().
bool InputSource::skipForForking | ( | ) |
Skips the correct number of events if this is a forked process returns false if we are out of events
Definition at line 144 of file InputSource.cc.
References decreaseRemainingEventsBy(), eventLimitReached(), numberOfEventsBeforeBigSkip_, receiver_, remainingEvents(), remainingLuminosityBlocks(), and skipEvents().
{ if(eventLimitReached()) { return false; } if(receiver_ && 0 == numberOfEventsBeforeBigSkip_) { receiver_->receive(); unsigned long toSkip = receiver_->numberToSkip(); if(0 != toSkip) { skipEvents(toSkip); decreaseRemainingEventsBy(toSkip); } numberOfEventsBeforeBigSkip_ = receiver_->numberOfConsecutiveIndices(); if(0 == numberOfEventsBeforeBigSkip_ or 0 == remainingEvents() or 0 == remainingLuminosityBlocks()) { return false; } } return true; }
ItemType edm::InputSource::state | ( | ) | const [inline, protected] |
Definition at line 317 of file InputSource.h.
References state_.
Referenced by edm::ProducerSourceBase::getNextItemType(), and edm::RawInputSource::getNextItemType().
{return state_;}
Timestamp const& edm::InputSource::timestamp | ( | ) | const [inline] |
Accessor for the current time, as seen by the input source.
Definition at line 224 of file InputSource.h.
References time_.
{return time_;}
boost::shared_ptr<ActivityRegistry> edm::InputSource::actReg_ [private] |
Definition at line 390 of file InputSource.h.
Referenced by actReg().
boost::shared_ptr<BranchIDListHelper> edm::InputSource::branchIDListHelper_ [private] |
Definition at line 399 of file InputSource.h.
Referenced by branchIDListHelper().
bool edm::InputSource::eventCached_ [private] |
Definition at line 405 of file InputSource.h.
Referenced by eventCached(), resetEventCached(), and setEventCached().
boost::shared_ptr<LuminosityBlockAuxiliary> edm::InputSource::lumiAuxiliary_ [mutable, private] |
Definition at line 408 of file InputSource.h.
Referenced by luminosityBlockAuxiliary(), nextItemType(), resetLuminosityBlockAuxiliary(), and setLuminosityBlockAuxiliary().
int edm::InputSource::maxEvents_ [private] |
Reimplemented in LmfSource.
Definition at line 391 of file InputSource.h.
Referenced by maxEvents(), repeat(), and rewind().
int edm::InputSource::maxLumis_ [private] |
Definition at line 393 of file InputSource.h.
Referenced by maxLuminosityBlocks(), and repeat().
ModuleDescription const edm::InputSource::moduleDescription_ [private] |
Definition at line 397 of file InputSource.h.
Referenced by moduleDescription().
bool edm::InputSource::newLumi_ [mutable, private] |
Definition at line 404 of file InputSource.h.
Referenced by newLumi(), resetLuminosityBlockAuxiliary(), resetNewLumi(), resetRunAuxiliary(), setLuminosityBlockAuxiliary(), setNewLumi(), and setRunAuxiliary().
bool edm::InputSource::newRun_ [mutable, private] |
Definition at line 403 of file InputSource.h.
Referenced by newRun(), resetNewRun(), resetRunAuxiliary(), setNewRun(), and setRunAuxiliary().
unsigned int edm::InputSource::numberOfEventsBeforeBigSkip_ [private] |
Definition at line 413 of file InputSource.h.
Referenced by postForkReacquireResources(), readEvent(), and skipForForking().
bool const edm::InputSource::primary_ [private] |
Definition at line 400 of file InputSource.h.
Referenced by InputSource(), and primary().
std::string edm::InputSource::processGUID_ [private] |
Definition at line 401 of file InputSource.h.
Referenced by processGUID().
Definition at line 396 of file InputSource.h.
Referenced by InputSource(), and processingMode().
boost::shared_ptr<ProductRegistry const> edm::InputSource::productRegistry_ [private] |
Definition at line 398 of file InputSource.h.
Referenced by productRegistry(), readAndCacheLumi(), and readAndCacheRun().
int edm::InputSource::readCount_ [private] |
Definition at line 395 of file InputSource.h.
Referenced by issueReports(), and readEvent().
boost::shared_ptr<edm::multicore::MessageReceiverForSource> edm::InputSource::receiver_ [private] |
Definition at line 412 of file InputSource.h.
Referenced by postForkReacquireResources(), readEvent(), rewind(), and skipForForking().
int edm::InputSource::remainingEvents_ [private] |
Definition at line 392 of file InputSource.h.
Referenced by decreaseRemainingEventsBy(), eventLimitReached(), readEvent(), remainingEvents(), repeat(), and rewind().
int edm::InputSource::remainingLumis_ [private] |
Definition at line 394 of file InputSource.h.
Referenced by lumiLimitReached(), readAndCacheLumi(), readAndMergeLumi(), remainingLuminosityBlocks(), and repeat().
boost::shared_ptr<RunAuxiliary> edm::InputSource::runAuxiliary_ [mutable, private] |
Definition at line 407 of file InputSource.h.
Referenced by nextItemType(), resetRunAuxiliary(), runAuxiliary(), and setRunAuxiliary().
ItemType edm::InputSource::state_ [mutable, private] |
Definition at line 406 of file InputSource.h.
Referenced by nextItemType(), readEvent(), readFile(), reset(), rewind(), and state().
std::string edm::InputSource::statusFileName_ [private] |
Definition at line 409 of file InputSource.h.
Referenced by InputSource(), and issueReports().
Timestamp edm::InputSource::time_ [private] |
Definition at line 402 of file InputSource.h.
Referenced by doEndLumi(), doEndRun(), setTimestamp(), and timestamp().