ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigMonitoring
TrigCostMonitor
TrigCostMonitor
ITrigCostSvc.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3
*/
4
/*
5
*/
6
7
#ifndef TRIGCOSTMONITOR_ITRIGCOSTSVC_H
8
#define TRIGCOSTMONITOR_ITRIGCOSTSVC_H 1
9
10
#include "GaudiKernel/IService.h"
11
#include "GaudiKernel/EventContext.h"
12
13
#include "
xAODTrigger/TrigCompositeContainer.h
"
14
#include "
StoreGate/WriteHandle.h
"
15
#include "
TrigDataAccessMonitoring/ROBDataMonitor.h
"
16
17
#include <string>
18
19
24
class
ITrigCostSvc
:
public
virtual
IService {
25
public
:
29
DeclareInterfaceID
(
ITrigCostSvc
, 1, 0);
30
31
virtual
~ITrigCostSvc
() {}
32
36
enum
AuditType
{
Before
,
After
};
37
41
virtual
StatusCode
startEvent
(
const
EventContext&,
const
bool
enableMonitoring) = 0;
42
46
virtual
StatusCode
processAlg
(
const
EventContext&,
const
std::string&,
const
AuditType
) = 0;
47
51
virtual
StatusCode
endEvent
(
const
EventContext&,
SG::WriteHandle<xAOD::TrigCompositeContainer>
&,
SG::WriteHandle<xAOD::TrigCompositeContainer>
&) = 0;
52
56
virtual
bool
isMonitoredEvent
(
const
EventContext& context,
const
bool
includeMultiSlot)
const
= 0;
57
61
virtual
StatusCode
monitorROS
(
const
EventContext& context,
robmonitor::ROBDataMonitorStruct
payload) = 0;
62
66
virtual
StatusCode
generateTimeoutReport
(
const
EventContext& context, std::string& report) = 0;
67
71
virtual
StatusCode
discardEvent
(
const
EventContext& context) = 0;
72
};
73
74
#endif
// TRIGCOSTMONITOR_ITRIGCOSTSVC_H
ROBDataMonitor.h
WriteHandle.h
Handle class for recording to StoreGate.
TrigCompositeContainer.h
ITrigCostSvc
Pure virtual interface to be implimented by Trig Cost service(s).
Definition
ITrigCostSvc.h:24
ITrigCostSvc::generateTimeoutReport
virtual StatusCode generateTimeoutReport(const EventContext &context, std::string &report)=0
To be used to generate timeout report.
ITrigCostSvc::discardEvent
virtual StatusCode discardEvent(const EventContext &context)=0
Discard the monitored event.
ITrigCostSvc::~ITrigCostSvc
virtual ~ITrigCostSvc()
Definition
ITrigCostSvc.h:31
ITrigCostSvc::isMonitoredEvent
virtual bool isMonitoredEvent(const EventContext &context, const bool includeMultiSlot) const =0
To be used by external suppliers of data to know if they should spend the CPU to collate their monito...
ITrigCostSvc::monitorROS
virtual StatusCode monitorROS(const EventContext &context, robmonitor::ROBDataMonitorStruct payload)=0
To be used to cache ROBs for ROS.
ITrigCostSvc::startEvent
virtual StatusCode startEvent(const EventContext &, const bool enableMonitoring)=0
To be used to signal to the service a new event in a given slot, and to send a monitor/don't monitor ...
ITrigCostSvc::DeclareInterfaceID
DeclareInterfaceID(ITrigCostSvc, 1, 0)
Retrieve interface ID.
ITrigCostSvc::AuditType
AuditType
Disambiguation enum for the start or the end of an algorithm's execution.
Definition
ITrigCostSvc.h:36
ITrigCostSvc::Before
@ Before
Definition
ITrigCostSvc.h:36
ITrigCostSvc::After
@ After
Definition
ITrigCostSvc.h:36
ITrigCostSvc::endEvent
virtual StatusCode endEvent(const EventContext &, SG::WriteHandle< xAOD::TrigCompositeContainer > &, SG::WriteHandle< xAOD::TrigCompositeContainer > &)=0
To be used to signal end of an event in a given slot, and to write an output payload to a given handl...
ITrigCostSvc::processAlg
virtual StatusCode processAlg(const EventContext &, const std::string &, const AuditType)=0
To be used to signal the Before or After status of a named algorithm in a given context.
SG::WriteHandle
Definition
StoreGate/StoreGate/WriteHandle.h:73
robmonitor::ROBDataMonitorStruct
The structure which is used to monitor the ROB data request in L2 It is created for every addROBData ...
Definition
ROBDataMonitor.h:79
Generated on
for ATLAS Offline Software by
1.17.0