ATLAS Offline Software
Loading...
Searching...
No Matches
LArTBLeakHit.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//=================================================
6// LArTBLeakHit class
7//
8// information stored
9// - energy deposition in the leakege detector
10// - hit position
11// - store the particle types, kinetic and total energies
12// - leakage direction
13//=================================================
14
15#ifndef LArTBLeakHit_h
16#define LArTBLeakHit_h 1
17#include "CLHEP/Vector/ThreeVector.h"
18#include <vector>
20{
21 public:
22 LArTBLeakHit() = default;
23 LArTBLeakHit(int d) : m_dir(d) {};
24
25//Set- Get- methods
26 // energy deposit
27 inline void SetEkin(double ed) { m_ekin = ed; }
28 inline void AddEkin(double ed) { m_ekin += ed; }
29 inline double GetEkin() { return m_ekin; }
30 inline void SetEtot(double ed) { m_etot = ed; }
31 inline void AddEtot(double ed) { m_etot += ed; }
32 inline double GetEtot() { return m_etot; }
33
34 // particle code
35 inline void SetCode(int cod) { m_pcode = cod; }
36 inline int GetCode() { return m_pcode; }
37
38 // position
39 inline void SetPos(const CLHEP::Hep3Vector& p) { m_pos = p; }
40 inline CLHEP::Hep3Vector GetPos() { return m_pos; }
41
42 // leakage direction
43 inline void SetDir(int d) { m_dir = d; }
44 inline int GetDir() { return m_dir; }
45
46 private:
47 double m_ekin{}; // kinetic energy of stopped particle
48 double m_etot{}; // total energy -"-
49 int m_pcode{}; // particle code, special codes for: deuterium 9001
50 // tritium 9002
51 // alpha 9003
52 // He3 9004
53 CLHEP::Hep3Vector m_pos; // absolute position of hit
54 int m_dir{}; // leakage direction encoding
55 // 1,2 EMEC x<0, x>0
56 // 3 EMEC down
57 // 4,5 EMEC back -"-
58 // 6,7 HEC1 -"-
59 // 8 HEC1 down
60 // 9,10 HEC1 back -"-
61 // 11,12 HEC2 -"-
62 // 13 HEC2 down
63 // 14 HEC2 back
64};
65
66typedef std::vector<LArTBLeakHit> LArTBLeakHitsCollection;
67
68#endif
std::vector< LArTBLeakHit > LArTBLeakHitsCollection
double GetEkin()
void SetCode(int cod)
void AddEkin(double ed)
void SetPos(const CLHEP::Hep3Vector &p)
LArTBLeakHit()=default
void AddEtot(double ed)
double GetEtot()
void SetEkin(double ed)
void SetDir(int d)
void SetEtot(double ed)
CLHEP::Hep3Vector GetPos()
CLHEP::Hep3Vector m_pos
LArTBLeakHit(int d)