ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArMonitoring
src
LArNoiseCorrelationMonAlg.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3
*/
4
11
12
#ifndef LARMONITORING_LARCORRMON_H
13
#define LARMONITORING_LARCORRMON_H
14
15
//inheritance:
16
#include "
AthenaMonitoring/AthMonitorAlgorithm.h
"
17
18
19
//LAr services:
20
#include "
LArElecCalib/ILArPedestal.h
"
21
#include "
LArRecConditions/LArBadChannelMask.h
"
22
#include "
LArRecConditions/LArBadChannelCont.h
"
23
#include "
StoreGate/ReadCondHandleKey.h
"
24
#include "
StoreGate/ReadHandleKey.h
"
25
#include "
LArCabling/LArOnOffIdMapping.h
"
26
27
28
//STL:
29
#include <string>
30
31
32
33
class
LArOnlineID
;
34
class
HWIdentifier
;
35
36
class
LArNoiseCorrelationMonAlg
final:
public
AthMonitorAlgorithm
37
{
38
39
40
public
:
41
//Delegate constructor
42
using
AthMonitorAlgorithm::AthMonitorAlgorithm
;
43
45
virtual
~LArNoiseCorrelationMonAlg
();
46
47
48
virtual
StatusCode
initialize
()
override
;
49
virtual
StatusCode
fillHistograms
(
const
EventContext& ctx)
const override
;
50
51
52
private
:
53
55
const
LArOnlineID
*
m_LArOnlineIDHelper
=
nullptr
;
56
58
LArBadChannelMask
m_bcMask
;
59
SG::ReadCondHandleKey<LArBadChannelCont>
m_bcContKey
{
this
,
"BadChanKey"
,
"LArBadChannel"
,
"SG key for LArBadChan object"
};
60
Gaudi::Property<std::vector<std::string> >
m_problemsToMask
{
this
,
"ProblemsToMask"
,{},
"Bad-Channel categories to mask"
};
61
63
SG::ReadCondHandleKey<LArOnOffIdMapping>
m_cablingKey
{
this
,
"CablingKey"
,
"LArOnOffIdMap"
,
"SG Key of LArOnOffIdMapping object"
};
64
66
SG::ReadCondHandleKey<ILArPedestal>
m_keyPedestal
{
this
,
"LArPedestalKey"
,
"LArPedestal"
,
"SG key of LArPedestal CDO"
};
67
69
Gaudi::Property<std::vector<std::string> >
m_FEBlist
{
this
,
"FEBlist"
, {}};
70
71
Gaudi::Property<bool>
m_plotsOFF
{
this
,
"PlotsOFF"
,
false
};
//to avoid plotting everything when online or in case the wrong custom list is passed
72
74
Gaudi::Property<bool>
m_isCalibrationRun
{
this
,
"IsCalibrationRun"
,
false
};
75
77
Gaudi::Property<bool>
m_ignoreKnownBadChannels
{
this
,
"IgnoreBadChannels"
,
false
};
78
80
SG::ReadHandleKey<LArDigitContainer>
m_LArDigitContainerKey
{
this
,
"LArDigitContainerKey"
,
"FREE"
,
"SG key of LArDigitContainer read from Bytestream"
};
81
83
Gaudi::Property<std::string>
m_noiseCorrGroupName
{
this
,
"NoiseCorrGroupName"
,
"NoiseCorr"
};
84
std::map<std::string,int>
m_noiseCorrGroups
;
85
86
87
bool
isGoodChannel
(
const
HWIdentifier
id
,
const
float
ped,
const
LArOnOffIdMapping
*cabling,
const
LArBadChannelCont
* bc)
const
;
88
89
bool
m_checkAbortGap
=
false
;
90
const
std::string
m_abortGapTrig
{
"HLT_noalg_cosmiccalo_L1RD1_EMPTY"
};
91
93
struct
perFeb_t
{
94
perFeb_t
(
const
std::string& n) :
m_febName
(n) {};
95
std::string
m_febName
;
96
std::vector<std::pair<const LArDigit*,double> >
m_digitsAndPed
;
97
std::vector<std::pair<int,double> >
m_meanSum
;
98
std::vector<std::pair<std::pair<int,int>,
double
> >
m_partSum
;
99
void
sumSamples
(
const
LArOnlineID
* lArOnlineIDHelper);
100
};
101
102
std::map<HWIdentifier,perFeb_t>
m_febMapModel
;
//Pre-fill with elements known at initialize
103
104
};
105
106
#endif
AthMonitorAlgorithm.h
ILArPedestal.h
LArBadChannelCont.h
LArBadChannelCont
LArBadXCont< LArBadChannel > LArBadChannelCont
Definition
LArBadChannelCont.h:108
LArBadChannelMask.h
LArOnOffIdMapping.h
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AthMonitorAlgorithm::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
HWIdentifier
Definition
HWIdentifier.h:13
LArBadChannelMask
Definition
LArBadChannelMask.h:18
LArNoiseCorrelationMonAlg::m_noiseCorrGroups
std::map< std::string, int > m_noiseCorrGroups
Definition
LArNoiseCorrelationMonAlg.h:84
LArNoiseCorrelationMonAlg::m_LArOnlineIDHelper
const LArOnlineID * m_LArOnlineIDHelper
services
Definition
LArNoiseCorrelationMonAlg.h:55
LArNoiseCorrelationMonAlg::m_isCalibrationRun
Gaudi::Property< bool > m_isCalibrationRun
to avoid asking for triggers in case of a calibration run
Definition
LArNoiseCorrelationMonAlg.h:74
LArNoiseCorrelationMonAlg::m_noiseCorrGroupName
Gaudi::Property< std::string > m_noiseCorrGroupName
the group array
Definition
LArNoiseCorrelationMonAlg.h:83
LArNoiseCorrelationMonAlg::m_ignoreKnownBadChannels
Gaudi::Property< bool > m_ignoreKnownBadChannels
bool use to mask the bad channels
Definition
LArNoiseCorrelationMonAlg.h:77
LArNoiseCorrelationMonAlg::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
LArNoiseCorrelationMonAlg::m_checkAbortGap
bool m_checkAbortGap
Definition
LArNoiseCorrelationMonAlg.h:89
LArNoiseCorrelationMonAlg::m_bcMask
LArBadChannelMask m_bcMask
Handle to bad-channel mask.
Definition
LArNoiseCorrelationMonAlg.h:58
LArNoiseCorrelationMonAlg::m_abortGapTrig
const std::string m_abortGapTrig
Definition
LArNoiseCorrelationMonAlg.h:90
LArNoiseCorrelationMonAlg::m_febMapModel
std::map< HWIdentifier, perFeb_t > m_febMapModel
Definition
LArNoiseCorrelationMonAlg.h:102
LArNoiseCorrelationMonAlg::m_keyPedestal
SG::ReadCondHandleKey< ILArPedestal > m_keyPedestal
Handle to pedestal.
Definition
LArNoiseCorrelationMonAlg.h:66
LArNoiseCorrelationMonAlg::m_LArDigitContainerKey
SG::ReadHandleKey< LArDigitContainer > m_LArDigitContainerKey
Handle to digits.
Definition
LArNoiseCorrelationMonAlg.h:80
LArNoiseCorrelationMonAlg::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition
LArNoiseCorrelationMonAlg.cxx:101
LArNoiseCorrelationMonAlg::isGoodChannel
bool isGoodChannel(const HWIdentifier id, const float ped, const LArOnOffIdMapping *cabling, const LArBadChannelCont *bc) const
check if channel is ok for monitoring
Definition
LArNoiseCorrelationMonAlg.cxx:186
LArNoiseCorrelationMonAlg::m_bcContKey
SG::ReadCondHandleKey< LArBadChannelCont > m_bcContKey
Definition
LArNoiseCorrelationMonAlg.h:59
LArNoiseCorrelationMonAlg::m_plotsOFF
Gaudi::Property< bool > m_plotsOFF
Definition
LArNoiseCorrelationMonAlg.h:71
LArNoiseCorrelationMonAlg::m_problemsToMask
Gaudi::Property< std::vector< std::string > > m_problemsToMask
Definition
LArNoiseCorrelationMonAlg.h:60
LArNoiseCorrelationMonAlg::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Handle to cabling.
Definition
LArNoiseCorrelationMonAlg.h:63
LArNoiseCorrelationMonAlg::m_FEBlist
Gaudi::Property< std::vector< std::string > > m_FEBlist
list of FEBs to monitor.
Definition
LArNoiseCorrelationMonAlg.h:69
LArOnOffIdMapping
Definition
LArOnOffIdMapping.h:20
LArOnlineID
Definition
LArOnlineID.h:21
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
LArNoiseCorrelationMonAlg
Definition
LArNoiseCorrelationMonAlg.py:1
initialize
void initialize()
Definition
run_EoverP.cxx:894
LArNoiseCorrelationMonAlg::perFeb_t::m_meanSum
std::vector< std::pair< int, double > > m_meanSum
Definition
LArNoiseCorrelationMonAlg.h:97
LArNoiseCorrelationMonAlg::perFeb_t::m_partSum
std::vector< std::pair< std::pair< int, int >, double > > m_partSum
Definition
LArNoiseCorrelationMonAlg.h:98
LArNoiseCorrelationMonAlg::perFeb_t::m_febName
std::string m_febName
Definition
LArNoiseCorrelationMonAlg.h:95
LArNoiseCorrelationMonAlg::perFeb_t::m_digitsAndPed
std::vector< std::pair< const LArDigit *, double > > m_digitsAndPed
Definition
LArNoiseCorrelationMonAlg.h:96
LArNoiseCorrelationMonAlg::perFeb_t::perFeb_t
perFeb_t(const std::string &n)
Definition
LArNoiseCorrelationMonAlg.h:94
LArNoiseCorrelationMonAlg::perFeb_t::sumSamples
void sumSamples(const LArOnlineID *lArOnlineIDHelper)
Definition
LArNoiseCorrelationMonAlg.cxx:207
Generated on
for ATLAS Offline Software by
1.17.0