| The Gaudi Framework v28r2p1 (f1a77ff4)

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

CallgrindProfile.h
Go to the documentation of this file.
1 #ifndef VALGRIND_CALLGRINDPROFILE_H
2 #define VALGRIND_CALLGRINDPROFILE_H 1
3
4 // Include files
5 // from Gaudi
6 #include "GaudiAlg/GaudiAlgorithm.h"
7
15 class CallgrindProfile : public GaudiAlgorithm
16 {
17 public:
18 using GaudiAlgorithm::GaudiAlgorithm;
19
20 ~CallgrindProfile() override = default;
21
22 StatusCode initialize() override;
23 StatusCode execute() override;
24 StatusCode finalize() override;
25
26 private:
27 Gaudi::Property<int> m_nStartFromEvent{this, "StartFromEventN", 1, "After what event we start profiling."};
28 Gaudi::Property<int> m_nStopAtEvent{
29 this, "StopAtEventN", 0,
30 "After what event we stop profiling. If 0 than we also profile finalization stage. Default = 0."};
31 Gaudi::Property<int> m_nDumpAtEvent{
32 this, "DumpAtEventN", 0,
33 "After what event we stop profiling. If 0 than we also profile finalization stage. Default = 0."};
34 Gaudi::Property<int> m_nZeroAtEvent{
35 this, "ZeroAtEventN", 0,
36 "After what event we stop profiling. If 0 than we also profile finalization stage. Default = 0."};
37 Gaudi::Property<std::string> m_dumpName{this, "DumpName", "", "Label for the callgrind dump"};
38
39 int m_eventNumber = 0; // Current event number
40 bool m_profiling = false; // Whether valgrind is profiling or not
41 bool m_dumpDone = false; // Whether the counters were dumped
42 };
43 #endif // VALGRIND_CALLGRINDPROFILE_H
CallgrindProfile::m_profiling
bool m_profiling
Definition: CallgrindProfile.h:40
CallgrindProfile::m_eventNumber
int m_eventNumber
Definition: CallgrindProfile.h:39
Gaudi::Property
Implementation of property with value of concrete type.
Definition: Property.h:314
CallgrindProfile::m_dumpDone
bool m_dumpDone
Definition: CallgrindProfile.h:41
GaudiAlgorithm.h
Header file for class GaudiAlgorithm.
CallgrindProfile::m_nDumpAtEvent
Gaudi::Property< int > m_nDumpAtEvent
Definition: CallgrindProfile.h:31
CallgrindProfile::m_nStartFromEvent
Gaudi::Property< int > m_nStartFromEvent
Definition: CallgrindProfile.h:27
CallgrindProfile::m_dumpName
Gaudi::Property< std::string > m_dumpName
Definition: CallgrindProfile.h:37
CallgrindProfile::~CallgrindProfile
~CallgrindProfile() override=default
Destructor.
CallgrindProfile::m_nZeroAtEvent
Gaudi::Property< int > m_nZeroAtEvent
Definition: CallgrindProfile.h:34
CallgrindProfile::initialize
StatusCode initialize() override
Algorithm initialization.
Definition: CallgrindProfile.cpp:20
StatusCode
This class is used for returning status codes from appropriate routines.
Definition: StatusCode.h:26
GaudiAlgorithm
The useful base class for data processing algorithms.
Definition: GaudiAlgorithm.h:94
CallgrindProfile::execute
StatusCode execute() override
Algorithm execution.
Definition: CallgrindProfile.cpp:31
CallgrindProfile::finalize
StatusCode finalize() override
Algorithm finalization.
Definition: CallgrindProfile.cpp:83
CallgrindProfile
Algorithm to enable/disable the profiling by Callgrind at given events.
Definition: CallgrindProfile.h:15
CallgrindProfile::m_nStopAtEvent
Gaudi::Property< int > m_nStopAtEvent
Definition: CallgrindProfile.h:28
GaudiAlgorithm::GaudiAlgorithm
GaudiAlgorithm()