LArSoft
v07_13_02
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "EndPathExecutor.h"
Private Types | |
using | OutputWorkers = std::vector< OutputWorker * > |
using | OutputWorkerSet = std::set< OutputWorker * > |
Private Member Functions | |
void | resetAll () |
template<typename T > | |
void | runEndPaths (typename T::MyPrincipal &) |
template<class F > | |
void | doForAllEnabledWorkers_ (F f) |
template<class F > | |
void | doForAllEnabledOutputWorkers_ (F f) |
Private Attributes | |
PathsInfo & | endPathInfo_ |
ActionTable * | act_table_ |
ActivityRegistry & | actReg_ |
OutputWorkers | outputWorkers_ |
OutputWorkerSet | outputWorkersToOpen_ |
OutputWorkerSet | outputWorkersToClose_ {} |
std::vector< unsigned char > | workersEnabled_ |
std::vector< unsigned char > | outputWorkersEnabled_ |
OutputFileStatus | fileStatus_ {OutputFileStatus::Closed} |
std::unique_ptr< RangeSetHandler > | runRangeSetHandler_ {nullptr} |
std::unique_ptr< RangeSetHandler > | subRunRangeSetHandler_ {nullptr} |
Definition at line 41 of file EndPathExecutor.h.
|
private |
Definition at line 90 of file EndPathExecutor.h.
|
private |
Definition at line 91 of file EndPathExecutor.h.
art::EndPathExecutor::EndPathExecutor | ( | PathManager & | pm, |
ActionTable & | actions, | ||
ActivityRegistry & | areg, | ||
MasterProductRegistry & | mpr | ||
) |
Definition at line 26 of file EndPathExecutor.cc.
References act_table_, actReg_, evd::details::begin(), evd::details::end(), art::PathManager::endPathInfo(), endPathInfo_, outputWorkers_, outputWorkersEnabled_, outputWorkersToOpen_, selectProducts(), art::PathsInfo::workers(), and workersEnabled_.
void art::EndPathExecutor::beginJob | ( | ) |
Definition at line 334 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), and w.
void art::EndPathExecutor::closeAllOutputFiles | ( | ) |
Definition at line 90 of file EndPathExecutor.cc.
References actReg_, art::OutputWorker::closeFile(), doForAllEnabledOutputWorkers_(), art::Worker::label(), art::OutputWorker::lastClosedFileName(), art::ActivityRegistry::sPostCloseOutputFile, and art::ActivityRegistry::sPreCloseOutputFile.
void art::EndPathExecutor::closeSomeOutputFiles | ( | ) |
Definition at line 269 of file EndPathExecutor.cc.
References actReg_, outputWorkersToClose_, outputWorkersToOpen_, setOutputFileStatus(), art::ActivityRegistry::sPostCloseOutputFile, art::ActivityRegistry::sPreCloseOutputFile, and art::Switching.
|
private |
Definition at line 170 of file EndPathExecutor.h.
References outputWorkers_, and outputWorkersEnabled_.
Referenced by closeAllOutputFiles(), incrementInputFileNumber(), openAllOutputFiles(), recordOutputClosureRequests(), selectProducts(), setAuxiliaryRangeSetID(), setOutputFileStatus(), writeEvent(), writeRun(), and writeSubRun().
|
private |
Definition at line 158 of file EndPathExecutor.h.
References endPathInfo_, art::PathsInfo::workers(), and workersEnabled_.
Referenced by beginJob(), endJob(), resetAll(), respondToCloseInputFile(), respondToCloseOutputFiles(), respondToOpenInputFile(), and respondToOpenOutputFiles().
void art::EndPathExecutor::endJob | ( | ) |
Definition at line 61 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), e, art::Worker::endJob(), art::errors::EndJobFailure, and w.
void art::EndPathExecutor::incrementInputFileNumber | ( | ) |
Definition at line 242 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_().
void art::EndPathExecutor::openAllOutputFiles | ( | FileBlock & | fb | ) |
Definition at line 101 of file EndPathExecutor.cc.
References actReg_, doForAllEnabledOutputWorkers_(), art::Worker::label(), art::OutputWorker::openFile(), and art::ActivityRegistry::sPostOpenOutputFile.
void art::EndPathExecutor::openSomeOutputFiles | ( | FileBlock const & | fb | ) |
Definition at line 295 of file EndPathExecutor.cc.
References actReg_, fb(), art::Open, outputWorkersToOpen_, setOutputFileStatus(), and art::ActivityRegistry::sPostOpenOutputFile.
bool art::EndPathExecutor::outputsToClose | ( | ) | const |
Definition at line 255 of file EndPathExecutor.cc.
References outputWorkersToClose_.
bool art::EndPathExecutor::outputsToOpen | ( | ) | const |
Definition at line 249 of file EndPathExecutor.cc.
References outputWorkersToOpen_.
void art::EndPathExecutor::process | ( | typename T::MyPrincipal & | principal | ) |
Definition at line 118 of file EndPathExecutor.h.
References act_table_, art::PathsInfo::addEvent(), art::PathsInfo::addPass(), endPathInfo_, art::Event, art::errors::EventProcessorFailure, art::ActionTable::find(), art::actions::IgnoreCompletely, art::PathsInfo::pathPtrs(), resetAll(), and art::actions::Rethrow.
void art::EndPathExecutor::recordOutputClosureRequests | ( | Granularity | b | ) |
Definition at line 212 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), and outputWorkersToClose_.
|
private |
Definition at line 340 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), and w.
Referenced by process().
void art::EndPathExecutor::respondToCloseInputFile | ( | FileBlock const & | fb | ) |
Definition at line 316 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), and w.
void art::EndPathExecutor::respondToCloseOutputFiles | ( | FileBlock const & | fb | ) |
Definition at line 328 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), and w.
void art::EndPathExecutor::respondToOpenInputFile | ( | FileBlock const & | fb | ) |
Definition at line 310 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), and w.
void art::EndPathExecutor::respondToOpenOutputFiles | ( | FileBlock const & | fb | ) |
Definition at line 322 of file EndPathExecutor.cc.
References doForAllEnabledWorkers_(), and w.
|
private |
void art::EndPathExecutor::seedRunRangeSet | ( | std::unique_ptr< RangeSetHandler > | rsh | ) |
Definition at line 143 of file EndPathExecutor.cc.
References runRangeSetHandler_.
void art::EndPathExecutor::seedSubRunRangeSet | ( | std::unique_ptr< RangeSetHandler > | rsh | ) |
Definition at line 149 of file EndPathExecutor.cc.
References subRunRangeSetHandler_.
void art::EndPathExecutor::selectProducts | ( | ProductList const & | productList | ) |
Definition at line 205 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), and w.
Referenced by EndPathExecutor().
void art::EndPathExecutor::setAuxiliaryRangeSetID | ( | SubRunPrincipal & | srp | ) |
Definition at line 155 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), fileStatus_, runRangeSetHandler_, subRunRangeSetHandler_, art::Switching, art::SubRunPrincipal::updateSeenRanges(), and w.
void art::EndPathExecutor::setAuxiliaryRangeSetID | ( | RunPrincipal & | rp | ) |
Definition at line 192 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), fileStatus_, runRangeSetHandler_, art::Switching, art::RunPrincipal::updateSeenRanges(), and w.
void art::EndPathExecutor::setOutputFileStatus | ( | OutputFileStatus | ofs | ) |
Definition at line 288 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), and fileStatus_.
Referenced by closeSomeOutputFiles(), and openSomeOutputFiles().
bool art::EndPathExecutor::someOutputsOpen | ( | ) | const |
bool art::EndPathExecutor::terminate | ( | ) | const |
Definition at line 45 of file EndPathExecutor.cc.
References outputWorkers_, and w.
void art::EndPathExecutor::writeEvent | ( | EventPrincipal & | ep | ) |
Definition at line 128 of file EndPathExecutor.cc.
References actReg_, doForAllEnabledOutputWorkers_(), art::EventPrincipal::id(), art::EventPrincipal::isLastInSubRun(), runRangeSetHandler_, art::ActivityRegistry::sPostWriteEvent, art::ActivityRegistry::sPreWriteEvent, subRunRangeSetHandler_, and w.
void art::EndPathExecutor::writeRun | ( | RunPrincipal & | rp | ) |
Definition at line 110 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), fileStatus_, runRangeSetHandler_, art::Switching, and w.
void art::EndPathExecutor::writeSubRun | ( | SubRunPrincipal & | srp | ) |
Definition at line 119 of file EndPathExecutor.cc.
References doForAllEnabledOutputWorkers_(), fileStatus_, subRunRangeSetHandler_, art::Switching, and w.
|
private |
Definition at line 104 of file EndPathExecutor.h.
Referenced by EndPathExecutor(), and process().
|
private |
Definition at line 105 of file EndPathExecutor.h.
Referenced by closeAllOutputFiles(), closeSomeOutputFiles(), EndPathExecutor(), openAllOutputFiles(), openSomeOutputFiles(), and writeEvent().
|
private |
Definition at line 103 of file EndPathExecutor.h.
Referenced by doForAllEnabledWorkers_(), EndPathExecutor(), and process().
|
private |
Definition at line 111 of file EndPathExecutor.h.
Referenced by setAuxiliaryRangeSetID(), setOutputFileStatus(), writeRun(), and writeSubRun().
|
private |
Definition at line 106 of file EndPathExecutor.h.
Referenced by doForAllEnabledOutputWorkers_(), EndPathExecutor(), someOutputsOpen(), and terminate().
|
private |
Definition at line 110 of file EndPathExecutor.h.
Referenced by doForAllEnabledOutputWorkers_(), and EndPathExecutor().
|
private |
Definition at line 108 of file EndPathExecutor.h.
Referenced by closeSomeOutputFiles(), outputsToClose(), and recordOutputClosureRequests().
|
private |
Definition at line 107 of file EndPathExecutor.h.
Referenced by closeSomeOutputFiles(), EndPathExecutor(), openSomeOutputFiles(), and outputsToOpen().
|
private |
Definition at line 112 of file EndPathExecutor.h.
Referenced by seedRunRangeSet(), setAuxiliaryRangeSetID(), writeEvent(), and writeRun().
|
private |
Definition at line 113 of file EndPathExecutor.h.
Referenced by seedSubRunRangeSet(), setAuxiliaryRangeSetID(), writeEvent(), and writeSubRun().
|
private |
Definition at line 109 of file EndPathExecutor.h.
Referenced by doForAllEnabledWorkers_(), and EndPathExecutor().