ATLAS Offline Software
LArNNRawChannelBuilder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2023 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 
21 
23 #include "LArElecCalib/ILArOFC.h"
24 #include "LArElecCalib/ILArShape.h"
25 
26 #include <vector>
27 
28 
29 //Event classes
30 class LArDigitContainer;
32 
33 class LArOnlineID;
34 
35 
37 
38 public:
40 
41 StatusCode initialize() override;
42 StatusCode execute(const EventContext& ctx) const override;
43 
44 
45 private:
46 //Event input:
48  "SG Key of LArDigitContaiiner"};
49 //Event output:
50 SG::WriteHandleKey<LArRawChannelContainer>m_rawChannelKey{this, "LArRawChannelKey", "LArRawChannels",
51  "SG key of the output LArRawChannelContainer"};
52 //Conditions input:
53 SG::ReadCondHandleKey<ILArPedestal>m_pedestalKey{this, "PedestalKey", "LArPedestal", "SG Key of Pedestal conditions object"};
54 SG::ReadCondHandleKey<LArADC2MeV>m_adc2MeVKey{this, "ADC2MeVKey", "LArADC2MeV", "SG Key of ADC2MeV conditions object"};
55 SG::ReadCondHandleKey<LArOnOffIdMapping>m_cablingKey{this, "CablingKey", "LArOnOffIdMap", "SG Key of LArOnOffIdMapping object"};
56 SG::ReadCondHandleKey<ILArOFC> m_ofcKey{this,"OFCKey","LArOFC","SG Key of OFC conditions object"};
57 SG::ReadCondHandleKey<ILArShape> m_shapeKey{this,"ShapeKey","LArShape","SG Key of Shape conditions object"};
58 SG::ReadCondHandleKey<LArDSPThresholdsComplete> m_run1DSPThresholdsKey{this, "Run1DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 1"};
59 SG::ReadCondHandleKey<AthenaAttributeList> m_run2DSPThresholdsKey{this, "Run2DSPThresholdsKey","", "SG Key for thresholds to compute time and quality, run 2"};
60 
61 //The following matters only in the MC case, when we have a 32 sample shapes
62 Gaudi::Property<int>m_firstSample{this, "firstSample", 0, "first of the 32 sampels of the MC shape to be used"};
63 
64 //Identifier helper
65 const LArOnlineID* m_onlineId = nullptr;
66 
67 Gaudi::Property<std::string>m_nn_json{this, "NNJsonPath", "", "Path to json containing the lwtnn network"};
68 Gaudi::Property<std::string>m_input_node{this, "NetworkInputNode", "", "Name of the input node"};
69 Gaudi::Property<std::string>m_network_output{this, "NetworkOutputNode", "", "Name of the output node"};
70 
71 //This flag decides, wheter to use DB or constant threshold
72 Gaudi::Property<bool> m_useDBFortQ{this,"useDB",true,"Use DB for cut on t,Q"};
73 
74 };
75 
76 
77 #endif
LArNNRawChannelBuilder::initialize
StatusCode initialize() override
Definition: LArNNRawChannelBuilder.cxx:24
LArNNRawChannelBuilder::m_shapeKey
SG::ReadCondHandleKey< ILArShape > m_shapeKey
Definition: LArNNRawChannelBuilder.h:57
LArNNRawChannelBuilder::m_input_node
Gaudi::Property< std::string > m_input_node
Definition: LArNNRawChannelBuilder.h:68
LArNNRawChannelBuilder::m_run1DSPThresholdsKey
SG::ReadCondHandleKey< LArDSPThresholdsComplete > m_run1DSPThresholdsKey
Definition: LArNNRawChannelBuilder.h:58
LArNNRawChannelBuilder::m_ofcKey
SG::ReadCondHandleKey< ILArOFC > m_ofcKey
Definition: LArNNRawChannelBuilder.h:56
ILArOFC.h
SG::ReadHandleKey< LArDigitContainer >
AthenaAttributeList.h
ReadCondHandle.h
LArNNRawChannelBuilder::m_run2DSPThresholdsKey
SG::ReadCondHandleKey< AthenaAttributeList > m_run2DSPThresholdsKey
Definition: LArNNRawChannelBuilder.h:59
AthReentrantAlgorithm
An algorithm that can be simultaneously executed in multiple threads.
Definition: AthReentrantAlgorithm.h:83
LArNNRawChannelBuilder::m_rawChannelKey
SG::WriteHandleKey< LArRawChannelContainer > m_rawChannelKey
Definition: LArNNRawChannelBuilder.h:50
LArNNRawChannelBuilder::m_network_output
Gaudi::Property< std::string > m_network_output
Definition: LArNNRawChannelBuilder.h:69
LArADC2MeV.h
WriteHandle.h
Handle class for recording to StoreGate.
LArOnOffIdMapping.h
AthReentrantAlgorithm::AthReentrantAlgorithm
AthReentrantAlgorithm()
Default constructor:
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
LArNNRawChannelBuilder::m_nn_json
Gaudi::Property< std::string > m_nn_json
Definition: LArNNRawChannelBuilder.h:67
LArNNRawChannelBuilder::m_useDBFortQ
Gaudi::Property< bool > m_useDBFortQ
Definition: LArNNRawChannelBuilder.h:72
AthReentrantAlgorithm.h
ILArShape.h
LArNNRawChannelBuilder::m_digitKey
SG::ReadHandleKey< LArDigitContainer > m_digitKey
Definition: LArNNRawChannelBuilder.h:47
LArNNRawChannelBuilder::m_adc2MeVKey
SG::ReadCondHandleKey< LArADC2MeV > m_adc2MeVKey
Definition: LArNNRawChannelBuilder.h:54
LArNNRawChannelBuilder::execute
StatusCode execute(const EventContext &ctx) const override
Definition: LArNNRawChannelBuilder.cxx:47
LArOnlineID
Definition: LArOnlineID.h:20
LArNNRawChannelBuilder::m_onlineId
const LArOnlineID * m_onlineId
Definition: LArNNRawChannelBuilder.h:65
LArDigitContainer.h
SG::ReadCondHandleKey< ILArPedestal >
ILArPedestal.h
LArNNRawChannelBuilder
Definition: LArNNRawChannelBuilder.h:36
LArDigitContainer
Container class for LArDigit.
Definition: LArDigitContainer.h:24
ReadHandle.h
Handle class for reading from StoreGate.
LArNNRawChannelBuilder::m_pedestalKey
SG::ReadCondHandleKey< ILArPedestal > m_pedestalKey
Definition: LArNNRawChannelBuilder.h:53
LArNNRawChannelBuilder::m_firstSample
Gaudi::Property< int > m_firstSample
Definition: LArNNRawChannelBuilder.h:62
LArRawChannelContainer.h
LArNNRawChannelBuilder::m_cablingKey
SG::ReadCondHandleKey< LArOnOffIdMapping > m_cablingKey
Definition: LArNNRawChannelBuilder.h:55
LArRawChannelContainer
Container for LArRawChannel (IDC using LArRawChannelCollection)
Definition: LArRawChannelContainer.h:26