ATLAS Offline Software
MMT_Hit.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 MMT_HIT_H
6 #define MMT_HIT_H
7 
8 #include "MMT_struct.h"
9 
10 namespace MuonGM {
11  class MuonDetectorManager;
12 }
13 
14 class MMT_Hit {
15  public:
16  MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager* detManager, const std::shared_ptr<MMT_Parameters> par, const std::vector<ROOT::Math::XYZVector> &planeCoordinates);
17  MMT_Hit(const MMT_Hit* hit);
18  ~MMT_Hit()=default;
19 
20  int getART() const { return m_ART_ASIC; }
21  int getAge() const { return m_age; }
22  int getBC() const { return m_BC_time; }
23  int getChannel() const { return m_strip; }
24  int getGasGap() const { return m_gasgap; }
25  const std::string& getModule() const { return m_module; }
26  int getMultiplet() const { return m_multiplet; }
27  int getPlane() const { return m_plane; }
28  char getSector() const { return m_sector; }
29  double getRZSlope() const { return m_RZslope; }
30  double getYZSlope() const { return m_YZslope; }
31  int getVMM() const { return m_VMM_chip; }
32  int getMMFE8() const { return m_MMFE_VMM; }
33  float getShift() const { return m_shift; }
34  const std::string& getStationName() const { return m_station_name; }
35  int getStationEta() const { return m_station_eta; }
36  int getStationPhi() const { return m_station_phi; }
37  double getR() const { return m_R; }
38  double getRp() const { return m_Rp; }
39  double getX() const { return m_localX; }
40  double getY() const { return m_Y; }
41  double getZ() const { return m_Z; }
42  double getPitchOverZ() const { return m_PitchOverZ; }
43  float getTime() const { return m_time; }
44  bool isNoise() const { return m_isNoise; }
45  bool isX() const;
46  bool isU() const;
47  bool isV() const;
48  void printHit() const;
49  void setAge(int age) { m_age = age; }
50  void setAsNoise() { m_isNoise = true; }
51  void setBC(int bc) { m_BC_time = bc; }
52  void setRZSlope(double slope) { m_RZslope = slope; }
53  void setYZSlope(double slope) { m_YZslope = slope; }
54  void setY(double y) { m_Y = y; }
55  void setZ(double z) { m_Z = z; }
56  bool verifyHit() const;
57 
58  private:
59  char m_sector;
60  std::string m_module, m_station_name;
64  int m_plane;
68  int m_gasgap;
69  int m_strip;
70  double m_localX;
73  double m_Y, m_Z, m_PitchOverZ;
74  double m_R, m_Rp;
75  bool m_isNoise;
76  float m_time, m_shift;
77 };
78 #endif
MMT_Hit::m_station_eta
int m_station_eta
Definition: MMT_Hit.h:65
MMT_Hit::setBC
void setBC(int bc)
Definition: MMT_Hit.h:51
MMT_Hit::getMMFE8
int getMMFE8() const
Definition: MMT_Hit.h:32
MuonGM
Ensure that the Athena extensions are properly loaded.
Definition: GeoMuonHits.h:27
MMT_Hit::m_YZslope
double m_YZslope
Definition: MMT_Hit.h:71
MMT_Hit::m_sector
char m_sector
Definition: MMT_Hit.h:59
MMT_Hit::m_R
double m_R
Definition: MMT_Hit.h:74
MMT_Hit::isNoise
bool isNoise() const
Definition: MMT_Hit.h:44
MMT_Hit::setZ
void setZ(double z)
Definition: MMT_Hit.h:55
MMT_Hit::getZ
double getZ() const
Definition: MMT_Hit.h:41
MMT_Hit::getStationPhi
int getStationPhi() const
Definition: MMT_Hit.h:36
MMT_Hit::m_RZslope
double m_RZslope
Definition: MMT_Hit.h:71
MMT_Hit::getY
double getY() const
Definition: MMT_Hit.h:40
MMT_Hit::m_Rp
double m_Rp
Definition: MMT_Hit.h:74
MMT_Hit::getSector
char getSector() const
Definition: MMT_Hit.h:28
MMT_Hit::getGasGap
int getGasGap() const
Definition: MMT_Hit.h:24
MMT_Hit::m_ART_ASIC
int m_ART_ASIC
Definition: MMT_Hit.h:63
MMT_Hit::getRp
double getRp() const
Definition: MMT_Hit.h:38
MMT_Hit::m_Y
double m_Y
Definition: MMT_Hit.h:73
MMT_Hit::getStationEta
int getStationEta() const
Definition: MMT_Hit.h:35
MMT_Hit
Definition: MMT_Hit.h:14
MMT_Hit::isV
bool isV() const
Definition: MMT_Hit.cxx:154
MMT_Hit::getVMM
int getVMM() const
Definition: MMT_Hit.h:31
MMT_Hit::m_Z
double m_Z
Definition: MMT_Hit.h:73
MMT_Hit::getART
int getART() const
Definition: MMT_Hit.h:20
MMT_Hit::verifyHit
bool verifyHit() const
Definition: MMT_Hit.cxx:159
MMT_Hit::m_module
std::string m_module
Definition: MMT_Hit.h:60
MMT_Hit::getR
double getR() const
Definition: MMT_Hit.h:37
MMT_Hit::m_age
int m_age
Definition: MMT_Hit.h:72
MMT_Hit::m_shift
float m_shift
Definition: MMT_Hit.h:76
MMT_Hit::setAge
void setAge(int age)
Definition: MMT_Hit.h:49
MMT_Hit::m_PitchOverZ
double m_PitchOverZ
Definition: MMT_Hit.h:73
MMT_Hit::getShift
float getShift() const
Definition: MMT_Hit.h:33
MMT_Hit::m_gasgap
int m_gasgap
Definition: MMT_Hit.h:68
MMT_Hit::m_plane
int m_plane
Definition: MMT_Hit.h:64
MMT_Hit::m_VMM_chip
int m_VMM_chip
Definition: MMT_Hit.h:61
z
#define z
grepfile.age
age
Definition: grepfile.py:26
MMT_Hit::getChannel
int getChannel() const
Definition: MMT_Hit.h:23
MMT_Hit::setAsNoise
void setAsNoise()
Definition: MMT_Hit.h:50
MMT_Hit::isU
bool isU() const
Definition: MMT_Hit.cxx:149
MMT_Hit::setY
void setY(double y)
Definition: MMT_Hit.h:54
MMT_Hit::m_station_phi
int m_station_phi
Definition: MMT_Hit.h:66
MMT_Hit::m_MMFE_VMM
int m_MMFE_VMM
Definition: MMT_Hit.h:62
MMT_Hit::getStationName
const std::string & getStationName() const
Definition: MMT_Hit.h:34
MMT_struct.h
MMT_Hit::m_multiplet
int m_multiplet
Definition: MMT_Hit.h:67
MMT_Hit::m_station_name
std::string m_station_name
Definition: MMT_Hit.h:60
MMT_Hit::getPitchOverZ
double getPitchOverZ() const
Definition: MMT_Hit.h:42
MMT_Hit::getAge
int getAge() const
Definition: MMT_Hit.h:21
GetAllXsec.entry
list entry
Definition: GetAllXsec.py:132
MMT_Hit::m_time
float m_time
Definition: MMT_Hit.h:76
MMT_Hit::MMT_Hit
MMT_Hit(const hitData_entry &entry, const MuonGM::MuonDetectorManager *detManager, const std::shared_ptr< MMT_Parameters > par, const std::vector< ROOT::Math::XYZVector > &planeCoordinates)
Definition: MMT_Hit.cxx:13
createCoolChannelIdFile.par
par
Definition: createCoolChannelIdFile.py:29
MMT_Hit::getBC
int getBC() const
Definition: MMT_Hit.h:22
MMT_Hit::isX
bool isX() const
Definition: MMT_Hit.cxx:144
MMT_Hit::getYZSlope
double getYZSlope() const
Definition: MMT_Hit.h:30
MMT_Hit::getTime
float getTime() const
Definition: MMT_Hit.h:43
MMT_Hit::~MMT_Hit
~MMT_Hit()=default
MMT_Hit::m_BC_time
int m_BC_time
Definition: MMT_Hit.h:72
y
#define y
MuonGM::MuonDetectorManager
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
Definition: MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/MuonDetectorManager.h:50
MMT_Hit::printHit
void printHit() const
MMT_Hit::getRZSlope
double getRZSlope() const
Definition: MMT_Hit.h:29
MMT_Hit::getMultiplet
int getMultiplet() const
Definition: MMT_Hit.h:26
MMT_Hit::m_strip
int m_strip
Definition: MMT_Hit.h:69
hitData_entry
Definition: MMT_struct.h:69
MMT_Hit::getX
double getX() const
Definition: MMT_Hit.h:39
MMT_Hit::setRZSlope
void setRZSlope(double slope)
Definition: MMT_Hit.h:52
MMT_Hit::setYZSlope
void setYZSlope(double slope)
Definition: MMT_Hit.h:53
MMT_Hit::getPlane
int getPlane() const
Definition: MMT_Hit.h:27
MMT_Hit::m_localX
double m_localX
Definition: MMT_Hit.h:70
MMT_Hit::m_isNoise
bool m_isNoise
Definition: MMT_Hit.h:75
MMT_Hit::getModule
const std::string & getModule() const
Definition: MMT_Hit.h:25