ATLAS Offline Software
|
an IAlgorithmWrapper that adds a timer to an algorithm More...
#include <AlgorithmTimerWrapper.h>
Public Types | |
using | clock_type = std::chrono::high_resolution_clock |
the clock we use for our timer More... | |
Public Member Functions | |
void | testInvariant () const |
test the invariant of this object More... | |
AlgorithmTimerWrapper () | |
standard default constructor for serialization More... | |
AlgorithmTimerWrapper (std::unique_ptr< IAlgorithmWrapper > &&val_algorithm) | |
standard constructor More... | |
virtual std::string_view | getName () const override |
virtual bool | hasName (const std::string &name) const override |
whether this algorithm has the given name More... | |
virtual std::unique_ptr< IAlgorithmWrapper > | makeClone () const override |
make a clone of this algorithm More... | |
virtual Algorithm * | getLegacyAlg () override |
get the legacy algorithm, if we wrap one More... | |
virtual StatusCode | initialize (const AlgorithmWorkerData &workerData) override |
call initialize on the algorithm More... | |
virtual StatusCode | execute () override |
call execute on the algorithm More... | |
virtual StatusCode | postExecute () override |
call postExecute on the algorithm More... | |
virtual StatusCode | finalize () override |
call finalize on the algorithm More... | |
virtual ::StatusCode | fileExecute () override |
call fileExecute on the algorithm More... | |
virtual ::StatusCode | beginInputFile () override |
call beginInputFile on the algorithm More... | |
virtual ::StatusCode | endInputFile () override |
call endInputFile on the algorithm More... | |
Private Attributes | |
std::unique_ptr< IAlgorithmWrapper > | m_algorithm |
the actual algorithm More... | |
clock_type::duration | m_time_global {} |
the timers for different calls More... | |
clock_type::duration | m_time_file {} |
clock_type::duration | m_time_event {} |
an IAlgorithmWrapper that adds a timer to an algorithm
Definition at line 26 of file AlgorithmTimerWrapper.h.
using EL::AlgorithmTimerWrapper::clock_type = std::chrono::high_resolution_clock |
the clock we use for our timer
Definition at line 34 of file AlgorithmTimerWrapper.h.
|
inline |
standard default constructor for serialization
Definition at line 40 of file AlgorithmTimerWrapper.h.
EL::AlgorithmTimerWrapper::AlgorithmTimerWrapper | ( | std::unique_ptr< IAlgorithmWrapper > && | val_algorithm | ) |
standard constructor
Definition at line 33 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call beginInputFile on the algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 159 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call endInputFile on the algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 174 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call execute on the algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 95 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call fileExecute on the algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 144 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call finalize on the algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 125 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
get the legacy algorithm, if we wrap one
Reimplemented from EL::IAlgorithmWrapper.
Definition at line 71 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
Implements EL::IAlgorithmWrapper.
Definition at line 42 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
whether this algorithm has the given name
Implements EL::IAlgorithmWrapper.
Definition at line 51 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call initialize on the algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 80 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
make a clone of this algorithm
Implements EL::IAlgorithmWrapper.
Definition at line 60 of file AlgorithmTimerWrapper.cxx.
|
overridevirtual |
call postExecute on the algorithm
Reimplemented from EL::IAlgorithmWrapper.
Definition at line 110 of file AlgorithmTimerWrapper.cxx.
void EL::AlgorithmTimerWrapper::testInvariant | ( | ) | const |
test the invariant of this object
Definition at line 26 of file AlgorithmTimerWrapper.cxx.
|
private |
|
private |
Definition at line 87 of file AlgorithmTimerWrapper.h.
|
private |
Definition at line 86 of file AlgorithmTimerWrapper.h.
|
private |
the timers for different calls
Definition at line 85 of file AlgorithmTimerWrapper.h.