LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
Classes | |
struct | Config |
struct | PerScheduleData |
Public Types | |
using | Parameters = ServiceTable< Config > |
Public Member Functions | |
TimeTracker (Parameters const &, ActivityRegistry &) | |
Static Public Attributes | |
static constexpr bool | service_handle_allowed {false} |
Private Types | |
template<unsigned SIZE> | |
using | name_array = cet::sqlite::name_array< SIZE > |
using | timeSource_t = cet::sqlite::Ntuple< uint32_t, uint32_t, uint32_t, string, double > |
using | timeEvent_t = cet::sqlite::Ntuple< uint32_t, uint32_t, uint32_t, double > |
using | timeModule_t = cet::sqlite::Ntuple< uint32_t, uint32_t, uint32_t, string, string, string, double > |
Private Member Functions | |
void | postSourceConstruction (ModuleDescription const &) |
void | postEndJob () |
void | preEventReading (ScheduleContext) |
void | postEventReading (Event const &, ScheduleContext) |
void | preEventProcessing (Event const &, ScheduleContext) |
void | postEventProcessing (Event const &, ScheduleContext) |
void | startTime (ModuleContext const &mc) |
void | recordTime (ModuleContext const &mc, string const &suffix) |
void | logToDestination_ (Statistics const &evt, vector< Statistics > const &modules) |
bool | anyTableFull_ () const |
Private Attributes | |
tbb::concurrent_unordered_map< ConcurrentKey, PerScheduleData, ConcurrentKeyHasher > | data_ |
bool const | printSummary_ |
unique_ptr< cet::sqlite::Connection > const | db_ |
bool const | overwriteContents_ |
string | sourceType_ {} |
name_array< 5u > const | timeSourceColumnNames_ |
name_array< 4u > const | timeEventColumnNames_ |
name_array< 7u > const | timeModuleColumnNames_ |
timeSource_t | timeSourceTable_ |
timeEvent_t | timeEventTable_ |
timeModule_t | timeModuleTable_ |
Definition at line 124 of file TimeTracker_service.cc.
|
private |
Definition at line 146 of file TimeTracker_service.cc.
Definition at line 136 of file TimeTracker_service.cc.
|
private |
Definition at line 150 of file TimeTracker_service.cc.
|
private |
Definition at line 152 of file TimeTracker_service.cc.
|
private |
Definition at line 148 of file TimeTracker_service.cc.
|
explicit |
Definition at line 182 of file TimeTracker_service.cc.
References db_, overwriteContents_, postEndJob(), postEventProcessing(), postEventReading(), postSourceConstruction(), preEventProcessing(), preEventReading(), recordTime(), startTime(), timeEventColumnNames_, timeEventTable_, timeModuleColumnNames_, timeModuleTable_, timeSourceColumnNames_, and timeSourceTable_.
|
private |
Definition at line 412 of file TimeTracker_service.cc.
References DECLARE_ART_SERVICE, DEFINE_ART_SERVICE, art::SHARED, timeEventTable_, timeModuleTable_, and timeSourceTable_.
Referenced by postEndJob().
|
private |
Definition at line 374 of file TimeTracker_service.cc.
References art::left().
Referenced by postEndJob().
|
private |
Definition at line 228 of file TimeTracker_service.cc.
References anyTableFull_(), db_, logToDestination_(), printSummary_, r, sourceType_, timeEventTable_, timeModuleTable_, and timeSourceTable_.
Referenced by TimeTracker().
|
private |
Definition at line 344 of file TimeTracker_service.cc.
References d, data_, art::ScheduleContext::id(), and timeEventTable_.
Referenced by TimeTracker().
|
private |
Definition at line 325 of file TimeTracker_service.cc.
References d, data_, art::ScheduleContext::id(), art::Event::id(), sourceType_, and timeSourceTable_.
Referenced by TimeTracker().
|
private |
Definition at line 311 of file TimeTracker_service.cc.
References art::ModuleDescription::moduleName(), and sourceType_.
Referenced by TimeTracker().
|
private |
Definition at line 335 of file TimeTracker_service.cc.
References d, data_, e, and art::ScheduleContext::id().
Referenced by TimeTracker().
|
private |
Definition at line 317 of file TimeTracker_service.cc.
References d, data_, art::ScheduleContext::id(), and art::EventID::invalidEvent().
Referenced by TimeTracker().
|
private |
Definition at line 360 of file TimeTracker_service.cc.
References d, data_, art::ModuleContext::moduleLabel(), art::ModuleContext::moduleName(), art::ModuleContext::pathName(), and timeModuleTable_.
Referenced by TimeTracker().
|
private |
Definition at line 353 of file TimeTracker_service.cc.
References data_, and art::ModuleContext::scheduleID().
Referenced by TimeTracker().
|
private |
Definition at line 169 of file TimeTracker_service.cc.
Referenced by postEventProcessing(), postEventReading(), preEventProcessing(), preEventReading(), recordTime(), and startTime().
|
private |
Definition at line 171 of file TimeTracker_service.cc.
Referenced by postEndJob(), and TimeTracker().
|
private |
Definition at line 172 of file TimeTracker_service.cc.
Referenced by TimeTracker().
|
private |
Definition at line 170 of file TimeTracker_service.cc.
Referenced by postEndJob().
|
static |
Definition at line 126 of file TimeTracker_service.cc.
|
private |
Definition at line 173 of file TimeTracker_service.cc.
Referenced by postEndJob(), postEventReading(), and postSourceConstruction().
|
private |
Definition at line 175 of file TimeTracker_service.cc.
Referenced by TimeTracker().
|
private |
Definition at line 178 of file TimeTracker_service.cc.
Referenced by anyTableFull_(), postEndJob(), postEventProcessing(), and TimeTracker().
|
private |
Definition at line 176 of file TimeTracker_service.cc.
Referenced by TimeTracker().
|
private |
Definition at line 179 of file TimeTracker_service.cc.
Referenced by anyTableFull_(), postEndJob(), recordTime(), and TimeTracker().
|
private |
Definition at line 174 of file TimeTracker_service.cc.
Referenced by TimeTracker().
|
private |
Definition at line 177 of file TimeTracker_service.cc.
Referenced by anyTableFull_(), postEndJob(), postEventReading(), and TimeTracker().