ATLAS Offline Software
InnerDetector
InDetEventCnv
InDetSimEventTPCnv
InDetSimEventTPCnv
InDetHits
TRT_HitCollection_p5.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef INDETSIMEVENTTPCNV_TRTHITCOLLECTION_P5_H
6
#define INDETSIMEVENTTPCNV_TRTHITCOLLECTION_P5_H
7
8
/*
9
Author: Rob Duxfield <r.duxfield@sheffield.ac.uk> Spring 2008
10
_p3 Integer compression: <Andrew.Beddall@cern.ch> Spring 2009
11
_p4 HepMcParticleLink_p2 <Olivier.Arnaez@cern.ch> Fall 2015
12
_p5 HepMcParticleLink_p3
13
See http://cern.ch/beddall/TRThitCompression/
14
*/
15
16
#include <vector>
17
#include <string>
18
19
class
TRT_HitCollection_p5
20
{
21
public
:
23
TRT_HitCollection_p5
();
24
25
//private:
26
27
//
28
// 1 element per string (a string resides in one straw; there may be more than one string in a straw)
29
//
30
31
std::vector<unsigned short>
m_nHits
;
// number of hits in the string (0,1,2 ... ,hundreds).
32
std::vector<unsigned short>
m_strawId2b
;
// straw id | 24-bit
33
std::vector<unsigned char>
m_strawId1b
;
// straw id | integer.
34
std::vector<unsigned char>
m_startR
;
// hit start radius (0, 2 mm) [not always stored].
35
std::vector<unsigned char>
m_startPhi
;
// hit start phi (-pi, pi).
36
std::vector<unsigned char>
m_startZ
;
// hit start z (-365, +365 mm), and 1-bit startRflag.
37
38
//
39
// 1 element per hit, there are typically 1 or 2 hits per string, but can be hundreds!
40
//
41
42
std::vector<unsigned short>
m_kinEne
;
// short float, kinematic energy of the particle causing the hit.
43
std::vector<unsigned short>
m_steplength
;
// short float, g4 step length; endZ is derived from this.
44
std::vector<unsigned char>
m_endR
;
// hit end radius (0, 2 mm) [Not always stored].
45
std::vector<unsigned char>
m_endPhi
;
// hit end phi (-pi, pi).
46
std::vector<unsigned short>
m_meanTime
;
// time to center of the hit, and 1-bit idZsign and 1-bit endRflag.
47
std::vector<float>
m_meanTimeof
;
// t >= 75 ns overflow to a float.
48
49
//
50
// much less frequent
51
//
52
53
std::vector<float>
m_hitEne
;
// energy deposited; *only stored for photons* (m_id=22)
54
std::vector<unsigned short>
m_nId
;
55
std::vector<unsigned int>
m_truthID
;
56
std::vector<unsigned short>
m_mcEvtIndex
;
57
std::vector<char>
m_truthSupp
;
58
std::vector<unsigned short>
m_nTruthID
;
59
std::vector<int>
m_id
;
// particle code.
60
61
};
62
63
// inlines
64
65
inline
66
TRT_HitCollection_p5::TRT_HitCollection_p5
() {}
67
68
#endif // INDETSIMEVENTTPCNV_TRTHITCOLLECTION_P5_H
TRT_HitCollection_p5::m_strawId2b
std::vector< unsigned short > m_strawId2b
Definition:
TRT_HitCollection_p5.h:32
TRT_HitCollection_p5::m_mcEvtIndex
std::vector< unsigned short > m_mcEvtIndex
Definition:
TRT_HitCollection_p5.h:56
TRT_HitCollection_p5::m_endR
std::vector< unsigned char > m_endR
Definition:
TRT_HitCollection_p5.h:44
TRT_HitCollection_p5::m_startZ
std::vector< unsigned char > m_startZ
Definition:
TRT_HitCollection_p5.h:36
TRT_HitCollection_p5::m_startPhi
std::vector< unsigned char > m_startPhi
Definition:
TRT_HitCollection_p5.h:35
TRT_HitCollection_p5::m_strawId1b
std::vector< unsigned char > m_strawId1b
Definition:
TRT_HitCollection_p5.h:33
TRT_HitCollection_p5::m_endPhi
std::vector< unsigned char > m_endPhi
Definition:
TRT_HitCollection_p5.h:45
TRT_HitCollection_p5::m_meanTime
std::vector< unsigned short > m_meanTime
Definition:
TRT_HitCollection_p5.h:46
TRT_HitCollection_p5::m_hitEne
std::vector< float > m_hitEne
Definition:
TRT_HitCollection_p5.h:53
TRT_HitCollection_p5::m_truthSupp
std::vector< char > m_truthSupp
Definition:
TRT_HitCollection_p5.h:57
TRT_HitCollection_p5
Definition:
TRT_HitCollection_p5.h:20
TRT_HitCollection_p5::m_nTruthID
std::vector< unsigned short > m_nTruthID
Definition:
TRT_HitCollection_p5.h:58
TRT_HitCollection_p5::m_truthID
std::vector< unsigned int > m_truthID
Definition:
TRT_HitCollection_p5.h:55
TRT_HitCollection_p5::m_steplength
std::vector< unsigned short > m_steplength
Definition:
TRT_HitCollection_p5.h:43
TRT_HitCollection_p5::m_nHits
std::vector< unsigned short > m_nHits
Definition:
TRT_HitCollection_p5.h:31
TRT_HitCollection_p5::m_id
std::vector< int > m_id
Definition:
TRT_HitCollection_p5.h:59
TRT_HitCollection_p5::m_meanTimeof
std::vector< float > m_meanTimeof
Definition:
TRT_HitCollection_p5.h:47
TRT_HitCollection_p5::m_kinEne
std::vector< unsigned short > m_kinEne
Definition:
TRT_HitCollection_p5.h:42
TRT_HitCollection_p5::TRT_HitCollection_p5
TRT_HitCollection_p5()
Default constructor.
Definition:
TRT_HitCollection_p5.h:66
TRT_HitCollection_p5::m_startR
std::vector< unsigned char > m_startR
Definition:
TRT_HitCollection_p5.h:34
TRT_HitCollection_p5::m_nId
std::vector< unsigned short > m_nId
Definition:
TRT_HitCollection_p5.h:54
Generated on Thu Nov 7 2024 21:30:35 for ATLAS Offline Software by
1.8.18