ATLAS Offline Software
TRT_RDOAnalysis.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 
6 #ifndef TRT_RDO_ANALYSIS_H
7 #define TRT_RDO_ANALYSIS_H
8 
10 #include "GaudiKernel/ServiceHandle.h"
11 #include "GaudiKernel/ITHistSvc.h"
13 
18 #include "InDetIdentifier/TRT_ID.h"
19 
20 #include <string>
21 #include <vector>
22 #include "TH1.h"
23 
24 class TTree;
25 class TH1;
26 class TRT_ID;
27 class TRT_RDORawData;
28 
29 class TRT_RDOAnalysis : public AthAlgorithm {
30 
31 public:
32  TRT_RDOAnalysis(const std::string& name, ISvcLocator* pSvcLocator);
34 
35  virtual StatusCode initialize() override final;
36  virtual StatusCode execute() override final;
37  virtual StatusCode finalize() override final;
38 
39 private:
40  SG::ReadHandleKey<TRT_RDO_Container> m_inputKey;
43 
44  // NTUPLE BRANCHES
45  // RDO
46  std::vector<unsigned long long>* m_rdoID;
47  std::vector<unsigned int>* m_rdoWord;
48  // TRT_ID
49  std::vector<int>* m_barrelEndcap;
50  std::vector<int>* m_phiModule;
51  std::vector<int>* m_layerWheel;
52  std::vector<int>* m_strawLayer;
53  std::vector<int>* m_straw;
54  // TRT_RDORawData
55  std::vector<bool>* m_highLevel;
56  std::vector<double>* m_timeOverThreshold;
57  std::vector<int>* m_driftTimeBin;
58  std::vector<int>* m_trailEdge;
59  std::vector<bool>* m_firstBin;
60  std::vector<bool>* m_lastBin;
61  // SDO
62  std::vector<unsigned long long>* m_sdoID;
63  std::vector<int>* m_sdoWord;
64  // TRT_ID
66  std::vector<int>* m_phiModule_sdo;
69  std::vector<int>* m_straw_sdo;
70  // TRT_SimHelper
71  std::vector<bool>* m_aboveThresh;
72  std::vector<bool>* m_deadChan;
73  std::vector<bool>* m_RODdata;
74  std::vector<bool>* m_validStraw;
75  std::vector<bool>* m_hit;
76  // Deposit - particle link + energy (charge)
77  std::vector<int>* m_barcode;
78  std::vector<int>* m_eventIndex;
79  std::vector<float>* m_charge;
80  std::vector< std::vector<int> >* m_barcode_vec;
81  std::vector< std::vector<int> >* m_eventIndex_vec;
82  std::vector< std::vector<float> >* m_charge_vec;
83 
84  // HISTOGRAMS
96  // barrel TRT
105  // endcap TRT
114  // SDO
125 
126  TTree* m_tree;
127  std::string m_ntupleFileName;
128  std::string m_ntupleDirName;
129  std::string m_ntupleTreeName;
130  std::string m_path;
132 
133 };
134 
135 #endif // TRT_RDO_ANALYSIS_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
TRT_RDOAnalysis::m_barcode
std::vector< int > * m_barcode
Definition: TRT_RDOAnalysis.h:77
TRT_RDOAnalysis::m_h_trailEdge
TH1 * m_h_trailEdge
Definition: TRT_RDOAnalysis.h:95
TRT_RDOAnalysis::m_rdoWord
std::vector< unsigned int > * m_rdoWord
Definition: TRT_RDOAnalysis.h:47
TRT_RDOAnalysis::m_strawLayer
std::vector< int > * m_strawLayer
Definition: TRT_RDOAnalysis.h:52
TRT_RDOAnalysis::m_barrelEndcap_sdo
std::vector< int > * m_barrelEndcap_sdo
Definition: TRT_RDOAnalysis.h:65
TRT_RDOAnalysis::m_layerWheel
std::vector< int > * m_layerWheel
Definition: TRT_RDOAnalysis.h:51
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
TRT_RDOAnalysis::m_h_charge
TH1 * m_h_charge
Definition: TRT_RDOAnalysis.h:124
TRT_RDOAnalysis::m_h_ecDriftTimeBin
TH1 * m_h_ecDriftTimeBin
Definition: TRT_RDOAnalysis.h:112
TRT_RDOAnalysis::m_strawLayer_sdo
std::vector< int > * m_strawLayer_sdo
Definition: TRT_RDOAnalysis.h:68
TRT_RDOAnalysis::finalize
virtual StatusCode finalize() override final
Definition: TRT_RDOAnalysis.cxx:523
TRT_RDOAnalysis::m_h_ToT_HL
TH1 * m_h_ToT_HL
Definition: TRT_RDOAnalysis.h:93
TRT_RDOAnalysis::m_h_brlToT_HL
TH1 * m_h_brlToT_HL
Definition: TRT_RDOAnalysis.h:102
TRT_RDOAnalysis::m_highLevel
std::vector< bool > * m_highLevel
Definition: TRT_RDOAnalysis.h:55
TRT_RDOAnalysis::m_straw
std::vector< int > * m_straw
Definition: TRT_RDOAnalysis.h:53
TRT_ID.h
This is an Identifier helper class for the TRT subdetector. This class is a factory for creating comp...
TRT_SimHelper.h
TRT_RDOAnalysis::m_driftTimeBin
std::vector< int > * m_driftTimeBin
Definition: TRT_RDOAnalysis.h:57
TRT_RDOAnalysis::m_h_ecToT
TH1 * m_h_ecToT
Definition: TRT_RDOAnalysis.h:110
TRT_RDOAnalysis::m_barrelEndcap
std::vector< int > * m_barrelEndcap
Definition: TRT_RDOAnalysis.h:49
TRT_RDOAnalysis::m_trailEdge
std::vector< int > * m_trailEdge
Definition: TRT_RDOAnalysis.h:58
InDetSimDataCollection
Definition: InDetSimDataCollection.h:25
TRT_RDOAnalysis::m_h_layerWheel
TH1 * m_h_layerWheel
Definition: TRT_RDOAnalysis.h:89
TRT_RDOAnalysis::m_rdoID
std::vector< unsigned long long > * m_rdoID
Definition: TRT_RDOAnalysis.h:46
TRT_RDOAnalysis::m_h_brlDriftTimeBin
TH1 * m_h_brlDriftTimeBin
Definition: TRT_RDOAnalysis.h:103
TRT_RDOAnalysis::m_sdoWord
std::vector< int > * m_sdoWord
Definition: TRT_RDOAnalysis.h:63
InDetRawDataContainer
Definition: InDetRawDataContainer.h:27
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
InDetRawDataContainer.h
TRT_RDOAnalysis::m_h_ToT
TH1 * m_h_ToT
Definition: TRT_RDOAnalysis.h:92
TRT_RDOAnalysis::m_h_brlLayer
TH1 * m_h_brlLayer
Definition: TRT_RDOAnalysis.h:98
TRT_RDORawData
Definition: TRT_RDORawData.h:24
AthAlgorithm.h
TRT_RDOAnalysis::m_h_ecPhiMod
TH1 * m_h_ecPhiMod
Definition: TRT_RDOAnalysis.h:106
TRT_RDOAnalysis::m_h_barrelEndcap_sdo
TH1 * m_h_barrelEndcap_sdo
Definition: TRT_RDOAnalysis.h:117
TRT_RDOAnalysis::m_path
std::string m_path
Definition: TRT_RDOAnalysis.h:130
TRT_RDOAnalysis::m_phiModule_sdo
std::vector< int > * m_phiModule_sdo
Definition: TRT_RDOAnalysis.h:66
TRT_RDOAnalysis::m_eventIndex_vec
std::vector< std::vector< int > > * m_eventIndex_vec
Definition: TRT_RDOAnalysis.h:81
TRT_RDOAnalysis::m_h_strawLayer_sdo
TH1 * m_h_strawLayer_sdo
Definition: TRT_RDOAnalysis.h:120
TRT_RDOAnalysis::m_inputKey
SG::ReadHandleKey< TRT_RDO_Container > m_inputKey
Definition: TRT_RDOAnalysis.h:40
TRT_RDOAnalysis::m_hit
std::vector< bool > * m_hit
Definition: TRT_RDOAnalysis.h:75
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
TRT_RDOAnalysis::m_RODdata
std::vector< bool > * m_RODdata
Definition: TRT_RDOAnalysis.h:73
TRT_RDOAnalysis::m_h_brlToT
TH1 * m_h_brlToT
Definition: TRT_RDOAnalysis.h:101
TRT_RDOAnalysis::m_h_ecStraw
TH1 * m_h_ecStraw
Definition: TRT_RDOAnalysis.h:109
TRT_RDOAnalysis::m_charge_vec
std::vector< std::vector< float > > * m_charge_vec
Definition: TRT_RDOAnalysis.h:82
TRT_RDOAnalysis::m_h_rdoWord
TH1 * m_h_rdoWord
Definition: TRT_RDOAnalysis.h:86
TRT_RDOAnalysis::m_h_rdoID
TH1 * m_h_rdoID
Definition: TRT_RDOAnalysis.h:85
TRT_RDOAnalysis::m_ntupleDirName
std::string m_ntupleDirName
Definition: TRT_RDOAnalysis.h:128
TRT_RDOAnalysis::m_timeOverThreshold
std::vector< double > * m_timeOverThreshold
Definition: TRT_RDOAnalysis.h:56
TRT_RDOAnalysis::m_h_strawLayer
TH1 * m_h_strawLayer
Definition: TRT_RDOAnalysis.h:90
TRT_RDOAnalysis::m_trtID
const TRT_ID * m_trtID
Definition: TRT_RDOAnalysis.h:42
TRT_RDOAnalysis::m_charge
std::vector< float > * m_charge
Definition: TRT_RDOAnalysis.h:79
TRT_RDOAnalysis::m_h_sdoID
TH1 * m_h_sdoID
Definition: TRT_RDOAnalysis.h:115
TRT_RDOAnalysis::m_h_driftTimeBin
TH1 * m_h_driftTimeBin
Definition: TRT_RDOAnalysis.h:94
TRT_RDOAnalysis::m_thistSvc
ServiceHandle< ITHistSvc > m_thistSvc
Definition: TRT_RDOAnalysis.h:131
AthAlgorithm
Definition: AthAlgorithm.h:47
TRT_RDOAnalysis::m_deadChan
std::vector< bool > * m_deadChan
Definition: TRT_RDOAnalysis.h:72
TRT_RDOAnalysis::m_h_ecToT_HL
TH1 * m_h_ecToT_HL
Definition: TRT_RDOAnalysis.h:111
TRT_RDOAnalysis::m_layerWheel_sdo
std::vector< int > * m_layerWheel_sdo
Definition: TRT_RDOAnalysis.h:67
TRT_RDOAnalysis::TRT_RDOAnalysis
TRT_RDOAnalysis(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TRT_RDOAnalysis.cxx:17
TRT_RDOAnalysis::m_validStraw
std::vector< bool > * m_validStraw
Definition: TRT_RDOAnalysis.h:74
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TRT_RDOAnalysis::m_h_barrelEndcap
TH1 * m_h_barrelEndcap
Definition: TRT_RDOAnalysis.h:87
TRT_RDOAnalysis::m_lastBin
std::vector< bool > * m_lastBin
Definition: TRT_RDOAnalysis.h:60
TRT_RDOAnalysis::execute
virtual StatusCode execute() override final
Definition: TRT_RDOAnalysis.cxx:316
TRT_RDOAnalysis::m_ntupleTreeName
std::string m_ntupleTreeName
Definition: TRT_RDOAnalysis.h:129
TRT_RDOAnalysis::m_aboveThresh
std::vector< bool > * m_aboveThresh
Definition: TRT_RDOAnalysis.h:71
TRT_RDOAnalysis::m_h_ecTrailEdge
TH1 * m_h_ecTrailEdge
Definition: TRT_RDOAnalysis.h:113
TRT_RDOAnalysis::m_barcode_vec
std::vector< std::vector< int > > * m_barcode_vec
Definition: TRT_RDOAnalysis.h:80
TRT_RDOAnalysis::m_phiModule
std::vector< int > * m_phiModule
Definition: TRT_RDOAnalysis.h:50
TRT_RDOAnalysis::m_h_layerWheel_sdo
TH1 * m_h_layerWheel_sdo
Definition: TRT_RDOAnalysis.h:119
TRT_RDOAnalysis::m_h_barcode
TH1 * m_h_barcode
Definition: TRT_RDOAnalysis.h:122
TRT_RDOAnalysis::m_h_ecStrawLayer
TH1 * m_h_ecStrawLayer
Definition: TRT_RDOAnalysis.h:108
TRT_RDOAnalysis::m_firstBin
std::vector< bool > * m_firstBin
Definition: TRT_RDOAnalysis.h:59
TRT_RDOAnalysis::m_h_sdoWord
TH1 * m_h_sdoWord
Definition: TRT_RDOAnalysis.h:116
TRT_ID
Definition: TRT_ID.h:84
TRT_RDOAnalysis::m_straw_sdo
std::vector< int > * m_straw_sdo
Definition: TRT_RDOAnalysis.h:69
InDetSimDataCollection.h
TH1
Definition: rootspy.cxx:268
TRT_RDOAnalysis::m_ntupleFileName
std::string m_ntupleFileName
Definition: TRT_RDOAnalysis.h:127
TRT_RDOAnalysis::~TRT_RDOAnalysis
~TRT_RDOAnalysis()
Definition: TRT_RDOAnalysis.h:33
TRT_RDOAnalysis::m_h_phiModule_sdo
TH1 * m_h_phiModule_sdo
Definition: TRT_RDOAnalysis.h:118
TRT_RDOAnalysis::m_tree
TTree * m_tree
Definition: TRT_RDOAnalysis.h:126
TRT_RDOAnalysis::m_eventIndex
std::vector< int > * m_eventIndex
Definition: TRT_RDOAnalysis.h:78
TRT_RDOAnalysis::m_h_phiModule
TH1 * m_h_phiModule
Definition: TRT_RDOAnalysis.h:88
TRT_RDOAnalysis::m_h_eventIndex
TH1 * m_h_eventIndex
Definition: TRT_RDOAnalysis.h:123
TRT_RDOAnalysis::initialize
virtual StatusCode initialize() override final
Definition: TRT_RDOAnalysis.cxx:107
TRT_RDOAnalysis::m_h_brlStrawLayer
TH1 * m_h_brlStrawLayer
Definition: TRT_RDOAnalysis.h:99
InDetRawDataCLASS_DEF.h
TRT_RDOAnalysis::m_h_brlPhiMod
TH1 * m_h_brlPhiMod
Definition: TRT_RDOAnalysis.h:97
TRT_RDOAnalysis::m_inputTruthKey
SG::ReadHandleKey< InDetSimDataCollection > m_inputTruthKey
Definition: TRT_RDOAnalysis.h:41
TRT_RDOAnalysis::m_h_brlTrailEdge
TH1 * m_h_brlTrailEdge
Definition: TRT_RDOAnalysis.h:104
TRT_RDOAnalysis::m_h_ecWheel
TH1 * m_h_ecWheel
Definition: TRT_RDOAnalysis.h:107
TRT_RDOAnalysis::m_h_straw
TH1 * m_h_straw
Definition: TRT_RDOAnalysis.h:91
TRT_RDOAnalysis::m_h_brlStraw
TH1 * m_h_brlStraw
Definition: TRT_RDOAnalysis.h:100
TRT_RDOAnalysis::m_h_straw_sdo
TH1 * m_h_straw_sdo
Definition: TRT_RDOAnalysis.h:121
TRT_RDOAnalysis
Definition: TRT_RDOAnalysis.h:29
ServiceHandle
Definition: ClusterMakerTool.h:37
TRT_RDOAnalysis::m_sdoID
std::vector< unsigned long long > * m_sdoID
Definition: TRT_RDOAnalysis.h:62