ATLAS Offline Software
TileDigitsToNtuple.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 //****************************************************************************
6 // Filename : TileDigitsToNtuple.h
7 // Author :
8 // Created :
9 //
10 // DESCRIPTION
11 //
12 // To create Digits Ntuple file from TileHitContainer
13 //
14 // Properties (JobOption Parameters):
15 //
16 // TileDigitsContainer string key value of Digits in TDS
17 // NtupleLoc string pathname of ntuple file
18 // NtupleID string ID of ntuple
19 //
20 // BUGS:
21 //
22 // History:
23 //
24 //
25 //****************************************************************************
26 #ifndef TILEDIGITSTONTUPLE_H
27 #define TILEDIGITSTONTUPLE_H
28 
30 
31 #include "GaudiKernel/NTuple.h"
34 
35 class TileID;
36 class TileHWID;
37 class TileTBID;
38 
39 #include <string>
40 
42  public:
43 
45  virtual ~TileDigitsToNtuple() = default;
46 
47  //Gaudi Hooks
48  StatusCode initialize() override;
49  StatusCode execute() override;
50  StatusCode finalize() override;
51 
52  private:
53 
54  Gaudi::Property<bool> m_saveAll{this,
55  "SaveAll", true, "Save all Tile digits"};
56 
57  Gaudi::Property<bool> m_saveE4prAndMBTS{this,
58  "SaveE4prAndMBTS", true, "Save Tile digits for E4 prime and MBTS"};
59 
60  Gaudi::Property<int> m_saveMaxChannels{this,
61  "SaveMaxChannels", 12288, "Maximum Tile raw channels to save"};
62 
63  Gaudi::Property<int> m_commitNtuple{this,
64  "CommitNtuple", true, "Commit ntuple"};
65 
66  Gaudi::Property<std::string> m_infoName{this,
67  "TileInfo", "TileInfo", "Tile info name"};
68 
69  Gaudi::Property<std::string> m_ntupleLoc{this,
70  "NTupleLoc", "/TILE/TileRec", "Tile digits ntuple location"};
71 
72  Gaudi::Property<std::string> m_ntupleID{this,
73  "NTupleID", "h40", "Tile digits ntuple ID"};
74 
76  "TileDigitsContainer", "TileDigitsCnt", "Tile digits container name."};
77 
78  const TileID* m_tileID{nullptr};
79  const TileHWID* m_tileHWID{nullptr};
80  const TileTBID* m_tileTBID{nullptr};
81 
82  NTuple::Tuple* m_ntuplePtr{nullptr};
83 
84  NTuple::Item<short> m_nChannel;
85 
86  NTuple::Array<short> m_ros;
87  NTuple::Array<short> m_drawer;
88  NTuple::Array<short> m_channel;
89  NTuple::Array<short> m_gain;
90 
91  NTuple::Array<short> m_section;
92  NTuple::Array<short> m_side;
93  NTuple::Array<short> m_phi;
94  NTuple::Array<short> m_eta;
95  NTuple::Array<short> m_sample;
96  NTuple::Array<short> m_pmt;
97  NTuple::Array<short> m_adc;
98 
99  NTuple::Matrix<short> m_samples;
100 
101  std::string m_digitsContainer;
102  int m_nSamples{7};
103 };
104 
105 #endif
TileDigitsToNtuple::m_ntupleID
Gaudi::Property< std::string > m_ntupleID
Definition: TileDigitsToNtuple.h:72
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TileDigitsToNtuple::m_tileID
const TileID * m_tileID
Definition: TileDigitsToNtuple.h:78
TileDigitsToNtuple::m_side
NTuple::Array< short > m_side
Definition: TileDigitsToNtuple.h:92
TileDigitsToNtuple::m_phi
NTuple::Array< short > m_phi
Definition: TileDigitsToNtuple.h:93
TileDigitsToNtuple::m_tileTBID
const TileTBID * m_tileTBID
Definition: TileDigitsToNtuple.h:80
TileDigitsToNtuple::m_ros
NTuple::Array< short > m_ros
Definition: TileDigitsToNtuple.h:86
TileDigitsToNtuple
Definition: TileDigitsToNtuple.h:41
TileDigitsToNtuple::m_ntuplePtr
NTuple::Tuple * m_ntuplePtr
Definition: TileDigitsToNtuple.h:82
SG::ReadHandleKey< TileDigitsContainer >
TileDigitsToNtuple::m_drawer
NTuple::Array< short > m_drawer
Definition: TileDigitsToNtuple.h:87
TileDigitsToNtuple::m_saveAll
Gaudi::Property< bool > m_saveAll
Definition: TileDigitsToNtuple.h:54
AthAlgorithm.h
TileDigitsToNtuple::initialize
StatusCode initialize() override
Definition: TileDigitsToNtuple.cxx:42
TileHWID
Helper class for TileCal online (hardware) identifiers.
Definition: TileHWID.h:49
TileDigitsToNtuple::m_saveMaxChannels
Gaudi::Property< int > m_saveMaxChannels
Definition: TileDigitsToNtuple.h:60
TileDigitsToNtuple::m_saveE4prAndMBTS
Gaudi::Property< bool > m_saveE4prAndMBTS
Definition: TileDigitsToNtuple.h:57
TileID
Helper class for TileCal offline identifiers.
Definition: TileID.h:68
TileDigitsContainer.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TileDigitsToNtuple::m_infoName
Gaudi::Property< std::string > m_infoName
Definition: TileDigitsToNtuple.h:66
TileDigitsToNtuple::~TileDigitsToNtuple
virtual ~TileDigitsToNtuple()=default
TileDigitsToNtuple::m_nChannel
NTuple::Item< short > m_nChannel
Definition: TileDigitsToNtuple.h:84
TileDigitsToNtuple::m_tileHWID
const TileHWID * m_tileHWID
Definition: TileDigitsToNtuple.h:79
TileDigitsToNtuple::m_nSamples
int m_nSamples
Definition: TileDigitsToNtuple.h:102
AthAlgorithm
Definition: AthAlgorithm.h:47
TileDigitsToNtuple::m_pmt
NTuple::Array< short > m_pmt
Definition: TileDigitsToNtuple.h:96
TileDigitsToNtuple::execute
StatusCode execute() override
Definition: TileDigitsToNtuple.cxx:103
TileDigitsToNtuple::m_eta
NTuple::Array< short > m_eta
Definition: TileDigitsToNtuple.h:94
TileDigitsToNtuple::m_digitsContainer
std::string m_digitsContainer
Definition: TileDigitsToNtuple.h:101
TileDigitsToNtuple::m_samples
NTuple::Matrix< short > m_samples
Definition: TileDigitsToNtuple.h:99
TileDigitsToNtuple::m_adc
NTuple::Array< short > m_adc
Definition: TileDigitsToNtuple.h:97
TileDigitsToNtuple::finalize
StatusCode finalize() override
Definition: TileDigitsToNtuple.cxx:221
TileDigitsToNtuple::m_commitNtuple
Gaudi::Property< int > m_commitNtuple
Definition: TileDigitsToNtuple.h:63
TileDigitsToNtuple::m_channel
NTuple::Array< short > m_channel
Definition: TileDigitsToNtuple.h:88
TileDigitsToNtuple::m_sample
NTuple::Array< short > m_sample
Definition: TileDigitsToNtuple.h:95
AthAlgorithm::AthAlgorithm
AthAlgorithm()
Default constructor:
TileTBID
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.
Definition: Calorimeter/CaloIdentifier/CaloIdentifier/TileTBID.h:65
TileDigitsToNtuple::m_section
NTuple::Array< short > m_section
Definition: TileDigitsToNtuple.h:91
TileDigitsToNtuple::m_gain
NTuple::Array< short > m_gain
Definition: TileDigitsToNtuple.h:89
TileDigitsToNtuple::m_ntupleLoc
Gaudi::Property< std::string > m_ntupleLoc
Definition: TileDigitsToNtuple.h:69
TileDigitsToNtuple::m_digitsContainerKey
SG::ReadHandleKey< TileDigitsContainer > m_digitsContainerKey
Definition: TileDigitsToNtuple.h:75