ATLAS Offline Software
sTgcPrepData.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 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 
15 namespace 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;
31  sTgcPrepData &operator=(sTgcPrepData &&) noexcept = default;
32 
43  const IdentifierHash &idDE,
44  Amg::Vector2D&& locpos,
45  std::vector<Identifier>&& rdoList,
46  Amg::MatrixX&& locErrMat,
47  const MuonGM::sTgcReadoutElement* detEl,
48  const int charge,
49  const short int time,
51  std::vector<short int>&& stripTimes,
52  std::vector<int>&& stripCharges );
53 
54 
56  const IdentifierHash &idDE,
57  Amg::Vector2D&& locpos,
58  std::vector<Identifier>&& rdoList,
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 
75  virtual bool type(Trk::PrepRawDataType type) const override final
76  {
78  }
79 
81  virtual MsgStream& dump( MsgStream& stream) const override final;
82 
84  virtual std::ostream& dump( std::ostream& stream) const override final;
85 
88  int charge() const;
89  short int time() const;
90 
92  const std::vector<uint16_t>& stripNumbers() const;
93 
95  const std::vector<short int>& stripTimes() const;
96 
98  const std::vector<int>& stripCharges() const;
99 
100  enum class Author: uint8_t{
101  unKnown = 0,
105  Caruana
106  };
107 
108  enum class Quality: uint8_t{
109  unKnown = 0,
110  };
111 
112  Quality quality() const { return m_quality; }
113  void setQuality(const Quality q) { m_quality = q; }
114 
115  Author author() const { return m_author; }
116  void setAuthor(const Author a) { m_author = a; }
117  private:
118 
121  int m_charge{0};
122  short int m_time{0};
124  std::vector<uint16_t> m_stripNumbers{};
131  std::vector<short int> m_stripTimes{};
132  std::vector<int> m_stripCharges{};
133 
136 
137  };
138 
140  return m_detEl;
141  }
142  // return globalPosition:
144  if (not m_globalPosition) {
145  m_globalPosition.set(std::make_unique<Amg::Vector3D>(
148  }
149 
151  return *m_globalPosition;
152  }
153 
154  inline int sTgcPrepData::charge() const { return m_charge; }
155 
156  inline short int sTgcPrepData::time() const { return m_time; }
157 
158  inline const std::vector<uint16_t>& sTgcPrepData::stripNumbers() const { return m_stripNumbers; }
159  inline const std::vector<short int>& sTgcPrepData::stripTimes() const { return m_stripTimes; }
160  inline const std::vector<int>& sTgcPrepData::stripCharges() const { return m_stripCharges; }
161 
162 }
163 
164 #endif // MUONPREPRAWDATA_STGCPREPDATA_H
165 
Muon::sTgcPrepData::setAuthor
void setAuthor(const Author a)
Definition: sTgcPrepData.h:116
MuonCluster.h
MuonGM
Ensure that the Athena extensions are properly loaded.
Definition: GeoMuonHits.h:27
Trk::PrepRawDataType
PrepRawDataType
Definition: PrepRawData.h:39
Amg::MatrixX
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Definition: EventPrimitives.h:27
Muon::sTgcPrepData::m_detEl
const MuonGM::sTgcReadoutElement * m_detEl
Cached pointer to the detector element - should never be zero.
Definition: sTgcPrepData.h:120
Muon::sTgcPrepData::Author::RdoToPrdConverter
@ RdoToPrdConverter
xAOD::uint8_t
uint8_t
Definition: Muon_v1.cxx:557
Surface.h
sTgcReadoutElement.h
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
NswClusteringUtils.h
Muon::sTgcPrepData::Author::Caruana
@ Caruana
Muon::sTgcPrepData::dump
virtual MsgStream & dump(MsgStream &stream) const override final
Dumps information about the PRD.
Definition: sTgcPrepData.cxx:42
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
Muon::sTgcPrepData::author
Author author() const
Definition: sTgcPrepData.h:115
Muon::sTgcPrepData::sTgcPrepData
sTgcPrepData()=default
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition: TrackSystemController.h:45
MuonGM::MuonClusterReadoutElement::surface
virtual const Trk::PlaneSurface & surface() const override
access to chamber surface (phi orientation), uses the first gas gap
Definition: MuonClusterReadoutElement.h:123
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
Muon::sTgcPrepData::m_stripTimes
std::vector< short int > m_stripTimes
strip times for the sTGCs will be available for the commissioning of the NSW.
Definition: sTgcPrepData.h:131
Muon::sTgcPrepData::type
virtual bool type(Trk::PrepRawDataType type) const override final
Interface method checking the type.
Definition: sTgcPrepData.h:75
Muon::sTgcPrepData::stripNumbers
const std::vector< uint16_t > & stripNumbers() const
returns the list of strip numbers
Definition: sTgcPrepData.h:158
Muon::sTgcPrepData::stripCharges
const std::vector< int > & stripCharges() const
returns the list of charges
Definition: sTgcPrepData.h:160
xAOD::uint16_t
setWord1 uint16_t
Definition: eFexEMRoI_v1.cxx:93
Muon::sTgcPrepData::globalPosition
virtual const Amg::Vector3D & globalPosition() const override final
Returns the global position.
Definition: sTgcPrepData.h:143
vector
Definition: MultiHisto.h:13
MuonGM::sTgcReadoutElement
An sTgcReadoutElement corresponds to a single STGC module; therefore typicaly a barrel muon station c...
Definition: MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/sTgcReadoutElement.h:30
Muon::sTgcPrepData::m_stripNumbers
std::vector< uint16_t > m_stripNumbers
@list of strip numbers, time and charge, of the strips associated to the PRD
Definition: sTgcPrepData.h:124
Muon::sTgcPrepData::sTgcPrepData
sTgcPrepData(const sTgcPrepData &)=delete
Muon::sTgcPrepData::sTgcPrepData
sTgcPrepData(sTgcPrepData &&) noexcept=default
Muon::sTgcPrepData::time
short int time() const
Definition: sTgcPrepData.h:156
Muon::sTgcPrepData::Quality::unKnown
@ unKnown
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg
Definition of ATLAS Math & Geometry primitives (Amg)
Definition: AmgStringHelpers.h:19
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
Trk::PrepRawDataType::sTgcPrepData
@ sTgcPrepData
Muon::sTgcPrepData::setQuality
void setQuality(const Quality q)
Definition: sTgcPrepData.h:113
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Muon::sTgcPrepData::Author::SimpleClusterBuilder
@ SimpleClusterBuilder
Muon::sTgcPrepData::Author::TrigProcessor
@ TrigProcessor
Muon::sTgcPrepData::m_stripCharges
std::vector< int > m_stripCharges
Definition: sTgcPrepData.h:132
Muon::sTgcPrepData::detectorElement
virtual const MuonGM::sTgcReadoutElement * detectorElement() const override final
Returns the detector element corresponding to this PRD.
Definition: sTgcPrepData.h:139
calibdata.delete
list delete
Definition: calibdata.py:46
a
TList * a
Definition: liststreamerinfos.cxx:10
Muon::sTgcPrepData::Author
Author
Definition: sTgcPrepData.h:100
Muon::sTgcPrepData::m_quality
Quality m_quality
Definition: sTgcPrepData.h:134
Muon::MuonCluster::m_globalPosition
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalPosition
Global position of measurement.
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.h:96
extractSporadic.q
list q
Definition: extractSporadic.py:98
Muon::sTgcPrepData::m_charge
int m_charge
Definition: sTgcPrepData.h:121
Muon::MuonCluster
Class representing clusters in the muon system.
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.h:37
Muon::sTgcPrepData::Author::unKnown
@ unKnown
Muon::sTgcPrepData::Quality
Quality
Definition: sTgcPrepData.h:108
python.CaloScaleNoiseConfig.default
default
Definition: CaloScaleNoiseConfig.py:79
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
Muon::sTgcPrepData::m_author
Author m_author
Definition: sTgcPrepData.h:135
Muon::sTgcPrepData
Class to represent sTgc measurements.
Definition: sTgcPrepData.h:20
Muon::sTgcPrepData::quality
Quality quality() const
Definition: sTgcPrepData.h:112
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.
Muon::sTgcPrepData::charge
int charge() const
Returns the bcBitMap of this PRD bit2 for Previous BC, bit1 for Current BC, bit0 for Next BC.
Definition: sTgcPrepData.h:154
Muon::sTgcPrepData::stripTimes
const std::vector< short int > & stripTimes() const
returns the list of times
Definition: sTgcPrepData.h:159
Trk::PrepRawDataUndefinedVariable
class thrown in the event of an variable not being defined.
Definition: PrepRawData.h:59
Muon::sTgcPrepData::m_time
short int m_time
Definition: sTgcPrepData.h:122
Identifier
Definition: IdentifierFieldParser.cxx:14