ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigT1
TrigT1CaloMonitoring
src
PPMSimBSMonitorAlgorithm.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
#ifndef TRIGT1CALOMONITORING_PPMSIMBSMONITORALGORITHM_H
5
#define TRIGT1CALOMONITORING_PPMSIMBSMONITORALGORITHM_H
6
7
#include "
AthenaMonitoring/AthMonitorAlgorithm.h
"
8
#include "
AthenaMonitoringKernel/Monitored.h
"
9
#include "
StoreGate/ReadHandleKey.h
"
10
11
#include "
TrigT1CaloToolInterfaces/IL1TriggerTowerToolRun3.h
"
12
#include "
TrigT1CaloCalibConditions/L1CaloCoolChannelId.h
"
13
#include "
TrigT1CaloMonitoringTools/ITrigT1CaloMonErrorTool.h
"
14
#include "
TrigT1Interfaces/TrigT1CaloDefs.h
"
15
#include "
TrigT1CaloCalibConditions/L1CaloRunParameters.h
"
16
#include "
TrigT1CaloCalibConditions/L1CaloRunParametersContainer.h
"
17
#include "
xAODTrigL1Calo/TriggerTowerContainer.h
"
18
#include "
TrigT1CaloToolInterfaces/IL1TriggerTowerTool.h
"
19
20
21
class
PPMSimBSMonitorAlgorithm
:
public
AthMonitorAlgorithm
{
22
public
:
PPMSimBSMonitorAlgorithm
(
const
std::string& name, ISvcLocator* pSvcLocator );
23
virtual
~PPMSimBSMonitorAlgorithm
()=
default
;
24
virtual
StatusCode
initialize
()
override
;
25
virtual
StatusCode
fillHistograms
(
const
EventContext& ctx )
const override
;
26
28
struct
MonitorTT
{
29
const
xAOD::TriggerTower
*
tower
{};
30
double
phiScaled
{};
31
double
phi1d
{};
32
int
jepET
{};
33
double
maxADC
{};
34
};
35
36
37
private
:
38
typedef
std::vector<int>
ErrorVector
;
39
40
StringProperty
m_packageName
{
this
,
"PackageName"
,
"PPMSimBSMonitor"
,
"group name for histogramming"
};
41
43
SG::ReadHandleKey<xAOD::TriggerTowerContainer>
m_xAODTriggerTowerContainerName
{
this
,
"BS_xAODTriggerTowerContainer"
,
LVL1::TrigT1CaloDefs::xAODTriggerTowerLocation
,
"Trigger Tower Container"
};
44
45
ToolHandle<LVL1::IL1TriggerTowerToolRun3>
m_ttTool
{
this
,
"L1TriggerTowerToolRun3"
,
"LVL1::L1TriggerTowerToolRun3/L1TriggerTowerToolRun3"
,
"L1TriggerTowerToolRun3"
};
46
48
Gaudi::Property<double>
m_phiScaleTT
{
this
,
"phiScaleTT"
, 32./
M_PI
,
"Scale factor to convert trigger tower phi to integer binning"
};
49
Gaudi::Property<int>
m_simulationADCCut
{
this
,
"SimulationADCCut"
, 36,
"Minimum ADC cut to avoid unnecessary simulation"
};
50
51
52
53
// Error vector StoreGate key
54
SG::WriteHandleKey<std::vector<int>
>
m_errorLocation
{
this
,
"ErrorLocation"
,
"L1CaloPPMSimBSMismatchVector"
,
"ErrorVector"
};
55
56
57
// L1CaloCond rel22
58
SG::ReadCondHandleKey<L1CaloRunParametersContainer>
m_runParametersContainer
{
this
,
"InputKeyRunParameters"
,
"L1CaloRunParametersContainer"
};
59
61
StatusCode makePPMTower(
const
xAOD::TriggerTower
* tt,
62
std::vector<MonitorTT> &vecMonTT)
const
;
63
64
StatusCode fillPPMEtaPhi( MonitorTT &monTT,
65
const
std::string& groupName,
66
const
std::string& weightName,
67
double
weight)
const
;
68
69
70
// count number of error events per lumiblock across threads for each type of error
71
mutable
std::mutex
m_mutex
{};
72
mutable
std::map<uint32_t, int> m_errorLB_tt_counter
ATLAS_THREAD_SAFE
;
73
74
75
76
};
77
#endif
78
M_PI
#define M_PI
Definition
ActiveFraction.h:14
AthMonitorAlgorithm.h
IL1TriggerTowerToolRun3.h
IL1TriggerTowerTool.h
ITrigT1CaloMonErrorTool.h
L1CaloCoolChannelId.h
L1CaloRunParametersContainer.h
L1CaloRunParameters.h
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TrigT1CaloDefs.h
TriggerTowerContainer.h
AthMonitorAlgorithm::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
LVL1::TrigT1CaloDefs::xAODTriggerTowerLocation
static const std::string xAODTriggerTowerLocation
Definition
TrigT1CaloDefs.h:36
PPMSimBSMonitorAlgorithm::m_runParametersContainer
SG::ReadCondHandleKey< L1CaloRunParametersContainer > m_runParametersContainer
Definition
PPMSimBSMonitorAlgorithm.h:58
PPMSimBSMonitorAlgorithm::m_simulationADCCut
Gaudi::Property< int > m_simulationADCCut
Definition
PPMSimBSMonitorAlgorithm.h:49
PPMSimBSMonitorAlgorithm::~PPMSimBSMonitorAlgorithm
virtual ~PPMSimBSMonitorAlgorithm()=default
PPMSimBSMonitorAlgorithm::m_errorLocation
SG::WriteHandleKey< std::vector< int > > m_errorLocation
Definition
PPMSimBSMonitorAlgorithm.h:54
PPMSimBSMonitorAlgorithm::m_ttTool
ToolHandle< LVL1::IL1TriggerTowerToolRun3 > m_ttTool
Definition
PPMSimBSMonitorAlgorithm.h:45
PPMSimBSMonitorAlgorithm::ErrorVector
std::vector< int > ErrorVector
Definition
PPMSimBSMonitorAlgorithm.h:38
PPMSimBSMonitorAlgorithm::m_packageName
StringProperty m_packageName
Definition
PPMSimBSMonitorAlgorithm.h:40
PPMSimBSMonitorAlgorithm::m_mutex
std::mutex m_mutex
Definition
PPMSimBSMonitorAlgorithm.h:71
PPMSimBSMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition
PPMSimBSMonitorAlgorithm.cxx:33
PPMSimBSMonitorAlgorithm::ATLAS_THREAD_SAFE
std::map< uint32_t, int > m_errorLB_tt_counter ATLAS_THREAD_SAFE
Definition
PPMSimBSMonitorAlgorithm.h:72
PPMSimBSMonitorAlgorithm::m_phiScaleTT
Gaudi::Property< double > m_phiScaleTT
Properties.
Definition
PPMSimBSMonitorAlgorithm.h:48
PPMSimBSMonitorAlgorithm::m_xAODTriggerTowerContainerName
SG::ReadHandleKey< xAOD::TriggerTowerContainer > m_xAODTriggerTowerContainerName
container keys including steering parameter and description
Definition
PPMSimBSMonitorAlgorithm.h:43
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
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
PPMSimBSMonitorAlgorithm
Definition
PPMSimBSMonitorAlgorithm.py:1
xAOD::TriggerTower
TriggerTower_v2 TriggerTower
Define the latest version of the TriggerTower class.
Definition
Event/xAOD/xAODTrigL1Calo/xAODTrigL1Calo/TriggerTower.h:16
initialize
void initialize()
Definition
run_EoverP.cxx:894
PPMSimBSMonitorAlgorithm::MonitorTT
Struct to contain PPM trigger tower info.
Definition
PPMSimBSMonitorAlgorithm.h:28
PPMSimBSMonitorAlgorithm::MonitorTT::maxADC
double maxADC
Definition
PPMSimBSMonitorAlgorithm.h:33
PPMSimBSMonitorAlgorithm::MonitorTT::phiScaled
double phiScaled
Definition
PPMSimBSMonitorAlgorithm.h:30
PPMSimBSMonitorAlgorithm::MonitorTT::tower
const xAOD::TriggerTower * tower
Definition
PPMSimBSMonitorAlgorithm.h:29
PPMSimBSMonitorAlgorithm::MonitorTT::jepET
int jepET
phi for 1d phi distributions (taking into account granularity in eta)
Definition
PPMSimBSMonitorAlgorithm.h:32
PPMSimBSMonitorAlgorithm::MonitorTT::phi1d
double phi1d
phi for 2d maps with integer bins (taking into account granularity in eta)
Definition
PPMSimBSMonitorAlgorithm.h:31
Generated on
for ATLAS Offline Software by
1.17.0