ATLAS Offline Software
Loading...
Searching...
No Matches
GeoMuonHits.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef GEOADAPTORS_GEOMUONHITS_H
6#define GEOADAPTORS_GEOMUONHITS_H
7//----------------------------------------------------------//
8// //
9// An adaptor for MuonHits. //
10// //
11// Joe Boudreau Feb 24. //
12// //
13// This adaptor class allows Muon(MDT,RPC,TGC, CSC) Hits to //
14// behave as if they knew which detector they were in. //
15// //
16// imt 2005/11/4 PrepRawData just need access to helpers... //
17// //
18//----------------------------------------------------------//
19#include "CLHEP/Geometry/Point3D.h"
20#include "CLHEP/Geometry/Transform3D.h"
21#include "Identifier/Identifier.h"
26
27namespace MuonGM {
29}
30
31class MDTSimHit;
32class RPCSimHit;
33class TGCSimHit;
34class CSCSimHit;
35class sTGCSimHit;
36class MMSimHit;
37
38
39
40class MdtIdHelper;
41class RpcIdHelper;
42class TgcIdHelper;
43class CscIdHelper;
44class sTgcIdHelper;
45class MmIdHelper;
46
47namespace MuonGM{
48 class RpcReadoutElement;
49 }
50class Identifier;
51
52
54{
55protected:
56 const MuonGM::MuonDetectorManager* mgr() const;
57
58private:
59 static const MuonGM::MuonDetectorManager* init();
60};
61
62
64{
65 public:
66
67 // Constructor:
69
70 // Get the absolute global position:
72
73 // Underlying hit.
74 const MDTSimHit &data() const { return *m_hit;}
75
76 // Is this hit OK?
77 operator bool () const { return true; }
78
79 private:
81};
82
83
85{
86 public:
87
88 // Constructor:
90
91 // Get the absolute global position:
93
94 // Underlying hit.
95 const RPCSimHit &data() const { return *m_hit;}
96
97 // Is this hit OK?
98 operator bool () const { return m_goodHit; }
99
100 private:
101 const RPCSimHit* m_hit{nullptr};
102 bool m_goodHit{true};
104};
105
106
108{
109 public:
110
111 // Constructor:
113
114 // Get the absolute global position:
116
117 // Underlying hit.
118 const TGCSimHit &data() const { return *m_hit;}
119
120 // Is this hit OK?
121 operator bool () const { return true; }
122
123
124
125 private:
127};
128
129
131{
132 public:
133
134 // Constructor:
136
137 // Get the absolute global position:
139
140 // Underlying hit.
141 const CSCSimHit &data() const { return *m_hit;}
142
143 // Is this hit OK?
144 operator bool () const { return true; }
145
146 private:
148};
149
150
152{
153 public:
154
155 // Constructor:
157
158 // Get the absolute global position:
160
161 // Get the a 3Dpoint with x and y = TrkLocalPos (tracking definition)
163
164 // Get the global position from a TrkLocalPos (tracking definition)
166
167 // Underlying hit.
168 const MMSimHit &data() const { return *m_hit;}
169
170 // Is this hit OK?
171 operator bool () const { return true; }
172
173
174
175 private:
177};
178
179
181{
182 public:
183
184 // Constructor:
186
187 // Get the absolute global position:
189
190 // Underlying hit.
191 const sTGCSimHit &data() const { return *m_hit;}
192
193 // Is this hit OK?
194 operator bool () const { return true; }
195
196
197 private:
199};
200
202
203#endif
Header file for AthHistogramAlgorithm.
GeoCSCHit(const CSCSimHit &h)
const CSCSimHit & data() const
Amg::Vector3D getGlobalPosition() const
const CSCSimHit * m_hit
const MDTSimHit * m_hit
Definition GeoMuonHits.h:80
const MDTSimHit & data() const
Definition GeoMuonHits.h:74
Amg::Vector3D getGlobalPosition() const
GeoMDTHit(const MDTSimHit &h)
GeoMMHit(const MMSimHit &h)
const MMSimHit & data() const
Amg::Vector3D getTrkLocalPosition() const
const MMSimHit * m_hit
Amg::Vector3D getTrkGlobalPosition() const
Amg::Vector3D getGlobalPosition() const
const MuonGM::MuonDetectorManager * mgr() const
static const MuonGM::MuonDetectorManager * init()
Identifier m_id
const RPCSimHit & data() const
Definition GeoMuonHits.h:95
const RPCSimHit * m_hit
bool m_goodHit
GeoRPCHit(const RPCSimHit &h)
Amg::Vector3D getGlobalPosition() const
GeoTGCHit(const TGCSimHit &h)
Amg::Vector3D getGlobalPosition() const
const TGCSimHit * m_hit
const TGCSimHit & data() const
Amg::Vector3D getGlobalPosition() const
const sTGCSimHit * m_hit
const sTGCSimHit & data() const
GeosTGCHit(const sTGCSimHit &h)
The MuonDetectorManager stores the transient representation of the Muon Spectrometer geometry and pro...
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the Athena extensions are properly loaded.
Definition GeoMuonHits.h:27