#include <Schedule.h>
Public Types | |
typedef std::vector < boost::shared_ptr < OutputModuleCommunicator > > | AllOutputModuleCommunicators |
typedef std::vector< Worker * > | AllWorkers |
typedef std::vector< std::string > | vstring |
typedef boost::shared_ptr< Worker > | WorkerPtr |
typedef std::vector< Worker * > | Workers |
Public Member Functions | |
AllWorkers const & | allWorkers () const |
returns the collection of pointers to workers More... | |
void | availablePaths (std::vector< std::string > &oLabelsToFill) const |
adds to oLabelsToFill the labels for all paths in the process More... | |
void | beginJob (ProductRegistry const &) |
void | beginStream (unsigned int) |
bool | changeModule (std::string const &iLabel, ParameterSet const &iPSet) |
void | clearCounters () |
Clear all the counters in the trigger report. More... | |
void | closeOutputFiles () |
void | enableEndPaths (bool active) |
void | endJob (ExceptionCollector &collector) |
bool | endPathsEnabled () const |
void | endStream (unsigned int) |
std::vector< ModuleDescription const * > | getAllModuleDescriptions () const |
void | getTriggerReport (TriggerReport &rep) const |
void | getTriggerTimingReport (TriggerTimingReport &rep) const |
void | modulesInPath (std::string const &iPathLabel, std::vector< std::string > &oLabelsToFill) const |
adds to oLabelsToFill in execution order the labels of all modules in path iPathLabel More... | |
void | openNewOutputFilesIfNeeded () |
void | openOutputFiles (FileBlock &fb) |
void | postForkReacquireResources (unsigned int iChildIndex, unsigned int iNumberOfChildren) |
void | preForkReleaseResources () |
template<typename T > | |
void | processOneEvent (unsigned int iStreamID, typename T::MyPrincipal &principal, EventSetup const &eventSetup, bool cleaningUpAfterException=false) |
template<typename T > | |
void | processOneGlobal (typename T::MyPrincipal &principal, EventSetup const &eventSetup, bool cleaningUpAfterException=false) |
template<typename T > | |
void | processOneStream (unsigned int iStreamID, typename T::MyPrincipal &principal, EventSetup const &eventSetup, bool cleaningUpAfterException=false) |
void | respondToCloseInputFile (FileBlock const &fb) |
void | respondToOpenInputFile (FileBlock const &fb) |
Schedule (ParameterSet &proc_pset, service::TriggerNamesService &tns, ProductRegistry &pregistry, BranchIDListHelper &branchIDListHelper, ExceptionToActionTable const &actions, boost::shared_ptr< ActivityRegistry > areg, boost::shared_ptr< ProcessConfiguration > processConfiguration, const ParameterSet *subProcPSet, PreallocationConfiguration const &config, ProcessContext const *processContext) | |
bool | shouldWeCloseOutput () const |
bool | terminate () const |
Return whether each output module has reached its maximum count. More... | |
int | totalEvents () const |
int | totalEventsFailed () const |
int | totalEventsPassed () const |
void | writeLumi (LuminosityBlockPrincipal const &lbp, ProcessContext const *) |
void | writeRun (RunPrincipal const &rp, ProcessContext const *) |
Private Member Functions | |
void | limitOutput (ParameterSet const &proc_pset, BranchIDLists const &branchIDLists) |
Private Attributes | |
AllOutputModuleCommunicators | all_output_communicators_ |
volatile bool | endpathsAreActive_ |
std::unique_ptr< GlobalSchedule > | globalSchedule_ |
boost::shared_ptr< ModuleRegistry > | moduleRegistry_ |
PreallocationConfiguration | preallocConfig_ |
std::shared_ptr < TriggerResultInserter > | resultsInserter_ |
std::vector< std::shared_ptr < StreamSchedule > > | streamSchedules_ |
bool | wantSummary_ |
Definition at line 109 of file Schedule.h.
typedef std::vector<boost::shared_ptr<OutputModuleCommunicator> > edm::Schedule::AllOutputModuleCommunicators |
Definition at line 114 of file Schedule.h.
typedef std::vector<Worker*> edm::Schedule::AllWorkers |
Definition at line 113 of file Schedule.h.
typedef std::vector<std::string> edm::Schedule::vstring |
Definition at line 111 of file Schedule.h.
typedef boost::shared_ptr<Worker> edm::Schedule::WorkerPtr |
Definition at line 112 of file Schedule.h.
typedef std::vector<Worker*> edm::Schedule::Workers |
Definition at line 116 of file Schedule.h.
edm::Schedule::Schedule | ( | ParameterSet & | proc_pset, |
service::TriggerNamesService & | tns, | ||
ProductRegistry & | pregistry, | ||
BranchIDListHelper & | branchIDListHelper, | ||
ExceptionToActionTable const & | actions, | ||
boost::shared_ptr< ActivityRegistry > | areg, | ||
boost::shared_ptr< ProcessConfiguration > | processConfiguration, | ||
const ParameterSet * | subProcPSet, | ||
PreallocationConfiguration const & | config, | ||
ProcessContext const * | processContext | ||
) |
Definition at line 351 of file Schedule.cc.
Schedule::AllWorkers const & edm::Schedule::allWorkers | ( | ) | const |
returns the collection of pointers to workers
Definition at line 947 of file Schedule.cc.
References globalSchedule_.
Referenced by changeModule(), getAllModuleDescriptions(), postForkReacquireResources(), preForkReleaseResources(), respondToCloseInputFile(), and respondToOpenInputFile().
void edm::Schedule::availablePaths | ( | std::vector< std::string > & | oLabelsToFill | ) | const |
adds to oLabelsToFill the labels for all paths in the process
Definition at line 952 of file Schedule.cc.
References streamSchedules_.
Referenced by edm::ScheduleInfo::availablePaths().
void edm::Schedule::beginJob | ( | ProductRegistry const & | iRegistry | ) |
Definition at line 890 of file Schedule.cc.
References globalSchedule_.
void edm::Schedule::beginStream | ( | unsigned int | iStreamID | ) |
Definition at line 894 of file Schedule.cc.
References streamSchedules_.
bool edm::Schedule::changeModule | ( | std::string const & | iLabel, |
ParameterSet const & | iPSet | ||
) |
clone the type of module with label iLabel but configure with iPSet. Returns true if successful.
Definition at line 911 of file Schedule.cc.
References allWorkers(), newFWLiteAna::found, globalSchedule_, moduleRegistry_, preallocConfig_, and streamSchedules_.
Referenced by edm::ModuleChanger::changeModule().
void edm::Schedule::clearCounters | ( | ) |
Clear all the counters in the trigger report.
Definition at line 1024 of file Schedule.cc.
References streamSchedules_.
void edm::Schedule::closeOutputFiles | ( | ) |
Definition at line 855 of file Schedule.cc.
References all_output_communicators_, edm::OutputModuleCommunicator::closeFile(), and edm::for_all().
void edm::Schedule::enableEndPaths | ( | bool | active | ) |
Turn end_paths "off" if "active" is false; turn end_paths "on" if "active" is true.
Definition at line 963 of file Schedule.cc.
References endpathsAreActive_, and streamSchedules_.
void edm::Schedule::endJob | ( | ExceptionCollector & | collector | ) |
Definition at line 507 of file Schedule.cc.
References edm::EventTimingSummary::cpuTime, edm::TriggerTimingReport::endPathSummaries, edm::TriggerReport::endPathSummaries, edm::TriggerTimingReport::eventSummary, edm::TriggerReport::eventSummary, getTriggerReport(), getTriggerTimingReport(), globalSchedule_, edm::ExceptionCollector::hasThrown(), max(), mod(), AlCaHLTBitMon_ParallelJobs::p, edm::EventTimingSummary::realTime, edm::EventTimingSummary::totalEvents, edm::EventSummary::totalEvents, totalEvents(), edm::EventSummary::totalEventsFailed, edm::EventSummary::totalEventsPassed, edm::TriggerTimingReport::trigPathSummaries, edm::TriggerReport::trigPathSummaries, wantSummary_, edm::TriggerTimingReport::workerSummaries, and edm::TriggerReport::workerSummaries.
bool edm::Schedule::endPathsEnabled | ( | ) | const |
Return true if end_paths are active, and false if they are inactive.
Definition at line 971 of file Schedule.cc.
References endpathsAreActive_.
void edm::Schedule::endStream | ( | unsigned int | iStreamID | ) |
Definition at line 899 of file Schedule.cc.
References streamSchedules_.
std::vector< ModuleDescription const * > edm::Schedule::getAllModuleDescriptions | ( | ) | const |
Return a vector allowing const access to all the ModuleDescriptions for this Schedule. *** N.B. *** Ownership of the ModuleDescriptions is not *** passed to the caller. Do not call delete on these *** pointers!
Definition at line 935 of file Schedule.cc.
References allWorkers(), AlCaHLTBitMon_ParallelJobs::p, query::result, and findQualityFiles::size.
Referenced by edm::ScheduleInfo::availableModuleLabels(), and edm::ScheduleInfo::parametersForModule().
void edm::Schedule::getTriggerReport | ( | TriggerReport & | rep | ) | const |
Return the trigger report information on paths, modules-in-path, modules-in-endpath, and modules.
Definition at line 976 of file Schedule.cc.
References edm::TriggerReport::eventSummary, streamSchedules_, edm::EventSummary::totalEvents, edm::EventSummary::totalEventsFailed, and edm::EventSummary::totalEventsPassed.
Referenced by endJob().
void edm::Schedule::getTriggerTimingReport | ( | TriggerTimingReport & | rep | ) | const |
Return the trigger timing report information on paths, modules-in-path, modules-in-endpath, and modules.
Definition at line 986 of file Schedule.cc.
References edm::EventTimingSummary::cpuTime, edm::TriggerTimingReport::eventSummary, edm::EventTimingSummary::realTime, streamSchedules_, and edm::EventTimingSummary::totalEvents.
Referenced by endJob().
|
private |
Definition at line 452 of file Schedule.cc.
References all_output_communicators_, trackerHits::c, edm::errors::Configuration, edm::ParameterSet::empty(), edm::hlt::Exception, edm::ParameterSet::getParameterNamesForType(), edm::ParameterSet::getParameterSetNames(), edm::ParameterSet::getUntrackedParameter(), edm::ParameterSet::getUntrackedParameterSet(), edm::OutputModuleDescription::maxEvents_, convertSQLitetoXML_cfg::output, edm::search_all(), and AlCaHLTBitMon_QueryRunRegistry::string.
void edm::Schedule::modulesInPath | ( | std::string const & | iPathLabel, |
std::vector< std::string > & | oLabelsToFill | ||
) | const |
adds to oLabelsToFill in execution order the labels of all modules in path iPathLabel
Definition at line 957 of file Schedule.cc.
References streamSchedules_.
Referenced by edm::ScheduleInfo::modulesInPath().
void edm::Schedule::openNewOutputFilesIfNeeded | ( | ) |
Definition at line 859 of file Schedule.cc.
References all_output_communicators_, edm::for_all(), and edm::OutputModuleCommunicator::openNewFileIfNeeded().
void edm::Schedule::openOutputFiles | ( | FileBlock & | fb | ) |
Definition at line 863 of file Schedule.cc.
References all_output_communicators_, edm::for_all(), and edm::OutputModuleCommunicator::openFile().
void edm::Schedule::postForkReacquireResources | ( | unsigned int | iChildIndex, |
unsigned int | iNumberOfChildren | ||
) |
Definition at line 907 of file Schedule.cc.
References allWorkers(), edm::for_all(), and edm::Worker::postForkReacquireResources().
void edm::Schedule::preForkReleaseResources | ( | ) |
Definition at line 904 of file Schedule.cc.
References allWorkers(), edm::for_all(), and edm::Worker::preForkReleaseResources().
void edm::Schedule::processOneEvent | ( | unsigned int | iStreamID, |
typename T::MyPrincipal & | principal, | ||
EventSetup const & | eventSetup, | ||
bool | cleaningUpAfterException = false |
||
) |
Definition at line 257 of file Schedule.h.
References streamSchedules_.
void edm::Schedule::processOneGlobal | ( | typename T::MyPrincipal & | principal, |
EventSetup const & | eventSetup, | ||
bool | cleaningUpAfterException = false |
||
) |
Definition at line 275 of file Schedule.h.
References globalSchedule_.
void edm::Schedule::processOneStream | ( | unsigned int | iStreamID, |
typename T::MyPrincipal & | principal, | ||
EventSetup const & | eventSetup, | ||
bool | cleaningUpAfterException = false |
||
) |
Definition at line 266 of file Schedule.h.
References streamSchedules_.
void edm::Schedule::respondToCloseInputFile | ( | FileBlock const & | fb | ) |
Definition at line 886 of file Schedule.cc.
References allWorkers(), edm::for_all(), and edm::Worker::respondToCloseInputFile().
void edm::Schedule::respondToOpenInputFile | ( | FileBlock const & | fb | ) |
Definition at line 882 of file Schedule.cc.
References allWorkers(), edm::for_all(), and edm::Worker::respondToOpenInputFile().
bool edm::Schedule::shouldWeCloseOutput | ( | ) | const |
Definition at line 875 of file Schedule.cc.
References all_output_communicators_, and edm::OutputModuleCommunicator::shouldWeCloseFile().
bool edm::Schedule::terminate | ( | void | ) | const |
Return whether each output module has reached its maximum count.
Definition at line 491 of file Schedule.cc.
References all_output_communicators_, and trackerHits::c.
int edm::Schedule::totalEvents | ( | ) | const |
Return the number of events this Schedule has tried to process (inclues both successes and failures, including failures due to exceptions during processing).
Definition at line 996 of file Schedule.cc.
References streamSchedules_.
Referenced by endJob().
int edm::Schedule::totalEventsFailed | ( | ) | const |
Return the number of events that have not passed any trigger. (N.B. totalEventsFailed() + totalEventsPassed() == totalEvents()
Definition at line 1014 of file Schedule.cc.
References streamSchedules_.
int edm::Schedule::totalEventsPassed | ( | ) | const |
Return the number of events which have been passed by one or more trigger paths.
Definition at line 1005 of file Schedule.cc.
References streamSchedules_.
void edm::Schedule::writeLumi | ( | LuminosityBlockPrincipal const & | lbp, |
ProcessContext const * | processContext | ||
) |
Definition at line 871 of file Schedule.cc.
References all_output_communicators_, edm::for_all(), and edm::OutputModuleCommunicator::writeLumi().
void edm::Schedule::writeRun | ( | RunPrincipal const & | rp, |
ProcessContext const * | processContext | ||
) |
Definition at line 867 of file Schedule.cc.
References all_output_communicators_, edm::for_all(), and edm::OutputModuleCommunicator::writeRun().
|
private |
Definition at line 246 of file Schedule.h.
Referenced by closeOutputFiles(), limitOutput(), openNewOutputFilesIfNeeded(), openOutputFiles(), shouldWeCloseOutput(), terminate(), writeLumi(), and writeRun().
|
private |
Definition at line 252 of file Schedule.h.
Referenced by enableEndPaths(), and endPathsEnabled().
|
private |
Definition at line 244 of file Schedule.h.
Referenced by allWorkers(), beginJob(), changeModule(), endJob(), and processOneGlobal().
|
private |
Definition at line 241 of file Schedule.h.
Referenced by changeModule().
|
private |
Definition at line 247 of file Schedule.h.
Referenced by changeModule().
|
private |
Definition at line 240 of file Schedule.h.
|
private |
Definition at line 242 of file Schedule.h.
Referenced by availablePaths(), beginStream(), changeModule(), clearCounters(), enableEndPaths(), endStream(), getTriggerReport(), getTriggerTimingReport(), modulesInPath(), processOneEvent(), processOneStream(), totalEvents(), totalEventsFailed(), and totalEventsPassed().
|
private |
Definition at line 250 of file Schedule.h.
Referenced by endJob().