ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Simulation
Tools
HitAnalysis
src
SiHitAnalysis.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 SI_HIT_ANALYSIS_H
6
#define SI_HIT_ANALYSIS_H
7
8
#include "
AthenaBaseComps/AthHistogramAlgorithm.h
"
9
#include "
StoreGate/ReadHandleKey.h
"
10
11
#include "
InDetSimEvent/SiHitCollection.h
"
12
13
#include <string>
14
#include <vector>
15
16
class
TH1;
17
class
TH2;
18
class
TTree;
19
20
21
class
SiHitAnalysis
:
public
AthHistogramAlgorithm
22
{
23
public
:
24
using
AthHistogramAlgorithm::AthHistogramAlgorithm
;
25
~SiHitAnalysis
() =
default
;
26
27
virtual
StatusCode
initialize
()
override
;
28
virtual
StatusCode
execute
(
const
EventContext& ctx)
override
;
29
30
private
:
31
33
TH1*
m_h_hits_x
{};
34
TH1*
m_h_hits_y
{};
35
TH1*
m_h_hits_z
{};
36
TH1*
m_h_hits_r
{};
37
TH2*
m_h_xy
{};
38
TH2*
m_h_zr
{};
39
LockedHandle<TH2>
m_h_xy_shared
{};
40
LockedHandle<TH2>
m_h_zr_shared
{};
41
TH1*
m_h_hits_time
{};
42
TH1*
m_h_hits_eloss
{};
43
TH1*
m_h_hits_step
{};
44
TH1*
m_h_hits_barcode
{};
45
TH2*
m_h_time_eloss
{};
46
TH2*
m_h_z_eloss
{};
47
TH2*
m_h_r_eloss
{};
48
TH1*
m_h_barrel_endcap
{};
49
TH1*
m_h_layer_disk
{};
50
TH1*
m_h_module_phi
{};
51
TH1*
m_h_module_eta
{};
52
53
TTree*
m_tree
{};
54
std::vector<float>*
m_hits_x
{};
55
std::vector<float>*
m_hits_y
{};
56
std::vector<float>*
m_hits_z
{};
57
std::vector<float>*
m_hits_r
{};
58
std::vector<float>*
m_hits_time
{};
59
std::vector<float>*
m_hits_eloss
{};
60
std::vector<float>*
m_hits_step
{};
61
std::vector<float>*
m_hits_barcode
{};
62
std::vector<float>*
m_hits_pdgId
{};
63
std::vector<float>*
m_hits_pT
{};
64
std::vector<float>*
m_hits_eta
{};
65
std::vector<float>*
m_hits_phi
{};
66
std::vector<float>*
m_hits_prodVtx_x
{};
67
std::vector<float>*
m_hits_prodVtx_y
{};
68
std::vector<float>*
m_hits_prodVtx_z
{};
69
std::vector<int>*
m_barrel_endcap
{};
70
std::vector<int>*
m_layer_disk
{};
71
std::vector<int>*
m_module_phi
{};
72
std::vector<int>*
m_module_eta
{};
73
74
SG::ReadHandleKey<SiHitCollection>
m_hitsContainerKey
{
this
,
"CollectionName"
,
""
,
"Input HITS collection name"
};
75
76
Gaudi::Property<std::string>
m_histPath
{
this
,
"HistPath"
,
"/SiHitAnalysis/histos/"
,
""
};
77
Gaudi::Property<std::string>
m_ntuplePath
{
this
,
"NtuplePath"
,
"/SiHitAnalysis/ntuples/"
,
""
};
78
Gaudi::Property<bool>
m_expert
{
this
,
"ExpertMode"
,
false
,
""
};
79
Gaudi::Property<bool>
m_extraTruthBranches
{
this
,
"ExtraTruthBranches"
,
false
,
""
};
80
};
81
82
#endif
// SI_HIT_ANALYSIS_H
AthHistogramAlgorithm.h
SiHitCollection.h
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AthHistogramAlgorithm::AthHistogramAlgorithm
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition
AthHistogramAlgorithm.cxx:31
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition
StoreGate/StoreGate/ReadHandleKey.h:40
SiHitAnalysis
Definition
SiHitAnalysis.h:22
SiHitAnalysis::m_h_hits_r
TH1 * m_h_hits_r
Definition
SiHitAnalysis.h:36
SiHitAnalysis::m_h_barrel_endcap
TH1 * m_h_barrel_endcap
Definition
SiHitAnalysis.h:48
SiHitAnalysis::m_h_time_eloss
TH2 * m_h_time_eloss
Definition
SiHitAnalysis.h:45
SiHitAnalysis::m_hits_r
std::vector< float > * m_hits_r
Definition
SiHitAnalysis.h:57
SiHitAnalysis::execute
virtual StatusCode execute(const EventContext &ctx) override
Execute method.
Definition
SiHitAnalysis.cxx:226
SiHitAnalysis::m_tree
TTree * m_tree
Definition
SiHitAnalysis.h:53
SiHitAnalysis::initialize
virtual StatusCode initialize() override
Definition
SiHitAnalysis.cxx:19
SiHitAnalysis::m_hits_prodVtx_z
std::vector< float > * m_hits_prodVtx_z
Definition
SiHitAnalysis.h:68
SiHitAnalysis::m_expert
Gaudi::Property< bool > m_expert
Definition
SiHitAnalysis.h:78
SiHitAnalysis::m_h_zr_shared
LockedHandle< TH2 > m_h_zr_shared
Definition
SiHitAnalysis.h:40
SiHitAnalysis::m_hits_phi
std::vector< float > * m_hits_phi
Definition
SiHitAnalysis.h:65
SiHitAnalysis::m_h_z_eloss
TH2 * m_h_z_eloss
Definition
SiHitAnalysis.h:46
SiHitAnalysis::m_hits_barcode
std::vector< float > * m_hits_barcode
Definition
SiHitAnalysis.h:61
SiHitAnalysis::m_h_module_eta
TH1 * m_h_module_eta
Definition
SiHitAnalysis.h:51
SiHitAnalysis::m_layer_disk
std::vector< int > * m_layer_disk
Definition
SiHitAnalysis.h:70
SiHitAnalysis::m_hits_eloss
std::vector< float > * m_hits_eloss
Definition
SiHitAnalysis.h:59
SiHitAnalysis::m_h_layer_disk
TH1 * m_h_layer_disk
Definition
SiHitAnalysis.h:49
SiHitAnalysis::m_module_phi
std::vector< int > * m_module_phi
Definition
SiHitAnalysis.h:71
SiHitAnalysis::m_module_eta
std::vector< int > * m_module_eta
Definition
SiHitAnalysis.h:72
SiHitAnalysis::m_h_hits_step
TH1 * m_h_hits_step
Definition
SiHitAnalysis.h:43
SiHitAnalysis::m_histPath
Gaudi::Property< std::string > m_histPath
Definition
SiHitAnalysis.h:76
SiHitAnalysis::m_h_zr
TH2 * m_h_zr
Definition
SiHitAnalysis.h:38
SiHitAnalysis::m_h_hits_y
TH1 * m_h_hits_y
Definition
SiHitAnalysis.h:34
SiHitAnalysis::m_h_module_phi
TH1 * m_h_module_phi
Definition
SiHitAnalysis.h:50
SiHitAnalysis::m_h_hits_time
TH1 * m_h_hits_time
Definition
SiHitAnalysis.h:41
SiHitAnalysis::m_hits_time
std::vector< float > * m_hits_time
Definition
SiHitAnalysis.h:58
SiHitAnalysis::m_hits_prodVtx_y
std::vector< float > * m_hits_prodVtx_y
Definition
SiHitAnalysis.h:67
SiHitAnalysis::m_h_hits_z
TH1 * m_h_hits_z
Definition
SiHitAnalysis.h:35
SiHitAnalysis::m_h_r_eloss
TH2 * m_h_r_eloss
Definition
SiHitAnalysis.h:47
SiHitAnalysis::m_hits_x
std::vector< float > * m_hits_x
Definition
SiHitAnalysis.h:54
SiHitAnalysis::m_hits_prodVtx_x
std::vector< float > * m_hits_prodVtx_x
Definition
SiHitAnalysis.h:66
SiHitAnalysis::m_hitsContainerKey
SG::ReadHandleKey< SiHitCollection > m_hitsContainerKey
Definition
SiHitAnalysis.h:74
SiHitAnalysis::m_hits_pdgId
std::vector< float > * m_hits_pdgId
Definition
SiHitAnalysis.h:62
SiHitAnalysis::m_hits_pT
std::vector< float > * m_hits_pT
Definition
SiHitAnalysis.h:63
SiHitAnalysis::m_h_hits_eloss
TH1 * m_h_hits_eloss
Definition
SiHitAnalysis.h:42
SiHitAnalysis::AthHistogramAlgorithm
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
Definition
AthHistogramAlgorithm.cxx:31
SiHitAnalysis::m_h_xy_shared
LockedHandle< TH2 > m_h_xy_shared
Definition
SiHitAnalysis.h:39
SiHitAnalysis::m_hits_eta
std::vector< float > * m_hits_eta
Definition
SiHitAnalysis.h:64
SiHitAnalysis::m_h_hits_x
TH1 * m_h_hits_x
Some variables.
Definition
SiHitAnalysis.h:33
SiHitAnalysis::m_barrel_endcap
std::vector< int > * m_barrel_endcap
Definition
SiHitAnalysis.h:69
SiHitAnalysis::~SiHitAnalysis
~SiHitAnalysis()=default
SiHitAnalysis::m_h_xy
TH2 * m_h_xy
Definition
SiHitAnalysis.h:37
SiHitAnalysis::m_hits_z
std::vector< float > * m_hits_z
Definition
SiHitAnalysis.h:56
SiHitAnalysis::m_h_hits_barcode
TH1 * m_h_hits_barcode
Definition
SiHitAnalysis.h:44
SiHitAnalysis::m_ntuplePath
Gaudi::Property< std::string > m_ntuplePath
Definition
SiHitAnalysis.h:77
SiHitAnalysis::m_extraTruthBranches
Gaudi::Property< bool > m_extraTruthBranches
Definition
SiHitAnalysis.h:79
SiHitAnalysis::m_hits_step
std::vector< float > * m_hits_step
Definition
SiHitAnalysis.h:60
SiHitAnalysis::m_hits_y
std::vector< float > * m_hits_y
Definition
SiHitAnalysis.h:55
Generated on
for ATLAS Offline Software by
1.17.0