ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TileMonitoring
src
TileRawChannelMonitorAlgorithm.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TILEMONITORING_TILERAWCHANNELMONITORALGORITHM_H
6
#define TILEMONITORING_TILERAWCHANNELMONITORALGORITHM_H
7
8
#include "
TileCalibMonitorAlgorithm.h
"
9
#include "
TileEvent/TileDigitsContainer.h
"
10
#include "
TileEvent/TileRawChannelContainer.h
"
11
#include "
TileConditions/TileEMScale.h
"
12
#include "
TileIdentifier/TileRawChannelUnit.h
"
13
14
#include "
AthenaMonitoringKernel/Monitored.h
"
15
#include "
StoreGate/ReadHandleKey.h
"
16
#include "
StoreGate/ReadCondHandleKey.h
"
17
21
22
class
TileRawChannelMonitorAlgorithm
:
public
TileCalibMonitorAlgorithm
{
23
24
public
:
25
26
using
TileCalibMonitorAlgorithm::TileCalibMonitorAlgorithm
;
27
virtual
~TileRawChannelMonitorAlgorithm
() =
default
;
28
virtual
StatusCode
initialize
()
override
;
29
virtual
StatusCode
fillHistograms
(
const
EventContext& ctx)
const override
;
30
31
private
:
32
33
bool
isDmuHeaderError
(uint32_t
header
)
const
;
34
35
Gaudi::Property<float>
m_minAmpForCorrectedTime
{
this
,
36
"MinAmpForCorrectedTime"
, 0.5,
"Minimum amplitude to use channel for time correction calculation"
};
37
38
Gaudi::Property<float>
m_minOfflineAmp
{
this
,
39
"MinOfflineAmp"
, 0.3,
"Minimum offline amplitude for DSP check"
};
40
41
Gaudi::Property<int>
m_calibUnit
{
this
,
42
"CalibUnit"
,
TileRawChannelUnit::Invalid
,
""
};
43
44
Gaudi::Property<bool>
m_fillHistogramsForDSP
{
this
,
45
"fillHistogramsForDSP"
,
false
,
"Create and fill histograms for raw channels from DSP"
};
46
47
Gaudi::Property<bool>
m_fill2DHistograms
{
this
,
48
"fill2DHistograms"
,
true
,
"Create and fill 2D histograms"
};
49
50
SG::ReadHandleKey<TileDigitsContainer>
m_digitsContainerKey
{
this
,
51
"TileDigitsContainer"
,
"TileDigitsCnt"
,
"Input Tile digits container key"
};
52
53
SG::ReadHandleKey<TileRawChannelContainer>
m_rawChannelContainerKey
{
this
,
54
"TileRawChannelContainer"
,
""
,
"Input Tile raw channel container key"
};
55
56
SG::ReadHandleKey<TileRawChannelContainer>
m_dspRawChannelContainerKey
{
this
,
57
"TileRawChannelContainerDSP"
,
"TileRawChannelCnt"
,
"Input DSP Tile raw channel container key"
};
58
62
SG::ReadCondHandleKey<TileEMScale>
m_emScaleKey
{
this
,
63
"TileEMScale"
,
"TileEMScale"
,
"Input Tile EMS calibration constants"
};
64
65
std::vector<std::vector<int>>
m_ampGroups
;
66
std::vector<std::vector<int>>
m_timeGroups
;
67
std::vector<std::vector<int>>
m_timeCorrGroups
;
68
69
// For 5 pF capacitor
70
std::vector<std::vector<int>>
m_ampOverQ5Groups
;
71
std::vector<std::vector<int>>
m_ampVsQ5Groups
;
72
std::vector<std::vector<int>>
m_time5Groups
;
73
std::vector<std::vector<int>>
m_timeVsTime5Groups
;
74
75
// For 100 pF capacitor
76
std::vector<std::vector<int>>
m_ampOverQ100Groups
;
77
std::vector<std::vector<int>>
m_ampVsQ100Groups
;
78
std::vector<std::vector<int>>
m_time100Groups
;
79
std::vector<std::vector<int>>
m_timeVsTime100Groups
;
80
81
std::vector<std::vector<int>>
m_dspAmpGroups
;
82
std::vector<std::vector<int>>
m_dspTimeGroups
;
83
std::vector<std::vector<int>>
m_dspChi2Groups
;
84
std::vector<std::vector<int>>
m_dspChi2VsAmpGroups
;
85
86
std::vector<std::vector<int>>
m_ampDiffGroups
;
87
std::vector<std::vector<int>>
m_timeDiffGroups
;
88
89
static
const
int
MAX_DMU
{16};
90
TileRawChannelUnit::UNIT
m_finalRawChannelUnit
{
TileRawChannelUnit::Invalid
};
91
92
double
m_dac2Charge
[2] = {};
93
bool
m_runTypeIsNotCIS
{
true
};
94
};
95
96
97
#endif
// TILEMONITORING_TILERAWCHANNELMONITORALGORITHM_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.
TileCalibMonitorAlgorithm.h
TileDigitsContainer.h
TileEMScale.h
TileRawChannelContainer.h
TileRawChannelUnit.h
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
TileCalibMonitorAlgorithm::TileCalibMonitorAlgorithm
TileCalibMonitorAlgorithm(const std::string &name, ISvcLocator *svcLocator)
Definition
TileCalibMonitorAlgorithm.h:25
TileRawChannelMonitorAlgorithm::m_timeCorrGroups
std::vector< std::vector< int > > m_timeCorrGroups
Definition
TileRawChannelMonitorAlgorithm.h:67
TileRawChannelMonitorAlgorithm::m_ampGroups
std::vector< std::vector< int > > m_ampGroups
Definition
TileRawChannelMonitorAlgorithm.h:65
TileRawChannelMonitorAlgorithm::MAX_DMU
static const int MAX_DMU
Definition
TileRawChannelMonitorAlgorithm.h:89
TileRawChannelMonitorAlgorithm::m_dspRawChannelContainerKey
SG::ReadHandleKey< TileRawChannelContainer > m_dspRawChannelContainerKey
Definition
TileRawChannelMonitorAlgorithm.h:56
TileRawChannelMonitorAlgorithm::m_dspTimeGroups
std::vector< std::vector< int > > m_dspTimeGroups
Definition
TileRawChannelMonitorAlgorithm.h:82
TileRawChannelMonitorAlgorithm::m_ampDiffGroups
std::vector< std::vector< int > > m_ampDiffGroups
Definition
TileRawChannelMonitorAlgorithm.h:86
TileRawChannelMonitorAlgorithm::m_dac2Charge
double m_dac2Charge[2]
Definition
TileRawChannelMonitorAlgorithm.h:92
TileRawChannelMonitorAlgorithm::m_emScaleKey
SG::ReadCondHandleKey< TileEMScale > m_emScaleKey
Name of TileEMScale in condition store.
Definition
TileRawChannelMonitorAlgorithm.h:62
TileRawChannelMonitorAlgorithm::m_ampVsQ100Groups
std::vector< std::vector< int > > m_ampVsQ100Groups
Definition
TileRawChannelMonitorAlgorithm.h:77
TileRawChannelMonitorAlgorithm::m_ampOverQ5Groups
std::vector< std::vector< int > > m_ampOverQ5Groups
Definition
TileRawChannelMonitorAlgorithm.h:70
TileRawChannelMonitorAlgorithm::~TileRawChannelMonitorAlgorithm
virtual ~TileRawChannelMonitorAlgorithm()=default
TileRawChannelMonitorAlgorithm::m_dspChi2VsAmpGroups
std::vector< std::vector< int > > m_dspChi2VsAmpGroups
Definition
TileRawChannelMonitorAlgorithm.h:84
TileRawChannelMonitorAlgorithm::m_time100Groups
std::vector< std::vector< int > > m_time100Groups
Definition
TileRawChannelMonitorAlgorithm.h:78
TileRawChannelMonitorAlgorithm::m_dspAmpGroups
std::vector< std::vector< int > > m_dspAmpGroups
Definition
TileRawChannelMonitorAlgorithm.h:81
TileRawChannelMonitorAlgorithm::m_calibUnit
Gaudi::Property< int > m_calibUnit
Definition
TileRawChannelMonitorAlgorithm.h:41
TileRawChannelMonitorAlgorithm::m_dspChi2Groups
std::vector< std::vector< int > > m_dspChi2Groups
Definition
TileRawChannelMonitorAlgorithm.h:83
TileRawChannelMonitorAlgorithm::m_fillHistogramsForDSP
Gaudi::Property< bool > m_fillHistogramsForDSP
Definition
TileRawChannelMonitorAlgorithm.h:44
TileRawChannelMonitorAlgorithm::m_timeVsTime100Groups
std::vector< std::vector< int > > m_timeVsTime100Groups
Definition
TileRawChannelMonitorAlgorithm.h:79
TileRawChannelMonitorAlgorithm::m_timeDiffGroups
std::vector< std::vector< int > > m_timeDiffGroups
Definition
TileRawChannelMonitorAlgorithm.h:87
TileRawChannelMonitorAlgorithm::m_ampOverQ100Groups
std::vector< std::vector< int > > m_ampOverQ100Groups
Definition
TileRawChannelMonitorAlgorithm.h:76
TileRawChannelMonitorAlgorithm::m_timeVsTime5Groups
std::vector< std::vector< int > > m_timeVsTime5Groups
Definition
TileRawChannelMonitorAlgorithm.h:73
TileRawChannelMonitorAlgorithm::isDmuHeaderError
bool isDmuHeaderError(uint32_t header) const
Definition
TileRawChannelMonitorAlgorithm.cxx:395
TileRawChannelMonitorAlgorithm::TileCalibMonitorAlgorithm
TileCalibMonitorAlgorithm(const std::string &name, ISvcLocator *svcLocator)
Definition
TileCalibMonitorAlgorithm.h:25
TileRawChannelMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition
TileRawChannelMonitorAlgorithm.cxx:112
TileRawChannelMonitorAlgorithm::m_runTypeIsNotCIS
bool m_runTypeIsNotCIS
Definition
TileRawChannelMonitorAlgorithm.h:93
TileRawChannelMonitorAlgorithm::m_minAmpForCorrectedTime
Gaudi::Property< float > m_minAmpForCorrectedTime
Definition
TileRawChannelMonitorAlgorithm.h:35
TileRawChannelMonitorAlgorithm::m_fill2DHistograms
Gaudi::Property< bool > m_fill2DHistograms
Definition
TileRawChannelMonitorAlgorithm.h:47
TileRawChannelMonitorAlgorithm::m_ampVsQ5Groups
std::vector< std::vector< int > > m_ampVsQ5Groups
Definition
TileRawChannelMonitorAlgorithm.h:71
TileRawChannelMonitorAlgorithm::m_timeGroups
std::vector< std::vector< int > > m_timeGroups
Definition
TileRawChannelMonitorAlgorithm.h:66
TileRawChannelMonitorAlgorithm::m_finalRawChannelUnit
TileRawChannelUnit::UNIT m_finalRawChannelUnit
Definition
TileRawChannelMonitorAlgorithm.h:90
TileRawChannelMonitorAlgorithm::m_minOfflineAmp
Gaudi::Property< float > m_minOfflineAmp
Definition
TileRawChannelMonitorAlgorithm.h:38
TileRawChannelMonitorAlgorithm::m_digitsContainerKey
SG::ReadHandleKey< TileDigitsContainer > m_digitsContainerKey
Definition
TileRawChannelMonitorAlgorithm.h:50
TileRawChannelMonitorAlgorithm::m_time5Groups
std::vector< std::vector< int > > m_time5Groups
Definition
TileRawChannelMonitorAlgorithm.h:72
TileRawChannelMonitorAlgorithm::m_rawChannelContainerKey
SG::ReadHandleKey< TileRawChannelContainer > m_rawChannelContainerKey
Definition
TileRawChannelMonitorAlgorithm.h:53
TileRawChannelUnit::UNIT
UNIT
Definition
TileRawChannelUnit.h:16
TileRawChannelUnit::Invalid
@ Invalid
Definition
TileRawChannelUnit.h:26
header
Definition
hcg.cxx:529
TileRawChannelMonitorAlgorithm
Definition
TileRawChannelMonitorAlgorithm.py:1
initialize
void initialize()
Definition
run_EoverP.cxx:894
Generated on
for ATLAS Offline Software by
1.17.0