ATLAS Offline Software
MMT_Hit.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 #ifndef MMT_HIT_H
6 #define MMT_HIT_H
7 
11 #include <cmath>
12 
13 class MMT_Hit {
14  public:
15  MMT_Hit(const Identifier &id, const std::string& stationName,
16  const int stEta, const int stPhi, const int sectorPhi,
17  const int multiplet, const int gasGap, const int channel,
18  const float stripTime, const int BC,
19  const MuonGM::MuonDetectorManager* detManager);
20 
21  ~MMT_Hit() = default;
22 
23  // Getters
24  int getART() const { return m_ART_ASIC; }
25  int getAge() const { return m_age; }
26  int getBC() const { return m_BC_time; }
27  int getChannel() const { return m_strip; }
28  int getPlane() const { return m_plane; }
29  char getSector() const { return m_sector; }
30  double getRZSlope() const { return m_RZslope; }
31  int getVMM() const { return m_VMM_chip; }
32  double getShift() const { return m_shift; }
33  int getStationEta() const { return m_station_eta; }
34  int getStationPhi() const { return m_station_phi; }
35  int getSectorPhi() const { return m_sector_phi; }
36  double getR() const { return m_R; }
37  double getRp() const { return m_Rp; }
38  double getZ() const { return m_Z; }
39  double getPitchOverZ() const { return m_PitchOverZ; }
40  float getTime() const { return m_time; }
41  bool isNoise() const { return m_isNoise; }
42  bool isX() const { return m_isX; }
43  bool isU() const { return m_isU; }
44  bool isV() const { return m_isV; }
45  bool infSlope() const { return std::isinf(m_RZslope); }
46 
47  // Setters
48  void setAge(int age) { m_age = age; }
49  void setAsNoise() { m_isNoise = true; }
50 
51  private:
52  double m_RZslope{-1}, m_Rp{-1};
53  double m_Z{-1}, m_R{-1};
54  double m_PitchOverZ{-1}, m_shift{-1};
55  float m_time;
58  int m_plane;
62  int m_strip;
63  int m_BC_time;
64  int m_age;
65  char m_sector;
66  bool m_isNoise{false};
67  bool m_isX{false};
68  bool m_isU{false};
69  bool m_isV{false};
70 };
71 #endif
MMT_Hit::m_station_eta
int m_station_eta
Definition: MMT_Hit.h:59
MMT_Hit::m_isX
bool m_isX
Definition: MMT_Hit.h:67
dumpTgcDigiDeadChambers.gasGap
list gasGap
Definition: dumpTgcDigiDeadChambers.py:33
MMT_Hit::m_sector
char m_sector
Definition: MMT_Hit.h:65
plotting.yearwise_efficiency.channel
channel
Definition: yearwise_efficiency.py:24
MMT_Hit::m_R
double m_R
Definition: MMT_Hit.h:53
MMT_Hit::isNoise
bool isNoise() const
Definition: MMT_Hit.h:41
dumpTgcDigiDeadChambers.stationName
dictionary stationName
Definition: dumpTgcDigiDeadChambers.py:30
MMT_Hit::getZ
double getZ() const
Definition: MMT_Hit.h:38
MMT_Hit::getStationPhi
int getStationPhi() const
Definition: MMT_Hit.h:34
MMT_Hit::m_RZslope
double m_RZslope
Definition: MMT_Hit.h:52
MMT_Hit::m_Rp
double m_Rp
Definition: MMT_Hit.h:52
MMT_Hit::getSector
char getSector() const
Definition: MMT_Hit.h:29
MMT_Hit::m_ART_ASIC
int m_ART_ASIC
Definition: MMT_Hit.h:57
MMT_Hit::getRp
double getRp() const
Definition: MMT_Hit.h:37
MMT_Hit::getStationEta
int getStationEta() const
Definition: MMT_Hit.h:33
MMT_Hit
Definition: MMT_Hit.h:13
MMT_Hit::isV
bool isV() const
Definition: MMT_Hit.h:44
MMT_Hit::getVMM
int getVMM() const
Definition: MMT_Hit.h:31
MMT_Hit::m_Z
double m_Z
Definition: MMT_Hit.h:53
MMT_Hit::m_sector_phi
int m_sector_phi
Definition: MMT_Hit.h:61
MMT_Hit::getART
int getART() const
Definition: MMT_Hit.h:24
MMT_Hit::getR
double getR() const
Definition: MMT_Hit.h:36
MMT_Hit::m_age
int m_age
Definition: MMT_Hit.h:64
MMT_Hit::setAge
void setAge(int age)
Definition: MMT_Hit.h:48
MMT_Hit::m_PitchOverZ
double m_PitchOverZ
Definition: MMT_Hit.h:54
MMReadoutElement.h
MMT_Hit::m_plane
int m_plane
Definition: MMT_Hit.h:58
MMT_Hit::m_VMM_chip
int m_VMM_chip
Definition: MMT_Hit.h:56
MMT_Hit::m_isV
bool m_isV
Definition: MMT_Hit.h:69
grepfile.age
age
Definition: grepfile.py:26
MMT_Hit::getChannel
int getChannel() const
Definition: MMT_Hit.h:27
MMT_Hit::setAsNoise
void setAsNoise()
Definition: MMT_Hit.h:49
MMT_Hit::isU
bool isU() const
Definition: MMT_Hit.h:43
MMT_Hit::MMT_Hit
MMT_Hit(const Identifier &id, const std::string &stationName, const int stEta, const int stPhi, const int sectorPhi, const int multiplet, const int gasGap, const int channel, const float stripTime, const int BC, const MuonGM::MuonDetectorManager *detManager)
Definition: MMT_Hit.cxx:7
MMT_Hit::m_station_phi
int m_station_phi
Definition: MMT_Hit.h:60
MMT_Hit::m_isU
bool m_isU
Definition: MMT_Hit.h:68
MMT_Hit::getPitchOverZ
double getPitchOverZ() const
Definition: MMT_Hit.h:39
MMT_Hit::getAge
int getAge() const
Definition: MMT_Hit.h:25
MMT_Hit::m_time
float m_time
Definition: MMT_Hit.h:55
MMT_Hit::getBC
int getBC() const
Definition: MMT_Hit.h:26
MMT_Hit::isX
bool isX() const
Definition: MMT_Hit.h:42
MMT_Hit::getTime
float getTime() const
Definition: MMT_Hit.h:40
MuonDetectorManager.h
Muon::EnumDefs::BC
@ BC
Definition: MuonEnumDefs.h:13
MMT_Hit::~MMT_Hit
~MMT_Hit()=default
MuonChannelDesign.h
MMT_Hit::getSectorPhi
int getSectorPhi() const
Definition: MMT_Hit.h:35
MMT_Hit::m_BC_time
int m_BC_time
Definition: MMT_Hit.h:63
MuonGM::MuonDetectorManager
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
Definition: MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/MuonDetectorManager.h:51
MMT_Hit::getRZSlope
double getRZSlope() const
Definition: MMT_Hit.h:30
MMT_Hit::m_strip
int m_strip
Definition: MMT_Hit.h:62
MMT_Hit::getShift
double getShift() const
Definition: MMT_Hit.h:32
MMT_Hit::getPlane
int getPlane() const
Definition: MMT_Hit.h:28
MMT_Hit::m_isNoise
bool m_isNoise
Definition: MMT_Hit.h:66
MMT_Hit::infSlope
bool infSlope() const
Definition: MMT_Hit.h:45
MMT_Hit::m_shift
double m_shift
Definition: MMT_Hit.h:54
Identifier
Definition: IdentifierFieldParser.cxx:14