ATLAS Offline Software
Loading...
Searching...
No Matches
HGTD_RDOAnalysis.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 HGTD_RDO_ANALYSIS_H
6#define HGTD_RDO_ANALYSIS_H
7
10
13
16
17class HGTD_ID;
18
19namespace InDetDD {
20 class HGTD_DetectorManager;
21}
22
24{
25
26struct SdoInfo {
27 float time{0.f};
28 int truth = -1; // signal=1, pileup=2, secondary=3
29 bool operator<(const SdoInfo& rhs) const { return time < rhs.time; }
30};
31
32public:
34
35 virtual StatusCode initialize() override final;
36 virtual StatusCode execute() override final;
37
39
40 bool isHSGoodParticle(HepMC::ConstGenParticlePtr particlePtr, const HepMC::GenEvent* hardScatterEvent, float min_pt_cut = 1000.);
41
42 SG::ReadHandleKey<HGTD_RDO_Container> m_inputKey {this, "CollectionName", "HGTD_RDOs", "Input HGTD RDO collection name"};
43 SG::ReadHandleKey<InDetSimDataCollection> m_inputTruthKey {this, "SDOCollectionName", "HGTD_SDO_Map", "Input HGTD SDO collection name"};
44 SG::ReadHandleKey<McEventCollection> m_inputMcEventCollectionKey {this, "McEventCollectionName", "TruthEvent", "Input McEventCollection name"};
45
47 Gaudi::Property<std::string> m_HGTD_Name {this, "DetectorName", "HGTD", "HGTD detector name"};
49 Gaudi::Property<std::string> m_HGTDID_Name {this, "PixelIDName", "HGTD_ID", "HGTD ID name"};
50
51 Gaudi::Property<std::string> m_histPath {this, "HistPath", "/RDOAnalysis/HGTD/", ""};
52 Gaudi::Property<std::string> m_sharedHistPath {this, "SharedHistPath", "/RDOAnalysis/histos/", ""};
53 Gaudi::Property<std::string> m_ntuplePath {this, "NtuplePath", "/RDOAnalysis/ntuples/", ""};
54 Gaudi::Property<std::string> m_ntupleName {this, "NtupleName", "HGTD", ""};
55 Gaudi::Property<bool> m_doPosition {this, "DoPosition", true, ""};
56
57
58 TTree* m_tree{};
59 std::vector<int> m_rdo_module_layer{}; // 0, 1, 2, 3
60 std::vector<float> m_rdo_module_x{}; // global position in mm
61 std::vector<float> m_rdo_module_y{}; // global position in mm
62 std::vector<float> m_rdo_module_z{}; // global position in mm
63 std::vector<unsigned long long> m_rdo_module_ID{}; //module ID (get compact)
64 std::vector<float> m_rdo_hit_x{}; // global position in mm
65 std::vector<float> m_rdo_hit_y{}; // global position in mm
66 std::vector<float> m_rdo_hit_z{}; // global position in mm
67 std::vector<float> m_rdo_hit_toa{}; // in ns
68 std::vector<float> m_rdo_hit_sdo_toa{}; // in ns
69 std::vector<int> m_rdo_hit_sdo_truth_category{}; // signal=1, pileup=2, secondary=3
70
71};
72
73#endif // HGTD_RDO_ANALYSIS_H
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration.
Property holding a SG store/key/clid from which a ReadHandle is made.
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
The Detector manager has methods to retrieve the Identifier helper and methods to retrieve the detect...
This is an Identifier helper class for the HGTD subdetector.
Definition HGTD_ID.h:47
std::vector< float > m_rdo_module_x
bool isHSGoodParticle(HepMC::ConstGenParticlePtr particlePtr, const HepMC::GenEvent *hardScatterEvent, float min_pt_cut=1000.)
std::vector< unsigned long long > m_rdo_module_ID
std::vector< float > m_rdo_hit_sdo_toa
virtual StatusCode initialize() override final
std::vector< float > m_rdo_hit_z
Gaudi::Property< std::string > m_sharedHistPath
Gaudi::Property< std::string > m_ntupleName
const HGTD_ID * m_HGTD_ID
Gaudi::Property< bool > m_doPosition
std::vector< float > m_rdo_hit_x
Gaudi::Property< std::string > m_HGTDID_Name
SG::ReadHandleKey< HGTD_RDO_Container > m_inputKey
Gaudi::Property< std::string > m_histPath
SG::ReadHandleKey< InDetSimDataCollection > m_inputTruthKey
std::vector< int > m_rdo_hit_sdo_truth_category
std::vector< float > m_rdo_hit_toa
Gaudi::Property< std::string > m_HGTD_Name
std::vector< float > m_rdo_hit_y
std::vector< float > m_rdo_module_y
std::vector< int > m_rdo_module_layer
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
SG::ReadHandleKey< McEventCollection > m_inputMcEventCollectionKey
Gaudi::Property< std::string > m_ntuplePath
std::vector< float > m_rdo_module_z
virtual StatusCode execute() override final
const HGTD_DetectorManager * m_HGTD_Manager
Property holding a SG store/key/clid from which a ReadHandle is made.
Message Stream Member.
Forward declaration.
bool operator<(const SdoInfo &rhs) const
#define private