ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCellRec
src
LArCelldeadOTXAlg.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 LARCELLREC_LArCelldeadOTXAlg_H
6
#define LARCELLREC_LArCelldeadOTXAlg_H
7
8
#include "
AthenaBaseComps/AthReentrantAlgorithm.h
"
9
#include "
CaloInterface/ICaloCellMakerTool.h
"
10
#include "
CaloDetDescr/ICaloSuperCellIDTool.h
"
11
#include "
LArRawEvent/LArRawSCContainer.h
"
12
#include "
LArRecEvent/LArDeadOTXFromSC.h
"
13
#include "
LArRecConditions/LArBadChannelCont.h
"
14
#include "
LArCabling/LArOnOffIdMapping.h
"
15
#include "
CaloDetDescr/CaloDetDescrManager.h
"
16
#include "
StoreGate/WriteHandleKey.h
"
17
#include "
StoreGate/ReadHandleKey.h
"
18
#include "
StoreGate/ReadCondHandleKey.h
"
19
#include <mutex>
20
#include <vector>
21
22
class
HWIdentifier
;
23
class
LArOnlineID
;
24
class
LArOnline_SuperCellID
;
25
class
CaloCell_ID
;
26
27
class
LArCelldeadOTXAlg
:
public
AthReentrantAlgorithm
{
28
public
:
29
using
AthReentrantAlgorithm::AthReentrantAlgorithm;
30
31
virtual
StatusCode
initialize
()
override
final
;
32
//Implements the ICaloCellMaker interface
33
virtual
StatusCode
execute
(
const
EventContext& ctx)
const
override
final
;
34
35
private
:
36
SG::ReadHandleKey<LArRawSCContainer>
m_SCKey
{
this
,
"keySC"
,
"SC_ET"
,
"Key for SuperCells container"
};
37
SG::WriteHandleKey<LArDeadOTXFromSC>
m_deadOTXFromSCKey
{
this
,
"DeadOTXFromSC"
,
"DeadOTXFromSC"
,
"DeadOTXFromSC"
};
38
SG::ReadCondHandleKey<LArBadFebCont>
m_MFKey
{
this
,
"keyMF"
,
"LArBadFeb"
,
"Key for missing FEBs"
};
39
SG::ReadCondHandleKey<LArBadChannelCont>
m_badSCKey
{
this
,
"BadSCKey"
,
"LArBadChannelSC"
,
"Key of the LArBadChannelCont SC"
};
40
SG::ReadCondHandleKey<LArOnOffIdMapping>
m_cablingKey
{
this
,
"keyCabling"
,
"LArOnOffIdMap"
,
"Key for the cabling"
};
41
SG::ReadCondHandleKey<LArOnOffIdMapping>
m_cablingSCKey
{
this
,
"keySCCabling"
,
"LArOnOffIdMapSC"
,
"Key for the cabling of the SC"
};
42
SG::ReadCondHandleKey<CaloDetDescrManager>
m_caloMgrKey
{
this
,
"CaloDetDescrManager"
,
"CaloDetDescrManager"
};
43
44
Gaudi::Property<int>
m_scCut
{
this
,
"SCEneCut"
,70,
"Do not use super-cells with values below this cut"
};
45
const
LArOnlineID
*
m_onlineID
=
nullptr
;
46
const
LArOnline_SuperCellID
*
m_onlineSCID
=
nullptr
;
47
const
CaloCell_ID
*
m_calo_id
=
nullptr
;
48
ToolHandle<ICaloSuperCellIDTool>
m_scidtool
{
this
,
"CaloSuperCellIDTool"
,
"CaloSuperCellIDTool"
,
"Offline / SuperCell ID mapping tool"
};
49
50
void
buildMap
(
const
EventContext& ctx, StatusCode&
sc
)
const
;
51
mutable
std::once_flag m_onceFlag
ATLAS_THREAD_SAFE
;
52
53
mutable
std::mutex
m_mtx
;
54
mutable
std::vector<HWIdentifier> m_febs
ATLAS_THREAD_SAFE
;
55
mutable
std::vector<std::vector<float> > m_multipliers
ATLAS_THREAD_SAFE
;
56
mutable
std::vector<std::vector<uint32_t> > m_channels
ATLAS_THREAD_SAFE
;
57
};
58
59
#endif
AthReentrantAlgorithm.h
CaloDetDescrManager.h
Definition of CaloDetDescrManager.
ICaloCellMakerTool.h
ICaloSuperCellIDTool.h
LArBadChannelCont.h
LArDeadOTXFromSC.h
LArOnOffIdMapping.h
sc
static Double_t sc
Definition
LArPhysWaveHECTool.cxx:37
LArRawSCContainer.h
ReadCondHandleKey.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition
AthReentrantAlgorithm.h:74
CaloCell_ID
Helper class for offline cell identifiers.
Definition
CaloCell_ID.h:34
HWIdentifier
Definition
HWIdentifier.h:13
LArCelldeadOTXAlg
Definition
LArCelldeadOTXAlg.h:27
LArCelldeadOTXAlg::m_onlineSCID
const LArOnline_SuperCellID * m_onlineSCID
Definition
LArCelldeadOTXAlg.h:46
LArCelldeadOTXAlg::m_scidtool
ToolHandle< ICaloSuperCellIDTool > m_scidtool
Definition
LArCelldeadOTXAlg.h:48
LArCelldeadOTXAlg::m_caloMgrKey
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
Definition
LArCelldeadOTXAlg.h:42
LArCelldeadOTXAlg::m_onlineID
const LArOnlineID * m_onlineID
Definition
LArCelldeadOTXAlg.h:45
LArCelldeadOTXAlg::m_mtx
std::mutex m_mtx
Definition
LArCelldeadOTXAlg.h:53
LArCelldeadOTXAlg::m_badSCKey
SG::ReadCondHandleKey< LArBadChannelCont > m_badSCKey
Definition
LArCelldeadOTXAlg.h:39
LArCelldeadOTXAlg::initialize
virtual StatusCode initialize() override final
Definition
LArCelldeadOTXAlg.cxx:14
LArCelldeadOTXAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override final
Definition
LArCelldeadOTXAlg.cxx:33
LArCelldeadOTXAlg::m_calo_id
const CaloCell_ID * m_calo_id
Definition
LArCelldeadOTXAlg.h:47
LArCelldeadOTXAlg::ATLAS_THREAD_SAFE
std::once_flag m_onceFlag ATLAS_THREAD_SAFE
Definition
LArCelldeadOTXAlg.h:51
LArCelldeadOTXAlg::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Definition
LArCelldeadOTXAlg.h:40
LArCelldeadOTXAlg::m_scCut
Gaudi::Property< int > m_scCut
Definition
LArCelldeadOTXAlg.h:44
LArCelldeadOTXAlg::m_cablingSCKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingSCKey
Definition
LArCelldeadOTXAlg.h:41
LArCelldeadOTXAlg::m_SCKey
SG::ReadHandleKey< LArRawSCContainer > m_SCKey
Definition
LArCelldeadOTXAlg.h:36
LArCelldeadOTXAlg::buildMap
void buildMap(const EventContext &ctx, StatusCode &sc) const
Definition
LArCelldeadOTXAlg.cxx:109
LArCelldeadOTXAlg::m_deadOTXFromSCKey
SG::WriteHandleKey< LArDeadOTXFromSC > m_deadOTXFromSCKey
Definition
LArCelldeadOTXAlg.h:37
LArCelldeadOTXAlg::m_MFKey
SG::ReadCondHandleKey< LArBadFebCont > m_MFKey
Definition
LArCelldeadOTXAlg.h:38
LArOnlineID
Definition
LArOnlineID.h:21
LArOnline_SuperCellID
Definition
LArOnline_SuperCellID.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
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition
StoreGate/StoreGate/WriteHandleKey.h:40
Generated on
for ATLAS Offline Software by
1.17.0