ATLAS Offline Software
Loading...
Searching...
No Matches
BCM_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
6#ifndef BCM_RDO_ANALYSIS_H
7#define BCM_RDO_ANALYSIS_H
8
11
15
16#include <string>
17#include <vector>
18#include "TH1.h"
19
20
22
23public:
25 ~BCM_RDOAnalysis() = default;
26
27 virtual StatusCode initialize() override final;
28 virtual StatusCode execute() override final;
29
31
32 SG::ReadHandleKey<BCM_RDO_Container> m_inputKey{this, "InputKey", "BCM_RDOs"};
33 SG::ReadHandleKey<InDetSimDataCollection> m_inputTruthKey{this, "InputTruthKey", "BCM_SDO_Map"};
34
35
36 Gaudi::Property<std::string> m_ntupleFileName{this, "NtupleFileName", "/ntuples/file"};
37 Gaudi::Property<std::string> m_ntupleDirName{this, "NtupleDirectoryName", "/BCM_RDOAnalysis/"};
38 Gaudi::Property<std::string> m_ntupleTreeName{this, "NtupleTreeName", "BCM_RDOAna"};
39 Gaudi::Property<std::string> m_path{this, "HistPath", "/BCM_RDOAnalysis/"};
40
41 // RDO
42 std::vector<int>* m_word1{nullptr};
43 std::vector<int>* m_word2{nullptr};
44 std::vector<int>* m_chan{nullptr};
45 std::vector<int>* m_pulse1Pos{nullptr};
46 std::vector<int>* m_pulse1Width{nullptr};
47 std::vector<int>* m_pulse2Pos{nullptr};
48 std::vector<int>* m_pulse2Width{nullptr};
49 std::vector<int>* m_LVL1A{nullptr};
50 std::vector<int>* m_BCID{nullptr};
51 std::vector<int>* m_LVL1ID{nullptr};
52 std::vector<int>* m_err{nullptr};
53 // SDO
54 std::vector<unsigned long long>* m_sdoID{nullptr};
55 std::vector<int>* m_sdoWord{nullptr};
56 std::vector<int>* m_barcode{nullptr};
57 std::vector<int>* m_eventIndex{nullptr};
58 std::vector<float>* m_charge{nullptr};
59 std::vector< std::vector<int> >* m_barcode_vec{nullptr};
60 std::vector< std::vector<int> >* m_eventIndex_vec{nullptr};
61 std::vector< std::vector<float> >* m_charge_vec{nullptr};
62
63 // HISTOGRAMS
64 TH1* m_h_word1{nullptr};
65 TH1* m_h_word2{nullptr};
66 TH1* m_h_chan{nullptr};
67 TH1* m_h_pulse1Pos{nullptr};
68 TH1* m_h_pulse1Width{nullptr};
69 TH1* m_h_pulse2Pos{nullptr};
70 TH1* m_h_pulse2Width{nullptr};
71
72 TH1* m_h_sdoID{nullptr};
73 TH1* m_h_sdoWord{nullptr};
74 TH1* m_h_barcode{nullptr};
75 TH1* m_h_eventIndex{nullptr};
76 TH1* m_h_charge{nullptr};
77
78 TTree* m_tree{nullptr};
79};
80
81#endif // BCM_RDO_ANALYSIS_H
Property holding a SG store/key/clid from which a ReadHandle is made.
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
std::vector< int > * m_pulse2Pos
std::vector< int > * m_word1
virtual StatusCode execute() override final
std::vector< int > * m_pulse2Width
Gaudi::Property< std::string > m_ntupleFileName
Gaudi::Property< std::string > m_ntupleDirName
std::vector< unsigned long long > * m_sdoID
std::vector< int > * m_LVL1ID
std::vector< int > * m_pulse1Pos
std::vector< std::vector< int > > * m_barcode_vec
std::vector< int > * m_LVL1A
std::vector< int > * m_barcode
std::vector< std::vector< float > > * m_charge_vec
std::vector< int > * m_err
std::vector< float > * m_charge
std::vector< int > * m_eventIndex
Gaudi::Property< std::string > m_ntupleTreeName
SG::ReadHandleKey< InDetSimDataCollection > m_inputTruthKey
std::vector< std::vector< int > > * m_eventIndex_vec
std::vector< int > * m_pulse1Width
Gaudi::Property< std::string > m_path
AthHistogramAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
std::vector< int > * m_word2
virtual StatusCode initialize() override final
SG::ReadHandleKey< BCM_RDO_Container > m_inputKey
std::vector< int > * m_sdoWord
std::vector< int > * m_BCID
~BCM_RDOAnalysis()=default
std::vector< int > * m_chan
Property holding a SG store/key/clid from which a ReadHandle is made.
Forward declaration.
#define private