11#ifndef ATHENASERVICES_VALGRINDSVC_H
12#define ATHENASERVICES_VALGRINDSVC_H 1
20#include "GaudiKernel/IIncidentListener.h"
39 ValgrindSvc(
const std::string& name, ISvcLocator* pSvcLocator );
47 virtual StatusCode
finalize()
override;
51 virtual void handle(
const Incident& incident )
override;
std::vector< std::string > m_intervals
List of auditor intervals to profile Syntax: "MessageSvc.initialize:MessageSvc.finalize".
virtual void callgrindDumpStats(std::ostream &out) override
Dump callgrind profiling stats.
virtual void callgrindStopInstrumentation() override
Stop callgrind instrumentation.
bool m_dumpAfterEachInterval
Dump separate profile after each interval.
std::vector< std::string > m_dumpAfterIncident
List of incidents on which to create a profile dump.
virtual ~ValgrindSvc()
Destructor:
virtual void valgrindDoLeakCheck() override
Do a leak check now.
bool m_dumpAfterEachEvent
Dump separate profile after each event.
virtual void handle(const Incident &incident) override
incident service handle for Begin/EndEvent
unsigned int m_eventCounter
Internal event counter for BeginEvent incident.
virtual void callgrindToggleCollect() override
Toggle callgrind event collection.
virtual void callgrindStartInstrumentation() override
Start callgrind instrumentation.
virtual StatusCode finalize() override
virtual unsigned int profileCount() override
Number of created callgrind profiles.
std::vector< std::string > m_algs
List of algorithms to profile If list is empty, profile between begin/end event.
ValgrindSvc(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
unsigned int m_ignoreFirstNEvents
Don't profile on the first N events.
unsigned int m_profileCounter
Counter of created profiles.
virtual StatusCode initialize() override
Gaudi Service Implementation.