ATLAS Offline Software
Loading...
Searching...
No Matches
SCT_FastRDOAnalysis.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef SCT_FAST_RDO_ANALYSIS_H
6#define SCT_FAST_RDO_ANALYSIS_H
7
9
15
16#include "GaudiKernel/ServiceHandle.h"
17#include "GaudiKernel/ITHistSvc.h"
18
19#include <string>
20#include <vector>
21
22class TTree;
23class TH1;
24
26
27 public:
28 SCT_FastRDOAnalysis(const std::string& name, ISvcLocator* pSvcLocator);
30
31 virtual StatusCode initialize() override final;
32 virtual StatusCode execute() override final;
33 virtual StatusCode finalize() override final;
34
35 private:
36 SG::ReadHandleKey<InDet::SCT_ClusterContainer> m_inputKey{this, "InputKey", "SCT_Clusters"};
37 // SCT_Cluster
38 std::vector<uint16_t>* m_hitsTimeBin3;
39
40 // For P->T converter of SCT_Clusters
41 SG::ReadCondHandleKey<InDetDD::SiDetectorElementCollection> m_SCTDetEleCollKey{this, "SCTDetEleCollKey", "SCT_DetectorElementCollection", "Key of SiDetectorElementCollection for SCT"};
42
43 // SiCluster - SiWidth + SiDetectorElement
44 std::vector<float>* m_siCol;
45 std::vector<float>* m_siRow;
46 std::vector<float>* m_siPhiR;
47 std::vector<float>* m_siZ;
48 std::vector<float>* m_siPos_x;
49 std::vector<float>* m_siPos_y;
50 std::vector<float>* m_siPos_z;
51 std::vector<bool>* m_siGangPix;
52 std::vector<unsigned long long>* m_siDetID;
53 std::vector<bool>* m_siDetPix;
54 std::vector<bool>* m_siDetSCT;
55 std::vector<bool>* m_siDetBrl;
56 std::vector<bool>* m_siDetEc;
57 std::vector<bool>* m_siDetBlay;
58 std::vector<bool>* m_siDetInPixLay;
59 std::vector<bool>* m_siDetNtInPixLay;
60 std::vector<bool>* m_siDetDBM;
61 std::vector<double>* m_siDetHitDepthDir;
62 std::vector<double>* m_siDetHitPhiDir;
63 std::vector<double>* m_siDetHitEtaDir;
64 std::vector<double>* m_siDetMinR;
65 std::vector<double>* m_siDetMaxR;
66 std::vector<double>* m_siDetMinZ;
67 std::vector<double>* m_siDetMaxZ;
68 std::vector<double>* m_siDetMinPhi;
69 std::vector<double>* m_siDetMaxPhi;
70 std::vector<double>* m_siDetWidth;
71 std::vector<double>* m_siDetMinWidth;
72 std::vector<double>* m_siDetMaxWidth;
73 std::vector<double>* m_siDetLength;
74 std::vector<double>* m_siDetThick;
75 std::vector<double>* m_siDetEtaPitch;
76 std::vector<double>* m_siDetPhiPitch;
77
78 // Trk::PrepRawData
79 std::vector<unsigned long long>* m_clusID;
80 std::vector<float>* m_locpos_x;
81 std::vector<float>* m_locpos_y;
82 std::vector<unsigned long long>* m_rdoID_prd;
83
84 // HISTOGRAMS
89 TH1* m_h_siZ;
123
124 TTree* m_tree;
125 StringProperty m_ntupleFileName{this, "NtupleFileName", "/ntuples/file1"};
126 StringProperty m_ntupleDirName{this, "NtupleDirectoryName", "/SCT_FastRDOAnalysis/"};
127 StringProperty m_ntupleTreeName{this, "NtupleTreeName", "/SCT_FastRDOAna"};
128 StringProperty m_path{this, "HistPath", "/SCT_FastRDOAnalysis/"};
129
131};
132
133#endif // SCT_FAST_RDO_ANALYSIS_H
Property holding a SG store/key/clid from which a ReadHandle is made.
AthAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
Constructor with parameters:
std::vector< double > * m_siDetPhiPitch
std::vector< bool > * m_siDetDBM
std::vector< unsigned long long > * m_siDetID
std::vector< bool > * m_siDetSCT
SCT_FastRDOAnalysis(const std::string &name, ISvcLocator *pSvcLocator)
SG::ReadCondHandleKey< InDetDD::SiDetectorElementCollection > m_SCTDetEleCollKey
std::vector< double > * m_siDetEtaPitch
std::vector< bool > * m_siDetNtInPixLay
virtual StatusCode initialize() override final
std::vector< bool > * m_siDetInPixLay
std::vector< double > * m_siDetMinWidth
std::vector< unsigned long long > * m_clusID
std::vector< double > * m_siDetWidth
std::vector< double > * m_siDetMaxR
virtual StatusCode finalize() override final
std::vector< float > * m_siCol
std::vector< double > * m_siDetMinR
std::vector< bool > * m_siDetPix
std::vector< float > * m_locpos_x
std::vector< double > * m_siDetMaxZ
StringProperty m_ntupleTreeName
~SCT_FastRDOAnalysis()=default
std::vector< uint16_t > * m_hitsTimeBin3
std::vector< float > * m_siRow
StringProperty m_ntupleFileName
std::vector< float > * m_siPos_x
std::vector< double > * m_siDetHitEtaDir
std::vector< bool > * m_siGangPix
std::vector< bool > * m_siDetBrl
std::vector< double > * m_siDetThick
std::vector< float > * m_siPos_z
std::vector< float > * m_locpos_y
std::vector< double > * m_siDetLength
std::vector< bool > * m_siDetEc
std::vector< bool > * m_siDetBlay
std::vector< float > * m_siPos_y
std::vector< unsigned long long > * m_rdoID_prd
std::vector< double > * m_siDetHitDepthDir
std::vector< double > * m_siDetMaxWidth
virtual StatusCode execute() override final
std::vector< double > * m_siDetMinPhi
std::vector< double > * m_siDetMaxPhi
SG::ReadHandleKey< InDet::SCT_ClusterContainer > m_inputKey
std::vector< float > * m_siZ
ServiceHandle< ITHistSvc > m_thistSvc
StringProperty m_ntupleDirName
std::vector< float > * m_siPhiR
std::vector< double > * m_siDetMinZ
std::vector< double > * m_siDetHitPhiDir
Primary Vertex Finder.
Forward declaration.
#define private