ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TileMonitoring
src
TileTBCellMonitorAlgorithm.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef TILEMONITORING_TILETBCELLMONITORALGORITHM_H
6
#define TILEMONITORING_TILETBCELLMONITORALGORITHM_H
7
8
#include "
TileConditions/TileCablingSvc.h
"
9
#include "
TileCalibBlobObjs/TileCalibUtils.h
"
10
11
#include "
CaloEvent/CaloCellContainer.h
"
12
13
#include "
AthenaMonitoring/AthMonitorAlgorithm.h
"
14
#include "
StoreGate/ReadHandleKey.h
"
15
#include <array>
16
17
class
TileInfo
;
18
class
TileID
;
19
class
TileHWID
;
20
24
25
class
TileTBCellMonitorAlgorithm
:
public
AthMonitorAlgorithm
{
26
27
public
:
28
29
using
AthMonitorAlgorithm::AthMonitorAlgorithm
;
30
virtual
~TileTBCellMonitorAlgorithm
() =
default
;
31
virtual
StatusCode
initialize
()
override
;
32
virtual
StatusCode
fillHistograms
(
const
EventContext& ctx)
const override
;
33
34
private
:
35
39
ServiceHandle<TileCablingSvc>
m_cablingSvc
{
this
,
40
"TileCablingSvc"
,
"TileCablingSvc"
,
"The Tile cabling service"
};
41
42
SG::ReadHandleKey<CaloCellContainer>
m_caloCellContainerKey
{
this
,
43
"CaloCellContainer"
,
"AllCalo"
,
"Calo cell container name"
};
44
45
Gaudi::Property<std::vector<int>>
m_fragIDs
{
this
,
46
"TileFragIDs"
, {0x100, 0x101, 0x200, 0x201, 0x402},
"Tile Frag IDs of modules to process."
};
47
48
Gaudi::Property<int>
m_TBperiod
{
this
,
49
"TBperiod"
, 2016,
"Tile TB period."
};
50
51
Gaudi::Property<std::vector<std::string>>
m_masked
{
this
,
52
"Masked"
, {},
"Masked channels: 'module gain channel,channel' (channels are separated by comma)"
};
53
54
Gaudi::Property<float>
m_energyThresholdForTime
{
this
,
55
"EnergyThresholdForTime"
, 100.0F,
"Energy threshold for timing in MeV"
};
56
57
Gaudi::Property<bool>
m_fillHistogramsPerChannel
{
this
,
58
"fillHistogramsPerChannel"
,
true
,
"Fill time and energy histograms per channel"
};
59
60
Gaudi::Property<float>
m_scaleFactor
{
this
,
61
"ScaleFactor"
, 1.0,
"Scale factor to apply to cell energy"
};
62
63
std::map<std::string, int>
m_sampleEnergyGroups
;
64
std::map<std::string, int>
m_energyGroups
;
65
std::map<std::string, int>
m_energyDiffGroups
;
66
std::map<std::string, int>
m_energy2VsEnergy1Groups
;
67
std::map<std::string, int>
m_timeGroups
;
68
std::map<std::string, int>
m_timeDiffGroups
;
69
std::map<std::string, int>
m_time2VsTime1Groups
;
70
std::map<std::string, int>
m_channelEnergyGroups
;
71
std::map<std::string, int>
m_channelTimeGroups
;
72
73
const
TileID
*
m_tileID
{
nullptr
};
74
const
TileHWID
*
m_tileHWID
{
nullptr
};
75
const
TileCablingService
*
m_cabling
{
nullptr
};
76
77
double
m_energyThresholdForTimeInGeV
{0.0};
78
79
std::array<unsigned int, TileCalibUtils::MAX_DRAWERIDX>
m_drawerIdxToROS
{};
80
std::array<unsigned int, TileCalibUtils::MAX_DRAWERIDX>
m_drawerIdxToDrawer
{};
81
std::array<bool, TileCalibUtils::MAX_DRAWERIDX>
m_monitoredDrawerIdx
{};
82
std::array<std::array<unsigned char, TileCalibUtils::MAX_CHAN>,
TileCalibUtils::MAX_DRAWERIDX
>
m_maskedChannels
{{}};
83
};
84
85
86
#endif
// TILEMONITORING_TILETBCELLMONITORALGORITHM_H
AthMonitorAlgorithm.h
CaloCellContainer.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TileCablingSvc.h
TileCalibUtils.h
AthMonitorAlgorithm::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
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
TileCalibUtils::MAX_DRAWERIDX
static const unsigned int MAX_DRAWERIDX
Maximal drawer index.
Definition
TileCalibUtils.h:143
TileHWID
Helper class for TileCal online (hardware) identifiers.
Definition
TileHWID.h:49
TileID
Helper class for TileCal offline identifiers.
Definition
TileID.h:67
TileInfo
Definition
TileInfo.h:49
TileTBCellMonitorAlgorithm::m_energyDiffGroups
std::map< std::string, int > m_energyDiffGroups
Definition
TileTBCellMonitorAlgorithm.h:65
TileTBCellMonitorAlgorithm::m_cabling
const TileCablingService * m_cabling
Definition
TileTBCellMonitorAlgorithm.h:75
TileTBCellMonitorAlgorithm::m_channelTimeGroups
std::map< std::string, int > m_channelTimeGroups
Definition
TileTBCellMonitorAlgorithm.h:71
TileTBCellMonitorAlgorithm::m_drawerIdxToDrawer
std::array< unsigned int, TileCalibUtils::MAX_DRAWERIDX > m_drawerIdxToDrawer
Definition
TileTBCellMonitorAlgorithm.h:80
TileTBCellMonitorAlgorithm::m_energyThresholdForTimeInGeV
double m_energyThresholdForTimeInGeV
Definition
TileTBCellMonitorAlgorithm.h:77
TileTBCellMonitorAlgorithm::m_timeDiffGroups
std::map< std::string, int > m_timeDiffGroups
Definition
TileTBCellMonitorAlgorithm.h:68
TileTBCellMonitorAlgorithm::m_masked
Gaudi::Property< std::vector< std::string > > m_masked
Definition
TileTBCellMonitorAlgorithm.h:51
TileTBCellMonitorAlgorithm::AthMonitorAlgorithm
AthMonitorAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor.
Definition
AthMonitorAlgorithm.cxx:8
TileTBCellMonitorAlgorithm::m_channelEnergyGroups
std::map< std::string, int > m_channelEnergyGroups
Definition
TileTBCellMonitorAlgorithm.h:70
TileTBCellMonitorAlgorithm::m_scaleFactor
Gaudi::Property< float > m_scaleFactor
Definition
TileTBCellMonitorAlgorithm.h:60
TileTBCellMonitorAlgorithm::m_energyGroups
std::map< std::string, int > m_energyGroups
Definition
TileTBCellMonitorAlgorithm.h:64
TileTBCellMonitorAlgorithm::m_sampleEnergyGroups
std::map< std::string, int > m_sampleEnergyGroups
Definition
TileTBCellMonitorAlgorithm.h:63
TileTBCellMonitorAlgorithm::m_timeGroups
std::map< std::string, int > m_timeGroups
Definition
TileTBCellMonitorAlgorithm.h:67
TileTBCellMonitorAlgorithm::m_fillHistogramsPerChannel
Gaudi::Property< bool > m_fillHistogramsPerChannel
Definition
TileTBCellMonitorAlgorithm.h:57
TileTBCellMonitorAlgorithm::m_TBperiod
Gaudi::Property< int > m_TBperiod
Definition
TileTBCellMonitorAlgorithm.h:48
TileTBCellMonitorAlgorithm::m_drawerIdxToROS
std::array< unsigned int, TileCalibUtils::MAX_DRAWERIDX > m_drawerIdxToROS
Definition
TileTBCellMonitorAlgorithm.h:79
TileTBCellMonitorAlgorithm::m_energyThresholdForTime
Gaudi::Property< float > m_energyThresholdForTime
Definition
TileTBCellMonitorAlgorithm.h:54
TileTBCellMonitorAlgorithm::m_tileHWID
const TileHWID * m_tileHWID
Definition
TileTBCellMonitorAlgorithm.h:74
TileTBCellMonitorAlgorithm::m_time2VsTime1Groups
std::map< std::string, int > m_time2VsTime1Groups
Definition
TileTBCellMonitorAlgorithm.h:69
TileTBCellMonitorAlgorithm::~TileTBCellMonitorAlgorithm
virtual ~TileTBCellMonitorAlgorithm()=default
TileTBCellMonitorAlgorithm::m_maskedChannels
std::array< std::array< unsigned char, TileCalibUtils::MAX_CHAN >, TileCalibUtils::MAX_DRAWERIDX > m_maskedChannels
Definition
TileTBCellMonitorAlgorithm.h:82
TileTBCellMonitorAlgorithm::m_cablingSvc
ServiceHandle< TileCablingSvc > m_cablingSvc
Name of Tile cabling service.
Definition
TileTBCellMonitorAlgorithm.h:39
TileTBCellMonitorAlgorithm::m_caloCellContainerKey
SG::ReadHandleKey< CaloCellContainer > m_caloCellContainerKey
Definition
TileTBCellMonitorAlgorithm.h:42
TileTBCellMonitorAlgorithm::m_fragIDs
Gaudi::Property< std::vector< int > > m_fragIDs
Definition
TileTBCellMonitorAlgorithm.h:45
TileTBCellMonitorAlgorithm::fillHistograms
virtual StatusCode fillHistograms(const EventContext &ctx) const override
adds event to the monitoring histograms
Definition
TileTBCellMonitorAlgorithm.cxx:133
TileTBCellMonitorAlgorithm::m_energy2VsEnergy1Groups
std::map< std::string, int > m_energy2VsEnergy1Groups
Definition
TileTBCellMonitorAlgorithm.h:66
TileTBCellMonitorAlgorithm::m_monitoredDrawerIdx
std::array< bool, TileCalibUtils::MAX_DRAWERIDX > m_monitoredDrawerIdx
Definition
TileTBCellMonitorAlgorithm.h:81
TileTBCellMonitorAlgorithm::m_tileID
const TileID * m_tileID
Definition
TileTBCellMonitorAlgorithm.h:73
TileTBCellMonitorAlgorithm
Definition
TileTBCellMonitorAlgorithm.py:1
initialize
void initialize()
Definition
run_EoverP.cxx:894
Generated on
for ATLAS Offline Software by
1.17.0