ATLAS Offline Software
Loading...
Searching...
No Matches
MdtTwinPrepData.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3*/
4
6// MdtTwinPrepData.h
7// Header file for class MdtTwinPrepData
9// (c) ATLAS Detector software
11// Class to implement DriftCircle for Muons in Twin Tube layers
13// Version 1.0 02/02/2009 Alex Koutsman
15
16#ifndef MUONPREPDATA_MDTTWINPREPDATA_H
17#define MUONPREPDATA_MDTTWINPREPDATA_H
18
19// Base classes
21
23
24namespace MuonGM {
26}
27
28namespace Muon
29{
30
33 {
34
36 // Public methods:
38 public:
39
40 friend class ::MdtPrepDataContainerCnv;
41
42
43 MdtTwinPrepData() = default;
44 MdtTwinPrepData(const MdtTwinPrepData &) = default;
46
47
61 const Amg::Vector2D& driftRadiusXTwin,
62 const Amg::MatrixX& errDriftRadiusXTwin,
63 const MuonGM::MdtReadoutElement* detEl,
64 const int tdc, const int adc,
65 const int tdcTwin, const int adcTwin,
67
69 virtual ~MdtTwinPrepData() = default;
70
72 const Amg::Vector3D& globalPosition() const;
73
75 int tdcTwin() const;
76
78 int adcTwin() const;
79
81 virtual MsgStream& dump( MsgStream& stream) const;
82
84 virtual std::ostream& dump( std::ostream& stream) const;
85
86 private:
88 int m_tdcTwin{0};
89
91 int m_adcTwin{0};
92 };
93
95 // Inline methods:
97
98
99 inline int MdtTwinPrepData::tdcTwin() const { return m_tdcTwin; }
100 inline int MdtTwinPrepData::adcTwin() const { return m_adcTwin; }
101
102 // return globalPosition:
104 if (!m_globalPosition){
106 .Trk::Surface::localToGlobal(localPosition())};
107 m_globalPosition.set(std::make_unique<Amg::Vector3D>(std::move(gPos)));
108 }
109 return *m_globalPosition;
110 }
111}
112
113#endif // MUONPREPDATA_MDTTWINPREPDATA_H
114
115
Create derived converter to customize the saving of identifiable container.
virtual const Trk::Surface & surface() const override final
Return surface associated with this detector element.
CxxUtils::CachedUniquePtr< const Amg::Vector3D > m_globalPosition
Global position of measurement.
int adc() const
Returns the ADC (typically range is 0 to 250)
virtual const MuonGM::MdtReadoutElement * detectorElement() const override
Returns the detector element corresponding to this PRD.
MdtDriftCircleStatus status() const
Returns the status of the measurement.
int tdc() const
Returns the TDC (typically range is 0 to 2500).
int m_adcTwin
ADC value of twin tube - typical ADC spectra can go from 0 up to 250.
MdtTwinPrepData(const MdtTwinPrepData &)=default
virtual ~MdtTwinPrepData()=default
Destructor.
int m_tdcTwin
TDC value of twin tube - typical TDC spectra can go from 0 up to 2500.
const Amg::Vector3D & globalPosition() const
Returns the global position of the hit using twin hit information.
int tdcTwin() const
Returns the TDC of twin tube(typically range is 0 to 2500).
MdtTwinPrepData & operator=(const MdtTwinPrepData &)=default
int adcTwin() const
Returns the ADC of twin tube(typically range is 0 to 250)
const Amg::Vector2D & localPosition() const
return the local position reference
Identifier identify() const
return the identifier
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 2, 1 > Vector2D
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.
MdtDriftCircleStatus
Enum to represent the 'status' of Mdt measurements e.g.
-event-from-file