ATLAS Offline Software
Loading...
Searching...
No Matches
sTgcPrepData.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 MUONPREPRAWDATA_STGCPREPDATA_H
6#define MUONPREPRAWDATA_STGCPREPDATA_H
7
8// Base classes
10#include "TrkSurfaces/Surface.h"
13
14
15namespace Muon {
16
17
18
20 class sTgcPrepData final: public MuonCluster {
21
22
24 // Public methods:
26 public:
27 sTgcPrepData() = default;
28 sTgcPrepData(const sTgcPrepData &) = delete;
29 sTgcPrepData(sTgcPrepData &&) noexcept = default;
30 sTgcPrepData &operator=(const sTgcPrepData &) = delete;
31 sTgcPrepData &operator=(sTgcPrepData &&) noexcept = default;
32
44 Amg::Vector2D&& locpos,
46 Amg::MatrixX&& locErrMat,
47 const MuonGM::sTgcReadoutElement* detEl,
48 const int charge,
49 const short int time,
50 std::vector<uint16_t>&& stripNumbers,
51 std::vector<short int>&& stripTimes,
52 std::vector<int>&& stripCharges );
53
54
57 Amg::Vector2D&& locpos,
59 Amg::MatrixX&& locErrMat,
60 const MuonGM::sTgcReadoutElement* detEl,
61 const int charge = 0,
62 const short int time = 0);
63
65 virtual ~sTgcPrepData() = default;
66
68 virtual const Amg::Vector3D& globalPosition() const override final;
69
72 virtual const MuonGM::sTgcReadoutElement* detectorElement() const override final;
73
74 //** @brief Interface method returning the prdType */
75 virtual Trk::PrepRawDataType prdType() const override {
77 }
78
80 virtual MsgStream& dump( MsgStream& stream) const override final;
81
83 virtual std::ostream& dump( std::ostream& stream) const override final;
84
87 int charge() const;
88 short int time() const;
89
91 const std::vector<uint16_t>& stripNumbers() const;
92
94 const std::vector<short int>& stripTimes() const;
95
97 const std::vector<int>& stripCharges() const;
98
106
107 enum class Quality: uint8_t{
109 };
110
111 Quality quality() const { return m_quality; }
112 void setQuality(const Quality q) { m_quality = q; }
113
114 Author author() const { return m_author; }
115 void setAuthor(const Author a) { m_author = a; }
116 private:
117
120 int m_charge{0};
121 short int m_time{0};
123 std::vector<uint16_t> m_stripNumbers{};
130 std::vector<short int> m_stripTimes{};
131 std::vector<int> m_stripCharges{};
132
135
136 };
137
139 return m_detEl;
140 }
141 // return globalPosition:
143 if (not m_globalPosition) {
144 m_globalPosition.set(std::make_unique<Amg::Vector3D>(
145 m_detEl->surface(identify())
147 }
148
150 return *m_globalPosition;
151 }
152
153 inline int sTgcPrepData::charge() const { return m_charge; }
154
155 inline short int sTgcPrepData::time() const { return m_time; }
156
157 inline const std::vector<uint16_t>& sTgcPrepData::stripNumbers() const { return m_stripNumbers; }
158 inline const std::vector<short int>& sTgcPrepData::stripTimes() const { return m_stripTimes; }
159 inline const std::vector<int>& sTgcPrepData::stripCharges() const { return m_stripCharges; }
160
161}
162
163#endif // MUONPREPRAWDATA_STGCPREPDATA_H
164
static Double_t a
Eigen::Matrix< double, 3, 1 > Vector3D
This is a "hash" representation of an Identifier.
An sTgcReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station c...
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalPosition
Global position of measurement.
Quality quality() const
int charge() const
Returns the bcBitMap of this PRD bit2 for Previous BC, bit1 for Current BC, bit0 for Next BC.
std::vector< uint16_t > m_stripNumbers
@list of strip numbers, time and charge, of the strips associated to the PRD
Author author() const
std::vector< short int > m_stripTimes
strip times for the sTGCs will be available for the commissioning of the NSW.
const std::vector< uint16_t > & stripNumbers() const
returns the list of strip numbers
short int time() const
virtual const Amg::Vector3D & globalPosition() const override final
Returns the global position.
sTgcPrepData()=default
const std::vector< int > & stripCharges() const
returns the list of charges
virtual const MuonGM::sTgcReadoutElement * detectorElement() const override final
Returns the detector element corresponding to this PRD.
const MuonGM::sTgcReadoutElement * m_detEl
Cached pointer to the detector element - should never be zero.
sTgcPrepData(const sTgcPrepData &)=delete
sTgcPrepData(sTgcPrepData &&) noexcept=default
virtual Trk::PrepRawDataType prdType() const override
Interface method returning the prdType.
const std::vector< short int > & stripTimes() const
returns the list of times
void setAuthor(const Author a)
std::vector< int > m_stripCharges
void setQuality(const Quality q)
class thrown in the event of an variable not being defined.
Definition PrepRawData.h:59
const Amg::Vector2D & localPosition() const
return the local position reference
Identifier identify() const
return the identifier
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
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.
Definition of ATLAS Math & Geometry primitives (Amg)
Eigen::Matrix< double, 3, 1 > Vector3D
Ensure that the Athena extensions are properly loaded.
Definition GeoMuonHits.h:27
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Ensure that the ATLAS eigen extensions are properly loaded.
-event-from-file
STL namespace.