ATLAS Offline Software
Loading...
Searching...
No Matches
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
19#include <mutex>
20#include <vector>
21
22class HWIdentifier;
23class LArOnlineID;
25class CaloCell_ID;
26
28public:
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;
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
Definition of CaloDetDescrManager.
static Double_t sc
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
Helper class for offline cell identifiers.
Definition CaloCell_ID.h:34
const LArOnline_SuperCellID * m_onlineSCID
ToolHandle< ICaloSuperCellIDTool > m_scidtool
SG::ReadCondHandleKey< CaloDetDescrManager > m_caloMgrKey
const LArOnlineID * m_onlineID
SG::ReadCondHandleKey< LArBadChannelCont > m_badSCKey
virtual StatusCode initialize() override final
virtual StatusCode execute(const EventContext &ctx) const override final
const CaloCell_ID * m_calo_id
std::once_flag m_onceFlag ATLAS_THREAD_SAFE
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Gaudi::Property< int > m_scCut
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingSCKey
SG::ReadHandleKey< LArRawSCContainer > m_SCKey
void buildMap(const EventContext &ctx, StatusCode &sc) const
SG::WriteHandleKey< LArDeadOTXFromSC > m_deadOTXFromSCKey
SG::ReadCondHandleKey< LArBadFebCont > m_MFKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Property holding a SG store/key/clid from which a WriteHandle is made.