ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
Valkyrie
src
ValgrindSvc.h
Go to the documentation of this file.
1
2
3
/*
4
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// ValgrindSvc.h
8
// Header file for class ValgrindSvc
9
// Author: S.Binet<binet@cern.ch>
11
#ifndef ATHENASERVICES_VALGRINDSVC_H
12
#define ATHENASERVICES_VALGRINDSVC_H 1
13
14
// STL includes
15
#include <string>
16
#include <iosfwd>
17
18
// FrameWork includes
19
#include "
AthenaBaseComps/AthService.h
"
20
#include "GaudiKernel/IIncidentListener.h"
21
22
// AthenaKernel includes
23
#include "
AthenaKernel/IValgrindSvc.h
"
24
25
// Forward declaration
26
class
ISvcLocator;
27
class
IAuditorSvc;
28
29
class
ValgrindSvc
:
public
extends<AthService,
30
IValgrindSvc,
31
IIncidentListener>
32
{
34
// Public methods:
36
public
:
37
39
ValgrindSvc
(
const
std::string& name, ISvcLocator* pSvcLocator );
40
42
virtual
~ValgrindSvc
();
43
45
46
virtual
StatusCode
initialize
()
override
;
47
virtual
StatusCode
finalize
()
override
;
49
51
virtual
void
handle
(
const
Incident& incident )
override
;
52
54
virtual
void
callgrindStartInstrumentation
()
override
;
55
57
virtual
void
callgrindStopInstrumentation
()
override
;
58
60
virtual
void
callgrindDumpStats
( std::ostream& out )
override
;
61
63
virtual
void
callgrindToggleCollect
()
override
;
64
66
virtual
void
valgrindDoLeakCheck
()
override
;
67
69
virtual
unsigned
int
profileCount
()
override
{
return
m_profileCounter
; }
70
71
73
// Private data:
75
private
:
76
79
std::vector<std::string>
m_algs
;
80
83
std::vector<std::string>
m_intervals
;
84
86
bool
m_dumpAfterEachEvent
;
87
89
bool
m_dumpAfterEachInterval
;
90
92
unsigned
int
m_ignoreFirstNEvents
;
93
95
std::vector<std::string>
m_dumpAfterIncident
;
96
98
unsigned
int
m_eventCounter
;
99
101
unsigned
int
m_profileCounter
;
102
};
103
104
#endif
//> ATHENASERVICES_VALGRINDSVC_H
AthService.h
IValgrindSvc.h
ValgrindSvc::m_intervals
std::vector< std::string > m_intervals
List of auditor intervals to profile Syntax: "MessageSvc.initialize:MessageSvc.finalize".
Definition
ValgrindSvc.h:83
ValgrindSvc::callgrindDumpStats
virtual void callgrindDumpStats(std::ostream &out) override
Dump callgrind profiling stats.
Definition
ValgrindSvc.cxx:183
ValgrindSvc::callgrindStopInstrumentation
virtual void callgrindStopInstrumentation() override
Stop callgrind instrumentation.
Definition
ValgrindSvc.cxx:173
ValgrindSvc::m_dumpAfterEachInterval
bool m_dumpAfterEachInterval
Dump separate profile after each interval.
Definition
ValgrindSvc.h:89
ValgrindSvc::m_dumpAfterIncident
std::vector< std::string > m_dumpAfterIncident
List of incidents on which to create a profile dump.
Definition
ValgrindSvc.h:95
ValgrindSvc::~ValgrindSvc
virtual ~ValgrindSvc()
Destructor:
Definition
ValgrindSvc.cxx:65
ValgrindSvc::valgrindDoLeakCheck
virtual void valgrindDoLeakCheck() override
Do a leak check now.
Definition
ValgrindSvc.cxx:189
ValgrindSvc::m_dumpAfterEachEvent
bool m_dumpAfterEachEvent
Dump separate profile after each event.
Definition
ValgrindSvc.h:86
ValgrindSvc::handle
virtual void handle(const Incident &incident) override
incident service handle for Begin/EndEvent
Definition
ValgrindSvc.cxx:117
ValgrindSvc::m_eventCounter
unsigned int m_eventCounter
Internal event counter for BeginEvent incident.
Definition
ValgrindSvc.h:98
ValgrindSvc::callgrindToggleCollect
virtual void callgrindToggleCollect() override
Toggle callgrind event collection.
Definition
ValgrindSvc.cxx:178
ValgrindSvc::callgrindStartInstrumentation
virtual void callgrindStartInstrumentation() override
Start callgrind instrumentation.
Definition
ValgrindSvc.cxx:168
ValgrindSvc::finalize
virtual StatusCode finalize() override
Definition
ValgrindSvc.cxx:103
ValgrindSvc::profileCount
virtual unsigned int profileCount() override
Number of created callgrind profiles.
Definition
ValgrindSvc.h:69
ValgrindSvc::m_algs
std::vector< std::string > m_algs
List of algorithms to profile If list is empty, profile between begin/end event.
Definition
ValgrindSvc.h:79
ValgrindSvc::ValgrindSvc
ValgrindSvc(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition
ValgrindSvc.cxx:35
ValgrindSvc::m_ignoreFirstNEvents
unsigned int m_ignoreFirstNEvents
Don't profile on the first N events.
Definition
ValgrindSvc.h:92
ValgrindSvc::m_profileCounter
unsigned int m_profileCounter
Counter of created profiles.
Definition
ValgrindSvc.h:101
ValgrindSvc::initialize
virtual StatusCode initialize() override
Gaudi Service Implementation.
Definition
ValgrindSvc.cxx:70
Generated on
for ATLAS Offline Software by
1.17.0