ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigSteer
HLTSeeding
src
PrescalingTool.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef HLTSEEDING_PRESCALINGTOOL_H
5
#define HLTSEEDING_PRESCALINGTOOL_H
6
7
// HLTSeeding includes
8
#include "
HLTSeeding/IPrescalingTool.h
"
9
10
// framework includes
11
#include "
AthenaBaseComps/AthAlgTool.h
"
12
#include "
StoreGate/ReadCondHandleKey.h
"
13
#include "GaudiKernel/ServiceHandle.h"
14
#include "
AthenaKernel/IAtRndmGenSvc.h
"
15
#include "
AthenaKernel/RNGWrapper.h
"
16
#include "
AthenaMonitoringKernel/Monitored.h
"
17
18
// data includes
19
#include "
TrigConfData/HLTPrescalesSet.h
"
20
#include "
TrigConfData/HLTMenu.h
"
21
#include "
xAODEventInfo/EventInfo.h
"
22
23
// STL includes
24
#include <string>
25
33
class
PrescalingTool
:
public
extends<AthAlgTool, IPrescalingTool> {
34
public
:
35
36
// no default constructor
37
PrescalingTool
() =
delete
;
38
39
// constructor
40
PrescalingTool
(
const
std::string&
type
,
const
std::string& name,
const
IInterface* parent );
41
42
virtual
StatusCode
initialize
()
override
;
43
virtual
StatusCode
start
()
override
;
44
54
virtual
StatusCode
prescaleChains
(
const
EventContext& ctx,
55
const
HLT::IDVec
& initiallyActive,
56
HLT::IDVec
& remainActive,
57
bool
forExpressStream =
false
)
const override
;
58
59
private
:
60
61
SG::ReadCondHandleKey<TrigConf::HLTPrescalesSet>
m_hltPrescaleSetInputKey
{
62
this
,
"HLTPrescales"
,
"HLTPrescales"
,
"HLT prescales set"
};
63
64
SG::ReadHandleKey<TrigConf::HLTMenu>
m_HLTMenuKey
{
65
this
,
"HLTTriggerMenu"
,
"DetectorStore+HLTTriggerMenu"
,
"HLT Menu"
};
66
67
SG::ReadHandleKey<xAOD::EventInfo>
m_eventInfoKey
{
68
this
,
"EventInfo"
,
"EventInfo"
,
"Event Info Object Key"
};
69
70
Gaudi::Property<bool>
m_keepUnknownChains
{
71
this
,
"KeepUnknownChains"
,
false
,
"If True then chains for which prescaling information is not set are kept"
};
72
73
ToolHandle<GenericMonitoringTool>
m_monTool
{
74
this
,
"MonTool"
,
""
,
"Monitoring tool"
};
75
77
ATHRNG::RNGWrapper
m_RNGEngines
;
78
79
using
ChainSet
= std::set<HLT::Identifier>;
80
ChainSet
m_nonCPSChains
;
81
std::map<std::string, HLT::IDVec>
m_CPSGroups
;
82
83
TrigConf::HLTPrescalesSet::HLTPrescale
m_prescaleForUnknownChain
;
84
HLT::Identifier
m_costChainID
{
""
};
85
};
86
87
88
#endif
AthAlgTool.h
HLTMenu.h
HLTPrescalesSet.h
IAtRndmGenSvc.h
IPrescalingTool.h
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
RNGWrapper.h
ReadCondHandleKey.h
ATHRNG::RNGWrapper
A wrapper class for event-slot-local random engines.
Definition
RNGWrapper.h:56
HLT::Identifier
Definition
TrigCompositeUtils/TrigCompositeUtils/HLTIdentifier.h:19
PrescalingTool::m_CPSGroups
std::map< std::string, HLT::IDVec > m_CPSGroups
Definition
PrescalingTool.h:81
PrescalingTool::initialize
virtual StatusCode initialize() override
Definition
PrescalingTool.cxx:26
PrescalingTool::m_RNGEngines
ATHRNG::RNGWrapper m_RNGEngines
Random engine for calculating prescales.
Definition
PrescalingTool.h:77
PrescalingTool::prescaleChains
virtual StatusCode prescaleChains(const EventContext &ctx, const HLT::IDVec &initiallyActive, HLT::IDVec &remainActive, bool forExpressStream=false) const override
The method to prescale chains.
Definition
PrescalingTool.cxx:93
PrescalingTool::ChainSet
std::set< HLT::Identifier > ChainSet
Definition
PrescalingTool.h:79
PrescalingTool::m_costChainID
HLT::Identifier m_costChainID
Definition
PrescalingTool.h:84
PrescalingTool::m_hltPrescaleSetInputKey
SG::ReadCondHandleKey< TrigConf::HLTPrescalesSet > m_hltPrescaleSetInputKey
Definition
PrescalingTool.h:61
PrescalingTool::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition
PrescalingTool.h:73
PrescalingTool::m_prescaleForUnknownChain
TrigConf::HLTPrescalesSet::HLTPrescale m_prescaleForUnknownChain
Definition
PrescalingTool.h:83
PrescalingTool::m_nonCPSChains
ChainSet m_nonCPSChains
Definition
PrescalingTool.h:80
PrescalingTool::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition
PrescalingTool.h:67
PrescalingTool::PrescalingTool
PrescalingTool()=delete
PrescalingTool::m_keepUnknownChains
Gaudi::Property< bool > m_keepUnknownChains
Definition
PrescalingTool.h:70
PrescalingTool::start
virtual StatusCode start() override
Definition
PrescalingTool.cxx:45
PrescalingTool::m_HLTMenuKey
SG::ReadHandleKey< TrigConf::HLTMenu > m_HLTMenuKey
Definition
PrescalingTool.h:64
SG::ReadCondHandleKey
Definition
ReadCondHandleKey.h:21
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
HLT::IDVec
std::vector< HLT::Identifier > IDVec
Definition
TrigCompositeUtils/TrigCompositeUtils/HLTIdentifier.h:55
type
TrigConf::HLTPrescalesSet::HLTPrescale
Definition
HLTPrescalesSet.h:22
EventInfo.h
Generated on
for ATLAS Offline Software by
1.17.0