ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TileMonitoring
src
TileRawChannelTimeMonitorAlgorithm.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TILEMONITORING_TILERAWCHANNELTIMEMONITORALGORITHM_H
6
#define TILEMONITORING_TILERAWCHANNELTIMEMONITORALGORITHM_H
7
8
#include "
TileEvent/TileDQstatus.h
"
9
#include "
TileEvent/TileRawChannelContainer.h
"
10
#include "
TileConditions/TileDCSState.h
"
11
#include "
TileConditions/TileBadChannels.h
"
12
#include "
TileConditions/TileCondToolNoiseSample.h
"
13
#include "
TileConditions/TileCablingSvc.h
"
14
15
#include "
AthenaMonitoring/AthMonitorAlgorithm.h
"
16
#include "
AthenaMonitoringKernel/Monitored.h
"
17
#include "
StoreGate/ReadHandleKey.h
"
18
#include "
StoreGate/ReadCondHandleKey.h
"
19
20
class
TileHWID
;
21
class
TileCablingService
;
22
23
#include <array>
24
28
29
class
TileRawChannelTimeMonitorAlgorithm
:
public
AthMonitorAlgorithm
{
30
31
public
:
32
33
using
AthMonitorAlgorithm::AthMonitorAlgorithm
;
34
virtual
~TileRawChannelTimeMonitorAlgorithm
() =
default
;
35
virtual
StatusCode
initialize
()
override
;
36
virtual
StatusCode
fillHistograms
(
const
EventContext& ctx)
const override
;
37
38
private
:
39
40
Gaudi::Property<bool>
m_checkDCS
{
this
,
"CheckDCS"
,
false
,
"Check Tile DCS status"
};
41
42
Gaudi::Property<std::vector<unsigned int>>
m_triggerTypes
{
this
,
43
"TriggerTypes"
, {},
"Given trigger types only events with these TTs will be used, otherwise all"
};
44
45
Gaudi::Property<std::vector<double>>
m_energyThresholds
{
this
,
46
"EnergyThresholds"
, {10, 40},
"Energy thresholds [LG, HG]"
};
47
48
Gaudi::Property<std::vector<double>>
m_partitionTimeCorrection
{
this
,
49
"PartitionTimeCorrections"
, {-15.18, -15.37, 47.65, 47.42},
50
"Partition time corrections [LBA, LBC, EBA, EBC]"
};
51
52
Gaudi::Property<std::vector<std::pair<int, int>>>
m_partitionTimeDifferencePairs
{
this
,
53
"PartitionTimeDiffferncePairs"
, {},
"Partition (ROS - 1) pairs to monitor time differnce"
};
54
55
Gaudi::Property<int>
m_fakeTime
{
this
,
56
"FakeTime"
, -100,
"Fake time to fill if there is no signal, but it's expected"
};
57
58
Gaudi::Property<bool>
m_fillFakeTime
{
this
,
59
"FillFakeTime"
,
true
,
"File fake time to fill if there is no signal, but it's expected"
};
60
61
Gaudi::Property<std::vector<int>>
m_amplitudeFragIDs
{
this
,
62
"AmplitudeFragIDs"
, {},
"Tile Frag IDs of modules to fill histograms with amplitude vs LB."
};
63
64
SG::ReadHandleKey<TileDQstatus>
m_DQstatusKey
{
this
,
65
"TileDQstatus"
,
"TileDQstatus"
,
"Tile DQ status name"
};
66
67
SG::ReadHandleKey<TileRawChannelContainer>
m_rawChannelContainerKey
{
this
,
68
"TileRawChannelContainer"
,
"TileRawChannelFit"
,
"Input Tile raw channel container key"
};
69
73
SG::ReadCondHandleKey<TileDCSState>
m_DCSStateKey
{
this
,
74
"TileDCS"
,
"TileDCS"
,
"Input Tile DCS status"
};
75
79
SG::ReadCondHandleKey<TileBadChannels>
m_badChannelsKey
{
this
,
80
"TileBadChannels"
,
"TileBadChannels"
,
"Input Tile bad channel status"
};
81
85
SG::ReadCondHandleKey<TileEMScale>
m_emScaleKey
{
this
,
86
"TileEMScale"
,
"TileEMScale"
,
"Input Tile EMS calibration constants"
};
87
91
ServiceHandle<TileCablingSvc>
m_cablingSvc
{
this
,
92
"TileCablingSvc"
,
"TileCablingSvc"
,
"The Tile cabling service"
};
93
94
const
TileHWID
*
m_tileHWID
{
nullptr
};
95
const
TileCablingService
*
m_cabling
{
nullptr
};
96
97
std::vector<int>
m_timeGroups
;
98
std::vector<int>
m_uncorrTimeGroups
;
99
std::vector<int>
m_timeLBGroups
;
100
std::vector<int>
m_timeDiffLBGroups
;
101
std::vector<std::vector<std::vector<int>>>
m_digiTimeLBGroups
;
102
std::vector<int>
m_amplitudeGroups
;
103
std::map<std::string, int>
m_amplitudeVsLBGroups
;
104
105
std::array<bool, TileCalibUtils::MAX_DRAWERIDX>
m_amplitudeMonitoredDrawerIdx
{};
106
107
static
constexpr
int
s_nDigitizers
= 8;
108
enum
Signal
{
SIGNAL_NOT_EXPECTED
= 0,
SIGNAL_EXPECTED
,
SIGNAL_PRESENT
};
109
};
110
111
112
#endif
// TILEMONITORING_TILERAWCHANNELTIMEMONITORALGORITHM_H
AthMonitorAlgorithm.h
Monitored.h
Header file to be included by clients of the Monitored infrastructure.
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TileBadChannels.h
TileCablingSvc.h
TileCondToolNoiseSample.h
TileDCSState.h
TileDQstatus.h
Information produced by TileDQstatusAlg (used to be done by TileBeamInfoProvider).
TileRawChannelContainer.h
AthMonitorAlgorithm::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
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
ServiceHandle
Definition
ClusterMakerTool.h:36
TileCablingService
Definition
TileCablingService.h:23
TileHWID
Helper class for TileCal online (hardware) identifiers.
Definition
TileHWID.h:49
TileRawChannelTimeMonitorAlgorithm::m_cablingSvc
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
Definition
TileRawChannelTimeMonitorAlgorithm.h:91
TileRawChannelTimeMonitorAlgorithm::~TileRawChannelTimeMonitorAlgorithm
virtual ~TileRawChannelTimeMonitorAlgorithm()=default
TileRawChannelTimeMonitorAlgorithm::m_cabling
const TileCablingService * m_cabling
Definition
TileRawChannelTimeMonitorAlgorithm.h:95
TileRawChannelTimeMonitorAlgorithm::m_timeLBGroups
std::vector< int > m_timeLBGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:99
TileRawChannelTimeMonitorAlgorithm::Signal
Signal
Definition
TileRawChannelTimeMonitorAlgorithm.h:108
TileRawChannelTimeMonitorAlgorithm::SIGNAL_PRESENT
@ SIGNAL_PRESENT
Definition
TileRawChannelTimeMonitorAlgorithm.h:108
TileRawChannelTimeMonitorAlgorithm::SIGNAL_EXPECTED
@ SIGNAL_EXPECTED
Definition
TileRawChannelTimeMonitorAlgorithm.h:108
TileRawChannelTimeMonitorAlgorithm::SIGNAL_NOT_EXPECTED
@ SIGNAL_NOT_EXPECTED
Definition
TileRawChannelTimeMonitorAlgorithm.h:108
TileRawChannelTimeMonitorAlgorithm::m_partitionTimeDifferencePairs
Gaudi::Property< std::vector< std::pair< int, int > > > m_partitionTimeDifferencePairs
Definition
TileRawChannelTimeMonitorAlgorithm.h:52
TileRawChannelTimeMonitorAlgorithm::m_fillFakeTime
Gaudi::Property< bool > m_fillFakeTime
Definition
TileRawChannelTimeMonitorAlgorithm.h:58
TileRawChannelTimeMonitorAlgorithm::m_emScaleKey
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Name of TileEMScale in condition store.
Definition
TileRawChannelTimeMonitorAlgorithm.h:85
TileRawChannelTimeMonitorAlgorithm::m_checkDCS
Gaudi::Property< bool > m_checkDCS
Definition
TileRawChannelTimeMonitorAlgorithm.h:40
TileRawChannelTimeMonitorAlgorithm::m_fakeTime
Gaudi::Property< int > m_fakeTime
Definition
TileRawChannelTimeMonitorAlgorithm.h:55
TileRawChannelTimeMonitorAlgorithm::m_DQstatusKey
SG::ReadHandleKey< TileDQstatus > m_DQstatusKey
Definition
TileRawChannelTimeMonitorAlgorithm.h:64
TileRawChannelTimeMonitorAlgorithm::m_amplitudeVsLBGroups
std::map< std::string, int > m_amplitudeVsLBGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:103
TileRawChannelTimeMonitorAlgorithm::m_partitionTimeCorrection
Gaudi::Property< std::vector< double > > m_partitionTimeCorrection
Definition
TileRawChannelTimeMonitorAlgorithm.h:48
TileRawChannelTimeMonitorAlgorithm::m_timeGroups
std::vector< int > m_timeGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:97
TileRawChannelTimeMonitorAlgorithm::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
TileRawChannelTimeMonitorAlgorithm::m_triggerTypes
Gaudi::Property< std::vector< unsigned int > > m_triggerTypes
Definition
TileRawChannelTimeMonitorAlgorithm.h:42
TileRawChannelTimeMonitorAlgorithm::m_energyThresholds
Gaudi::Property< std::vector< double > > m_energyThresholds
Definition
TileRawChannelTimeMonitorAlgorithm.h:45
TileRawChannelTimeMonitorAlgorithm::m_DCSStateKey
SG::ReadCondHandleKey< TileDCSState > m_DCSStateKey
Name of TileDCSState object in condition store.
Definition
TileRawChannelTimeMonitorAlgorithm.h:73
TileRawChannelTimeMonitorAlgorithm::m_amplitudeFragIDs
Gaudi::Property< std::vector< int > > m_amplitudeFragIDs
Definition
TileRawChannelTimeMonitorAlgorithm.h:61
TileRawChannelTimeMonitorAlgorithm::m_digiTimeLBGroups
std::vector< std::vector< std::vector< int > > > m_digiTimeLBGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:101
TileRawChannelTimeMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition
TileRawChannelTimeMonitorAlgorithm.cxx:73
TileRawChannelTimeMonitorAlgorithm::m_tileHWID
const TileHWID * m_tileHWID
Definition
TileRawChannelTimeMonitorAlgorithm.h:94
TileRawChannelTimeMonitorAlgorithm::m_timeDiffLBGroups
std::vector< int > m_timeDiffLBGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:100
TileRawChannelTimeMonitorAlgorithm::m_badChannelsKey
SG::ReadCondHandleKey< TileBadChannels > m_badChannelsKey
Name of TileBadChannels in condition store.
Definition
TileRawChannelTimeMonitorAlgorithm.h:79
TileRawChannelTimeMonitorAlgorithm::m_amplitudeGroups
std::vector< int > m_amplitudeGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:102
TileRawChannelTimeMonitorAlgorithm::m_uncorrTimeGroups
std::vector< int > m_uncorrTimeGroups
Definition
TileRawChannelTimeMonitorAlgorithm.h:98
TileRawChannelTimeMonitorAlgorithm::m_rawChannelContainerKey
SG::ReadHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
Definition
TileRawChannelTimeMonitorAlgorithm.h:67
TileRawChannelTimeMonitorAlgorithm::s_nDigitizers
static constexpr int s_nDigitizers
Definition
TileRawChannelTimeMonitorAlgorithm.h:107
TileRawChannelTimeMonitorAlgorithm::m_amplitudeMonitoredDrawerIdx
std::array< bool, TileCalibUtils::MAX_DRAWERIDX > m_amplitudeMonitoredDrawerIdx
Definition
TileRawChannelTimeMonitorAlgorithm.h:105
TileRawChannelTimeMonitorAlgorithm
Definition
TileRawChannelTimeMonitorAlgorithm.py:1
initialize
void initialize()
Definition
run_EoverP.cxx:894
Generated on
for ATLAS Offline Software by
1.17.0