ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonReconstruction
MuonRecEvent
MuonPrepRawData
MuonPrepRawData
CscPrepData.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
6
// CscPrepPdata.h
7
// Header file for class CscPrepData
9
// (c) ATLAS Detector software
11
// Class to implement Cluster for Muon - CSC
13
// Version 1.0 03/29/2005 Ketevi A. Assamagan
15
16
#ifndef MUONPREPRAWDATA_CSCPREPDATA_H
17
#define MUONPREPRAWDATA_CSCPREPDATA_H
18
19
// Base classes
20
#include "
MuonPrepRawData/MuonCluster.h
"
21
#include "
TrkSurfaces/Surface.h
"
22
#include "
MuonReadoutGeometry/CscReadoutElement.h
"
23
#include "
MuonPrepRawData/CscClusterStatus.h
"
24
#include "
MuonPrepRawData/CscTimeStatus.h
"
25
26
#include<vector>
27
28
class
CscPrepDataContainerCnv
;
29
30
namespace
Muon
31
{
32
33
class
CscPrepDataContainerCnv_p1
;
34
38
class
CscPrepData
final:
public
MuonCluster
39
{
40
41
// /////////////////////////////////////////////////////////////////
42
// Public methods:
43
// /////////////////////////////////////////////////////////////////
44
public
:
45
46
friend
class ::CscPrepDataContainerCnv;
47
friend
class
Muon::CscPrepDataContainerCnv_p1
;
48
49
CscPrepData
();
50
CscPrepData
(
const
CscPrepData
&) =
default
;
51
CscPrepData
(
CscPrepData
&&) noexcept = default;
52
CscPrepData
&operator=(
const
CscPrepData
&) = default;
53
CscPrepData
&operator=(
CscPrepData
&&) noexcept = default;
54
55
69
CscPrepData
(
const
Identifier
& RDOId,
70
const
IdentifierHash
&idDE,
71
const
Amg
::Vector2D& locpos,
72
const
std
::
vector
<
Identifier
>&
rdoList
,
73
const
Amg
::MatrixX& locErrMat,
74
const
MuonGM
::
CscReadoutElement
* detEl,
75
const
int
charge
,
76
const
double
time
,
77
const
CscClusterStatus
status
,
78
const
CscTimeStatus
timeStatus
=
Muon
::
CscTimeStatusUndefined
79
);
80
81
CscPrepData
(
const
Identifier
& RDOId,
82
const
IdentifierHash
&idDE,
83
const
Amg
::Vector2D& locpos,
84
std
::
vector
<
Identifier
>&&
rdoList
,
85
Amg
::MatrixX&& locErrMat,
86
const
MuonGM
::
CscReadoutElement
* detEl,
87
const
int
charge
,
88
const
double
time
,
89
const
CscClusterStatus
status
,
90
const
CscTimeStatus
timeStatus
=
Muon
::
CscTimeStatusUndefined
91
);
92
93
95
virtual ~
CscPrepData
();
96
98
// Virtual methods
100
102
virtual
const
Amg
::
Vector3D
&
globalPosition
()
const
override final;
103
107
virtual
const
MuonGM
::
CscReadoutElement
*
detectorElement
()
const
override final;
108
110
virtual
Trk
::
PrepRawDataType
prdType
()
const
override final {
111
return
Trk::PrepRawDataType::CscPrepData
;
112
}
113
115
116
int
charge
()
const
;
117
119
double
time
()
const
;
120
122
CscClusterStatus
status
()
const
;
123
125
CscTimeStatus
timeStatus
()
const
;
126
128
virtual
MsgStream&
dump
( MsgStream& stream)
const
override
final
;
129
131
virtual
std::ostream&
dump
( std::ostream& stream)
const
override
final
;
132
133
private
:
134
136
const
MuonGM::CscReadoutElement
*
m_detEl
;
137
int
m_charge
;
138
double
m_time
;
139
CscClusterStatus
m_status
;
140
CscTimeStatus
m_timeStatus
;
141
};
142
144
// Inline methods:
146
147
inline
const
MuonGM::CscReadoutElement
*
CscPrepData::detectorElement
()
const
148
{
149
return
m_detEl
;
150
}
151
152
inline
int
CscPrepData::charge
()
const
153
{
154
return
m_charge
;
155
}
156
157
inline
double
CscPrepData::time
()
const
158
{
159
return
m_time
;
160
}
161
162
inline
CscClusterStatus
CscPrepData::status
()
const
163
{
164
return
m_status
;
165
}
166
167
inline
CscTimeStatus
CscPrepData::timeStatus
()
const
168
{
169
return
m_timeStatus
;
170
}
171
172
// return globalPosition:
173
inline
const
Amg::Vector3D
&
CscPrepData::globalPosition
()
const
174
{
175
if
(not
m_globalPosition
) {
176
m_globalPosition
.set(std::make_unique<const Amg::Vector3D>(
177
m_detEl
->surface(
identify
())
178
.
Trk::Surface::localToGlobal
(
localPosition
())));
179
}
180
181
if
(not
m_globalPosition
)
throw
Trk::PrepRawDataUndefinedVariable
();
182
return
*
m_globalPosition
;
183
}
184
185
}
186
187
#endif
// MUONPREPRAWDATA_CSCPREPDATA_H
188
CscClusterStatus.h
CscReadoutElement.h
CscTimeStatus.h
MuonCluster.h
PrepRawDataType
PrepRawDataType
Definition
PrepRawData.h:39
Surface.h
Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
CscPrepDataContainerCnv
Create derived converter to customize the saving of identifiable container.
Definition
CscPrepDataContainerCnv.h:28
CscPrepData::CscPrepData
CscPrepData()
Definition
CscPrepData.cxx:64
CscReadoutElement
Definition
CscReadoutElement.h:56
IdentifierHash
This is a "hash" representation of an Identifier.
Definition
IdentifierHash.h:25
MuonGM::CscReadoutElement
Definition
CscReadoutElement.h:56
Muon::CscPrepDataContainerCnv_p1
Definition
CscPrepDataContainerCnv_p1.h:28
Muon::CscPrepData::m_timeStatus
CscTimeStatus m_timeStatus
Definition
CscPrepData.h:140
Muon::CscPrepData::timeStatus
CscTimeStatus timeStatus() const
Returns the Csc time status flag.
Definition
CscPrepData.h:167
Muon::CscPrepData::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
Returns the global position.
Definition
CscPrepData.h:173
Muon::CscPrepData::CscPrepData
CscPrepData()
Definition
CscPrepData.cxx:64
Muon::CscPrepData::detectorElement
virtual const MuonGM::CscReadoutElement * detectorElement() const override final
Return the detector element corresponding to this PRD.
Definition
CscPrepData.h:147
Muon::CscPrepData::m_status
CscClusterStatus m_status
Definition
CscPrepData.h:139
Muon::CscPrepData::time
double time() const
Returns the time.
Definition
CscPrepData.h:157
Muon::CscPrepData::m_time
double m_time
Definition
CscPrepData.h:138
Muon::CscPrepData::m_detEl
const MuonGM::CscReadoutElement * m_detEl
Pointer to the detector element.
Definition
CscPrepData.h:136
Muon::CscPrepData::charge
int charge() const
Returns the charge.
Definition
CscPrepData.h:152
Muon::CscPrepData::CscPrepData
CscPrepData(const CscPrepData &)=default
Muon::CscPrepData::prdType
virtual Trk::PrepRawDataType prdType() const override final
Interface method returning the prdType.
Definition
CscPrepData.h:110
Muon::CscPrepData::CscPrepData
CscPrepData(CscPrepData &&) noexcept=default
Muon::CscPrepData::status
CscClusterStatus status() const
Returns the Csc status (position measurement) flag.
Definition
CscPrepData.h:162
Muon::CscPrepData::m_charge
int m_charge
Definition
CscPrepData.h:137
Muon::MuonCluster::MuonCluster
MuonCluster()
Default constructor.
Definition
MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/src/MuonCluster.cxx:41
Muon::MuonCluster::m_globalPosition
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalPosition
Global position of measurement.
Definition
MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.h:89
Trk::PrepRawDataUndefinedVariable
class thrown in the event of an variable not being defined.
Definition
PrepRawData.h:59
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
Trk::Surface::localToGlobal
virtual void localToGlobal(const Amg::Vector2D &locp, const Amg::Vector3D &mom, Amg::Vector3D &glob) const =0
Specified by each surface type: LocalToGlobal method without dynamic memory allocation.
vector
Definition
MultiHisto.h:13
const
Amg
Definition of ATLAS Math & Geometry primitives (Amg).
Definition
AmgStringHelpers.h:19
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition
GeoPrimitives.h:47
Identifier
Definition
IdentifierFieldParser.cxx:14
MuonGM
Ensure that the Athena extensions are properly loaded.
Definition
GeoMuonHits.h:27
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
Muon::CscClusterStatus
CscClusterStatus
Enum to represent the cluster status - see the specific enum values for more details.
Definition
CscClusterStatus.h:23
Muon::CscTimeStatus
CscTimeStatus
Enum to represent the cluster time measurement status - see the specific enum values for more details...
Definition
CscTimeStatus.h:24
Muon::CscTimeStatusUndefined
@ CscTimeStatusUndefined
Time is not assessed indicating potential bug.
Definition
CscTimeStatus.h:39
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition
FakeTrackBuilder.h:9
Trk::PrepRawDataType::CscPrepData
@ CscPrepData
Definition
PrepRawData.h:48
dump
-event-from-file
std
STL namespace.
Generated on
for ATLAS Offline Software by
1.17.0