ATLAS Offline Software
LArNNRawChannelBuilder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2024-2025 CERN for the benefit of the ATLAS collaboration
3  */
4 
5 #ifndef LARROD_LARNNRAWCHANNELBUILDER_H
6 #define LARROD_LARNNRAWCHANNELBUILDER_H
7 
8 
10 #include "StoreGate/ReadHandle.h"
11 #include "StoreGate/WriteHandle.h"
13 
16 
22 
24 #include "LArElecCalib/ILArOFC.h"
25 #include "LArElecCalib/ILArShape.h"
26 
27 
28 
29 class LArOnlineID;
30 class CaloCell_ID;
31 
32 
34 
35 public:
36 using AthReentrantAlgorithm::AthReentrantAlgorithm;
37 
38 StatusCode initialize() override;
39 StatusCode execute(const EventContext& ctx) const override;
40 
41 
42 private:
43 //Event input:
45  "SG Key of LArDigitContaiiner"};
46 //Event output:
47 SG::WriteHandleKey<LArRawChannelContainer>m_rawChannelKey{this, "LArRawChannelKey", "LArRawChannels",
48  "SG key of the output LArRawChannelContainer"};
49 //Conditions input:
50 SG::ReadCondHandleKey<ILArPedestal>m_pedestalKey{this, "PedestalKey", "LArPedestal", "SG Key of Pedestal conditions object"};
51 SG::ReadCondHandleKey<LArADC2MeV>m_adc2MeVKey{this, "ADC2MeVKey", "LArADC2MeV", "SG Key of ADC2MeV conditions object"};
52 SG::ReadCondHandleKey<LArOnOffIdMapping>m_cablingKey{this, "CablingKey", "LArOnOffIdMap", "SG Key of LArOnOffIdMapping object"};
53 SG::ReadCondHandleKey<ILArOFC> m_ofcKey{this,"OFCKey","LArOFC","SG Key of OFC conditions object"};
54 SG::ReadCondHandleKey<ILArShape> m_shapeKey{this,"ShapeKey","LArShape","SG Key of Shape conditions object"};
55 SG::ReadCondHandleKey<LArDSPThresholdsComplete> m_run1DSPThresholdsKey{this, "Run1DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 1"};
56 SG::ReadCondHandleKey<AthenaAttributeList> m_run2DSPThresholdsKey{this, "Run2DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 2"};
57 SG::ReadCondHandleKey<CondAttrListCollection> m_nnClustersDb{this, "nnClustersDbFolder","/LAR/IdentifierOfl/OnnxMap","Folder name for the NN clustering map"};
58 ServiceHandle<AthOnnx::IOnnxRuntimeSvc> m_onnxRuntimeSvc{this, "OnnxRuntimeSvc", "AthOnnx::OnnxRuntimeSvc/OnnxRuntimeSvc", "The Onnx runtime service"};
59 
60 //The following matters only in the MC case, when we have a 32 sample shapes
61 Gaudi::Property<int>m_firstSample{this, "firstSample", 0, "first of the 32 sampels of the MC shape to be used"};
62 
63 //Identifier helper
64 const LArOnlineID* m_onlineId = nullptr;
65 const CaloCell_ID* m_calocellID = nullptr;
66 
67 
68 //This flag decides, wheter to use DB or constant threshold
69 Gaudi::Property<bool> m_useDBFortQ{this,"useDB",true,"Use DB for cut on t,Q"};
70 
71 };
72 
73 
74 #endif
LArNNRawChannelBuilder::initialize
StatusCode initialize() override
Definition: LArNNRawChannelBuilder.cxx:32
LArNNRawChannelBuilder::m_shapeKey
SG::ReadCondHandleKey< ILArShape > m_shapeKey
Definition: LArNNRawChannelBuilder.h:54
LArNNRawChannelBuilder::m_calocellID
const CaloCell_ID * m_calocellID
Definition: LArNNRawChannelBuilder.h:65
LArNNRawChannelBuilder::m_run1DSPThresholdsKey
SG::ReadCondHandleKey< LArDSPThresholdsComplete > m_run1DSPThresholdsKey
Definition: LArNNRawChannelBuilder.h:55
LArNNRawChannelBuilder::m_ofcKey
SG::ReadCondHandleKey< ILArOFC > m_ofcKey
Definition: LArNNRawChannelBuilder.h:53
ILArOFC.h
SG::ReadHandleKey< LArDigitContainer >
AthenaAttributeList.h
LArNNRawChannelBuilder::m_nnClustersDb
SG::ReadCondHandleKey< CondAttrListCollection > m_nnClustersDb
Definition: LArNNRawChannelBuilder.h:57
ReadCondHandle.h
LArNNRawChannelBuilder::m_run2DSPThresholdsKey
SG::ReadCondHandleKey< AthenaAttributeList > m_run2DSPThresholdsKey
Definition: LArNNRawChannelBuilder.h:56
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:74
LArNNRawChannelBuilder::m_rawChannelKey
SG::WriteHandleKey< LArRawChannelContainer > m_rawChannelKey
Definition: LArNNRawChannelBuilder.h:47
LArADC2MeV.h
WriteHandle.h
Handle class for recording to StoreGate.
LArOnOffIdMapping.h
SG::WriteHandleKey< LArRawChannelContainer >
LArDSPThresholdsComplete.h
A LArRawConditionsContainer holding thresholds used by the DSP.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CaloCell_ID
Helper class for offline cell identifiers.
Definition: CaloCell_ID.h:34
LArNNRawChannelBuilder::m_onnxRuntimeSvc
ServiceHandle< AthOnnx::IOnnxRuntimeSvc > m_onnxRuntimeSvc
Definition: LArNNRawChannelBuilder.h:58
LArNNRawChannelBuilder::m_useDBFortQ
Gaudi::Property< bool > m_useDBFortQ
Definition: LArNNRawChannelBuilder.h:69
AthReentrantAlgorithm.h
ILArShape.h
LArNNRawChannelBuilder::m_digitKey
SG::ReadHandleKey< LArDigitContainer > m_digitKey
Definition: LArNNRawChannelBuilder.h:44
LArNNRawChannelBuilder::m_adc2MeVKey
SG::ReadCondHandleKey< LArADC2MeV > m_adc2MeVKey
Definition: LArNNRawChannelBuilder.h:51
LArNNRawChannelBuilder::execute
StatusCode execute(const EventContext &ctx) const override
Definition: LArNNRawChannelBuilder.cxx:59
LArOnlineID
Definition: LArOnlineID.h:20
LArNNRawChannelBuilder::m_onlineId
const LArOnlineID * m_onlineId
Definition: LArNNRawChannelBuilder.h:64
LArDigitContainer.h
IOnnxRuntimeSvc.h
SG::ReadCondHandleKey< ILArPedestal >
ILArPedestal.h
LArNNRawChannelBuilder
Definition: LArNNRawChannelBuilder.h:33
ReadHandle.h
Handle class for reading from StoreGate.
LArNNRawChannelBuilder::m_pedestalKey
SG::ReadCondHandleKey< ILArPedestal > m_pedestalKey
Definition: LArNNRawChannelBuilder.h:50
LArNNRawChannelBuilder::m_firstSample
Gaudi::Property< int > m_firstSample
Definition: LArNNRawChannelBuilder.h:61
LArRawChannelContainer.h
LArNNRawChannelBuilder::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Definition: LArNNRawChannelBuilder.h:52
ServiceHandle< AthOnnx::IOnnxRuntimeSvc >