ATLAS Offline Software
PRDxAODConvertorAlg.cxx
Go to the documentation of this file.
1 /*
2 Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "PRDxAODConvertorAlg.h"
13 
14 
19  ATH_CHECK(m_mmPrepRawDataKey.initialize(!m_mmPrepRawDataKey.empty()));
21 
22  ATH_CHECK(m_mdtxAODKey.initialize(!m_mdtPrepRawDataKey.empty()));
23  ATH_CHECK(m_rpcxAODKey.initialize(!m_rpcPrepRawDataKey.empty()));
24  ATH_CHECK(m_tgcxAODKey.initialize(!m_tgcPrepRawDataKey.empty()));
25  ATH_CHECK(m_mmxAODKey.initialize(!m_mmPrepRawDataKey.empty()));
26  ATH_CHECK(m_stgcStripxAODKey.initialize(!m_stgcPrepRawDataKey.empty()));
27  ATH_CHECK(m_stgcWirexAODKey.initialize(!m_stgcPrepRawDataKey.empty()));
28  ATH_CHECK(m_stgcPadxAODKey.initialize(!m_stgcPrepRawDataKey.empty()));
29 
30  ATH_CHECK(m_idHelperSvc.retrieve());
31 
32  return StatusCode::SUCCESS;
33 }
34 
35 StatusCode Muon::PRDxAODConvertorAlg::execute(const EventContext& ctx) const {
36 
37  ATH_MSG_VERBOSE("About to create trackContainer");
38 
39  ATH_CHECK((getAndFillContainer<Muon::MdtPrepDataContainer, xAOD::MdtDriftCircleContainer, xAOD::MdtDriftCircleAuxContainer > (m_mdtPrepRawDataKey, m_mdtxAODKey, ctx)));
40  ATH_CHECK((getAndFillContainer<Muon::RpcPrepDataContainer, xAOD::RpcStripContainer, xAOD::RpcStripAuxContainer > (m_rpcPrepRawDataKey, m_rpcxAODKey, ctx) ));
41  ATH_CHECK((getAndFillContainer<Muon::TgcPrepDataContainer, xAOD::TgcStripContainer, xAOD::TgcStripAuxContainer > (m_tgcPrepRawDataKey, m_tgcxAODKey, ctx) ));
42  ATH_CHECK((getAndFillContainer<Muon::MMPrepDataContainer, xAOD::MMClusterContainer, xAOD::MMClusterAuxContainer > (m_mmPrepRawDataKey, m_mmxAODKey, ctx) ));
43  ATH_CHECK((getAndFillContainer<Muon::sTgcPrepDataContainer, xAOD::sTgcStripContainer, xAOD::sTgcStripAuxContainer > (m_stgcPrepRawDataKey, m_stgcStripxAODKey, ctx)));
44  ATH_CHECK((getAndFillContainer<Muon::sTgcPrepDataContainer, xAOD::sTgcWireContainer, xAOD::sTgcWireAuxContainer > (m_stgcPrepRawDataKey, m_stgcWirexAODKey, ctx)));
45  ATH_CHECK((getAndFillContainer<Muon::sTgcPrepDataContainer, xAOD::sTgcPadContainer, xAOD::sTgcPadAuxContainer > (m_stgcPrepRawDataKey, m_stgcPadxAODKey, ctx)));
46 
47  return StatusCode::SUCCESS;
48 }
49 
50 // I *think* it's possible to not need to pass OUTTYPEAUX, but construct it from OUTTYPE.
51 template <class INTYPE, class OUTTYPE, class OUTTYPEAUX>
53  const SG::WriteHandleKey<OUTTYPE> &outKey,
54  const EventContext& ctx) const {
55  if(inKey.empty()) {
56  ATH_MSG_VERBOSE("No key configured to convert "<<typeid(INTYPE).name()<<" into xAOD objects. Skipping.");
57  return StatusCode::SUCCESS;
58  }
59 
60  SG::ReadHandle<INTYPE> handle(inKey, ctx);
61 
62  ATH_MSG_VERBOSE("Trying to load " << handle.key());
63  ATH_CHECK(handle.isValid());
64  ATH_MSG_VERBOSE("Which has " << handle->numberOfCollections()
65  << " collections: ");
66 
67  SG::WriteHandle<OUTTYPE> outputContainer(outKey, ctx);
68  ATH_CHECK( outputContainer.record (std::make_unique<OUTTYPE>(),
69  std::make_unique<OUTTYPEAUX>()) );
70  ATH_MSG_DEBUG( "Recorded xAOD container with key: " << outputContainer.key() );
71 
72  for (const auto *coll : *handle) {
73  for (const auto * prd : *coll) {
74  auto * xprd = new typename OUTTYPE::base_value_type();
75  outputContainer->push_back(xprd);
76  if (!fillxPRD(*prd, *xprd)) {
77  outputContainer->pop_back();
78  }
79  }
80  }
81 
82  return StatusCode::SUCCESS;
83 }
84 
85 // Keeping this in since it seems to compile with gcc13 and not 11 and I want to understand why.
86 // template<class PRD, class xPRD> void Muon::PRDxAODConvertorAlg::fillxPRD(
87 // const PRD& prd, xPRD& xprd) const {
88 // static_assert(false, "FillxPRD requires explicit specialization.");
89 // }
90 
92  xAOD::MdtDriftCircle& xprd) const {
93  const MdtIdHelper& id_helper{m_idHelperSvc->mdtIdHelper()};
94 
95  const Identifier prdId{prd.identify()};
97 
98  xAOD::MeasVector<1> localPosition(prd.localPosition().x());
99  xAOD::MeasMatrix<1> localCovariance{};
100  localCovariance(0, 0) = prd.localCovariance()(0, 0);
101  xprd.setMeasurement(m_idHelperSvc->detElementHash(prdId), localPosition, localCovariance);
102 
103  xprd.setTdc(prd.tdc());
104  xprd.setAdc(prd.adc());
105  xprd.setTube(id_helper.tube(prd.identify()));
106  xprd.setLayer(id_helper.tubeLayer(prd.identify()));
107  xprd.setStatus(prd.status());
108  // TODO tubePosInStation - but this needs ReadoutElement?
109  return true;
110 }
111 
113  xAOD::RpcStrip& xprd) const {
114 
115  const RpcIdHelper& idHelper{m_idHelperSvc->rpcIdHelper()};
116  const Identifier prdId{prd.identify()};
117  xprd.setIdentifier(prdId.get_identifier32().get_compact());
118 
119  xprd.setStripNumber(idHelper.strip(prdId));
120  xprd.setGasGap(idHelper.gasGap(prdId));
121  xprd.setMeasuresPhi(idHelper.measuresPhi(prdId));
122  xprd.setDoubletPhi(idHelper.doubletPhi(prdId));
123 
124  xAOD::MeasVector<1> localPosition(prd.localPosition().x());
126  localCovariance(0, 0) = prd.localCovariance()(0, 0);
127  xprd.setMeasurement(m_idHelperSvc->detElementHash(prdId), localPosition, localCovariance);
128 
129  xprd.setTime(prd.time());
130  xprd.setTriggerInfo(prd.triggerInfo());
131  xprd.setAmbiguityFlag(prd.ambiguityFlag());
133  return true;
134 }
135 
137  xAOD::TgcStrip& xprd) const {
138 
139  const TgcIdHelper& idHelper{m_idHelperSvc->tgcIdHelper()};
140  const Identifier prdId{prd.identify()};
141  xprd.setIdentifier(prdId.get_identifier32().get_compact());
142  xprd.setMeasuresPhi(idHelper.measuresPhi(prdId));
143  xprd.setGasGap(idHelper.gasGap(prdId));
144  xprd.setChannelNumber(idHelper.channel(prdId));
145  xAOD::MeasVector<1> localPosition(prd.localPosition().x());
147  localCovariance(0, 0) = prd.localCovariance()(0, 0);
148  xprd.setMeasurement(m_idHelperSvc->detElementHash(prdId), localPosition, localCovariance);
149 
150  xprd.setBcBitMap(prd.getBcBitMap());
151  return true;
152 }
153 
155  xAOD::MMCluster& xprd) const {
156 
157  const MmIdHelper& idHelper{m_idHelperSvc->mmIdHelper()};
158  const Identifier prdId{prd.identify()};
159  xprd.setIdentifier(prdId.get_identifier32().get_compact());
160  xprd.setGasGap(idHelper.gasGap(prdId));
161  xprd.setChannelNumber(idHelper.channel(prdId));
162  xAOD::MeasVector<1> localPosition(prd.localPosition().x());
164  localCovariance(0, 0) = prd.localCovariance()(0, 0);
165  xprd.setMeasurement(m_idHelperSvc->detElementHash(prdId), localPosition, localCovariance);
166 
167  xprd.setTime(prd.time());
168  xprd.setCharge(prd.charge());
169  xprd.setDriftDist(prd.driftDist());
170  xprd.setAngle(prd.angle());
171  xprd.setChiSqProb(prd.chisqProb());
172 
174  xprd.setStripDriftDist(prd.stripDriftDist());
175  xprd.setStripDriftDist(prd.stripDriftDist());
176  xprd.setStripCharges(prd.stripCharges());
177  xprd.setStripTimes(prd.stripTimes());
178  xprd.setStripNumbers(prd.stripNumbers());
179  return true;
180 }
181 
183  xAOD::sTgcStripCluster& xprd) const {
184 
185  const sTgcIdHelper& idHelper{m_idHelperSvc->stgcIdHelper()};
186  const Identifier prdId = prd.identify();
187  if (idHelper.channelType(prdId) != sTgcIdHelper::Strip) return false;
189  xAOD::MeasVector<1> localPosition(prd.localPosition().x());
191  localCovariance(0, 0) = prd.localCovariance()(0, 0);
192  xprd.setChannelNumber(idHelper.channel(prdId));
193  xprd.setGasGap(idHelper.gasGap(prdId));
194  xprd.setMeasurement(prd.collectionHash(), localPosition, localCovariance);
195  xprd.setTime(prd.time());
196  xprd.setCharge(prd.charge());
197  xprd.setAuthor(prd.author());
198  xprd.setQuality(prd.quality());
199  xprd.setStripCharges(prd.stripCharges());
200  xprd.setStripNumbers(prd.stripNumbers());
201  xprd.setStripTimes(prd.stripTimes());
202  return true;
203 }
204 
206  xAOD::sTgcWireHit& xprd) const {
207  const sTgcIdHelper& idHelper{m_idHelperSvc->stgcIdHelper()};
208  const Identifier prdId = prd.identify();
209  if (idHelper.channelType(prdId) != sTgcIdHelper::Wire) return false;
211  xAOD::MeasVector<1> localPosition(prd.localPosition().x());
213  localCovariance(0, 0) = prd.localCovariance()(0, 0);
214  xprd.setChannelNumber(idHelper.channel(prdId));
215  xprd.setGasGap(idHelper.gasGap(prdId));
216  xprd.setMeasurement(prd.collectionHash(), localPosition, localCovariance);
217  xprd.setTime(prd.time());
218  xprd.setCharge(prd.charge());
219  xprd.setAuthor(prd.author());
220  return true;
221 }
223  xAOD::sTgcPadHit& xprd) const {
224  const sTgcIdHelper& idHelper{m_idHelperSvc->stgcIdHelper()};
225  const Identifier prdId = prd.identify();
226  if (idHelper.channelType(prdId) != sTgcIdHelper::Pad) return false;
228  xAOD::MeasVector<2> localPosition{xAOD::toStorage(prd.localPosition())} ;
230  localCovariance(0, 0) = prd.localCovariance()(0, 0);
231  // localCovariance(1, 1) = prd.localCovariance()(1, 1);
232  xprd.setChannelNumber(idHelper.channel(prdId));
233  xprd.setGasGap(idHelper.gasGap(prdId));
234  xprd.setMeasurement(prd.collectionHash(), localPosition, localCovariance);
235  xprd.setTime(prd.time());
236  xprd.setCharge(prd.charge());
237  xprd.setAuthor(prd.author());
238  return true;
239 }
xAOD::MMCluster_v1::setStripTimes
void setStripTimes(const std::vector< int16_t > &stripTimes)
xAOD::MdtDriftCircle_v1::setTdc
void setTdc(int16_t tdc)
Setter methods.
Muon::MMPrepData::driftDist
float driftDist() const
Returns the Drift Distance.
Definition: MMPrepData.h:232
Muon::MMPrepData
Class to represent MM measurements.
Definition: MMPrepData.h:22
xAOD::TgcStrip_v1::setChannelNumber
void setChannelNumber(uint16_t chan)
xAOD::TgcStrip_v1::setGasGap
void setGasGap(uint8_t gapNum)
xAOD::sTgcStripCluster_v1
Definition: sTgcStripCluster_v1.h:12
xAOD::MMCluster_v1
Definition: MMCluster_v1.h:16
Muon::PRDxAODConvertorAlg::getAndFillContainer
StatusCode getAndFillContainer(const SG::ReadHandleKey< INTYPE > &inKey, const SG::WriteHandleKey< OUTTYPE > &outKey, const EventContext &) const
Definition: PRDxAODConvertorAlg.cxx:52
xAOD::sTgcStripCluster_v1::setStripNumbers
void setStripNumbers(const std::vector< uint16_t > &strips)
Set the list of individual strip clusters.
TgcIdHelper
Definition: TgcIdHelper.h:50
SG::ReadHandle
Definition: StoreGate/StoreGate/ReadHandle.h:70
xAOD::MMCluster_v1::setDriftDist
void setDriftDist(float value)
Sets the drift distance.
Muon::PRDxAODConvertorAlg::m_rpcxAODKey
SG::WriteHandleKey< xAOD::RpcStripContainer > m_rpcxAODKey
Definition: PRDxAODConvertorAlg.h:52
xAOD::RpcMeasurement_v1::setStripNumber
void setStripNumber(uint16_t strip)
Sets the associated strip number identifier field.
xAOD::TgcStrip_v1
Definition: TgcStrip_v1.h:16
xAOD::RpcMeasurement_v1::setTimeOverThreshold
void setTimeOverThreshold(float timeoverthreshold)
Sets the TDC counts.
xAOD::RpcMeasurement_v1::setDoubletPhi
void setDoubletPhi(uint8_t doubPhi)
Sets the doubletPhi identifier field.
Trk::PrepRawData::localCovariance
const Amg::MatrixX & localCovariance() const
return const ref to the error matrix
Muon::PRDxAODConvertorAlg::m_tgcPrepRawDataKey
SG::ReadHandleKey< Muon::TgcPrepDataContainer > m_tgcPrepRawDataKey
Definition: PRDxAODConvertorAlg.h:47
Muon::MuonCluster::collectionHash
virtual IdentifierHash collectionHash() const
Returns the IdentifierHash corresponding to the PRD collection in the PRD container.
Definition: MuonSpectrometer/MuonReconstruction/MuonRecEvent/MuonPrepRawData/MuonPrepRawData/MuonCluster.h:104
Muon::RpcPrepData::timeOverThreshold
float timeOverThreshold() const
Returns the time over threshold.
Definition: RpcPrepData.h:216
Muon::PRDxAODConvertorAlg::fillxPRD
bool fillxPRD(const PRD &prd, xPRD &xprd) const
xAOD::toStorage
MeasVector< N > toStorage(const AmgVector(N)&amgVec)
Converts the double precision of the AmgVector into the floating point storage precision of the MeasV...
Definition: MeasurementDefs.h:68
xAOD::MMCluster_v1::setAngle
void setAngle(float value)
Sets the microTPC angle.
xAOD::MMCluster_v1::setStripDriftErrors
void setStripDriftErrors(const std::vector< DriftCov_t > &stripDriftErrors)
sTgcIdHelper::Strip
@ Strip
Definition: sTgcIdHelper.h:190
xAOD::RpcMeasurement_v1::setAmbiguityFlag
void setAmbiguityFlag(uint8_t ambi)
Sets the ADC counts.
Muon::sTgcPrepData::author
Author author() const
Definition: sTgcPrepData.h:115
Muon::PRDxAODConvertorAlg::m_stgcStripxAODKey
SG::WriteHandleKey< xAOD::sTgcStripContainer > m_stgcStripxAODKey
Definition: PRDxAODConvertorAlg.h:55
MdtDriftCircleAuxContainer.h
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
xAOD::MMCluster_v1::setStripDriftDist
void setStripDriftDist(const std::vector< float > &stripDriftDist)
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
SG::VarHandleKey::empty
bool empty() const
Test if the key is blank.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleKey.cxx:150
Muon::MdtPrepData::adc
int adc() const
Returns the ADC (typically range is 0 to 250)
Definition: MdtPrepData.h:166
xAOD::RpcStrip_v1
Definition: RpcStrip_v1.h:11
RpcIdHelper
Definition: RpcIdHelper.h:51
xAOD::sTgcStripCluster_v1::setStripCharges
void setStripCharges(const std::vector< int > &charges)
Set the individual list of contributing charges.
Muon::MMPrepData::stripDriftErrors
const std::vector< AmgVector(2)> & stripDriftErrors() const
returns the list of drift distances
Definition: MMPrepData.h:267
Muon::MMPrepData::angle
float angle() const
Returns the microTPC angle.
Definition: MMPrepData.h:237
xAOD::MMCluster_v1::setCharge
void setCharge(uint32_t value)
Sets the calibrated charge.
Muon::PRDxAODConvertorAlg::initialize
virtual StatusCode initialize() override
Definition: PRDxAODConvertorAlg.cxx:15
Muon::RpcPrepData::time
float time() const
Returns the time.
Definition: RpcPrepData.h:197
xAOD::MdtDriftCircle_v1::setStatus
void setStatus(MdtDriftCircleStatus st)
Sets the status of the drift circle.
xAOD::MMCluster_v1::setGasGap
void setGasGap(uint8_t gap)
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
sTgcWireAuxContainer.h
xAOD::UncalibratedMeasurement_v1::setIdentifier
void setIdentifier(const DetectorIdentType measId)
Sets the full Identifier of the measurement.
Muon::MMPrepData::stripCharges
const std::vector< int > & stripCharges() const
returns the list of charges
Definition: MMPrepData.h:257
Muon::TgcPrepData::getBcBitMap
uint16_t getBcBitMap() const
Returns the bcBitMap of this PRD bit2 for Previous BC, bit1 for Current BC, bit0 for Next BC.
Definition: TgcPrepData.cxx:75
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
Identifier32::get_compact
value_type get_compact(void) const
Get the compact id.
Definition: Identifier32.h:171
MMClusterAuxContainer.h
xAOD::MdtDriftCircle_v1::setAdc
void setAdc(int16_t adc)
Sets the ADC counts.
Muon::PRDxAODConvertorAlg::m_mmPrepRawDataKey
SG::ReadHandleKey< Muon::MMPrepDataContainer > m_mmPrepRawDataKey
Definition: PRDxAODConvertorAlg.h:48
Muon::RpcPrepData
Class to represent RPC measurements.
Definition: RpcPrepData.h:35
xAOD::TgcStrip_v1::setBcBitMap
void setBcBitMap(uint16_t)
xAOD::sTgcMeasurement_v1::setAuthor
void setAuthor(Author a)
Set the author of the producing algorithm.
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
xAOD::RpcMeasurement_v1::setGasGap
void setGasGap(uint8_t gap)
Sets the associated gasGap identifier field.
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
sTgcIdHelper::Wire
@ Wire
Definition: sTgcIdHelper.h:190
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
xAOD::RpcStrip_v1::setMeasuresPhi
void setMeasuresPhi(uint8_t measPhi)
sets the measuresPhi value
xAOD::MMCluster_v1::setStripCharges
void setStripCharges(const std::vector< int > &stripCharges)
xAOD::RpcMeasurement_v1::setTriggerInfo
void setTriggerInfo(uint32_t triggerinfo)
Set the trigger info of the hit
MdtIdHelper
Definition: MdtIdHelper.h:61
Muon::PRDxAODConvertorAlg::m_mmxAODKey
SG::WriteHandleKey< xAOD::MMClusterContainer > m_mmxAODKey
Definition: PRDxAODConvertorAlg.h:54
xAOD::TgcStrip_v1::setMeasuresPhi
void setMeasuresPhi(uint8_t measPhi)
Muon::PRDxAODConvertorAlg::m_stgcWirexAODKey
SG::WriteHandleKey< xAOD::sTgcWireContainer > m_stgcWirexAODKey
Definition: PRDxAODConvertorAlg.h:56
sTgcPadAuxContainer.h
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
Muon::PRDxAODConvertorAlg::m_mdtPrepRawDataKey
SG::ReadHandleKey< Muon::MdtPrepDataContainer > m_mdtPrepRawDataKey
Definition: PRDxAODConvertorAlg.h:45
xAOD::sTgcStripCluster_v1::setQuality
void setQuality(Quality q)
Set the quality flag.
Muon::MMPrepData::stripNumbers
const std::vector< uint16_t > & stripNumbers() const
returns the list of strip numbers
Definition: MMPrepData.h:247
Muon::sTgcPrepData::time
short int time() const
Definition: sTgcPrepData.h:156
Muon::RpcPrepData::triggerInfo
int triggerInfo() const
Returns the trigger coincidence - usually false, unless ijk>5 or highpt&&ijk==0.
Definition: RpcPrepData.h:207
sTgcStripAuxContainer.h
SG::ReadHandle::isValid
virtual bool isValid() override final
Can the handle be successfully dereferenced?
Muon::MMPrepData::stripTimes
const std::vector< short int > & stripTimes() const
returns the list of times
Definition: MMPrepData.h:252
xAOD::MeasVector
Eigen::Matrix< float, N, 1 > MeasVector
Abrivation of the Matrix & Covariance definitions.
Definition: MeasurementDefs.h:52
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
Muon::PRDxAODConvertorAlg::execute
virtual StatusCode execute(const EventContext &ctx) const override
Definition: PRDxAODConvertorAlg.cxx:35
xAOD::sTgcMeasurement_v1::setChannelNumber
void setChannelNumber(uint16_t channel)
Set the channel number of the measurement.
Muon::PRDxAODConvertorAlg::m_rpcPrepRawDataKey
SG::ReadHandleKey< Muon::RpcPrepDataContainer > m_rpcPrepRawDataKey
Definition: PRDxAODConvertorAlg.h:46
Muon::MdtPrepData::tdc
int tdc() const
Returns the TDC (typically range is 0 to 2500).
Definition: MdtPrepData.h:161
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
sTgcIdHelper
Definition: sTgcIdHelper.h:55
Muon::MMPrepData::time
short int time() const
Returns the time (in ns)
Definition: MMPrepData.h:222
Muon::MdtPrepData
Class to represent measurements from the Monitored Drift Tubes.
Definition: MdtPrepData.h:37
SG::VarHandleBase::key
virtual const std::string & key() const override final
Return the StoreGate ID for the referenced object.
Definition: AthToolSupport/AsgDataHandles/Root/VarHandleBase.cxx:64
xAOD::RpcMeasurement_v1::setTime
void setTime(float time)
Sets the the triger time of the hit.
Muon::PRDxAODConvertorAlg::m_mdtxAODKey
SG::WriteHandleKey< xAOD::MdtDriftCircleContainer > m_mdtxAODKey
Definition: PRDxAODConvertorAlg.h:51
xAOD::MMCluster_v1::setChiSqProb
void setChiSqProb(float value)
Sets the microTPC chisq probability.
Muon::PRDxAODConvertorAlg::m_idHelperSvc
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
Definition: PRDxAODConvertorAlg.h:61
SG::WriteHandle
Definition: StoreGate/StoreGate/WriteHandle.h:76
Muon::PRDxAODConvertorAlg::m_stgcPadxAODKey
SG::WriteHandleKey< xAOD::sTgcPadContainer > m_stgcPadxAODKey
Definition: PRDxAODConvertorAlg.h:57
Muon::PRDxAODConvertorAlg::m_stgcPrepRawDataKey
SG::ReadHandleKey< Muon::sTgcPrepDataContainer > m_stgcPrepRawDataKey
Definition: PRDxAODConvertorAlg.h:49
PRDxAODConvertorAlg.h
xAOD::UncalibratedMeasurement_v1::setMeasurement
void setMeasurement(const DetectorIDHashType idHash, MeasVector< N > locPos, MeasMatrix< N > locCov)
Sets IdentifierHash, local position and local covariance of the measurement.
MmIdHelper
Definition: MmIdHelper.h:54
SG::WriteHandle::record
StatusCode record(std::unique_ptr< T > data)
Record a const object to the store.
sTgcIdHelper::Pad
@ Pad
Definition: sTgcIdHelper.h:190
xAOD::sTgcPadHit_v1
Definition: sTgcPadHit_v1.h:11
Muon::TgcPrepData
Class to represent TGC measurements.
Definition: TgcPrepData.h:32
xAOD::sTgcStripCluster_v1::setStripTimes
void setStripTimes(const std::vector< short int > &times)
Set the list of indivual strip times.
xAOD::MdtDriftCircle_v1::setLayer
void setLayer(uint8_t layer_n)
Sets the layer number.
xAOD::MMCluster_v1::setTime
void setTime(uint16_t value)
Sets the TDC counts.
xAOD::sTgcMeasurement_v1::setTime
void setTime(short int t)
: Set the calibrated time of the wire measurement
xAOD::sTgcMeasurement_v1::setCharge
void setCharge(int q)
: Set the collected charge on the wire
xAOD::MeasMatrix
Eigen::Matrix< float, N, N > MeasMatrix
Definition: MeasurementDefs.h:54
xAOD::sTgcMeasurement_v1::setGasGap
void setGasGap(uint8_t gap)
Set the associated gas gap of the measurement.
xAOD::MdtDriftCircle_v1
https://gitlab.cern.ch/atlas/athena/-/blob/master/MuonSpectrometer/MuonReconstruction/MuonRecEvent/Mu...
Definition: MdtDriftCircle_v1.h:18
Identifier::get_identifier32
Identifier32 get_identifier32(void) const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
xAOD::MMCluster_v1::setStripNumbers
void setStripNumbers(const std::vector< uint16_t > &stripNumbers)
Muon::MdtPrepData::status
MdtDriftCircleStatus status() const
Returns the status of the measurement.
Definition: MdtPrepData.h:171
Muon::MMPrepData::stripDriftDist
const std::vector< float > & stripDriftDist() const
returns the list of drift distances
Definition: MMPrepData.h:262
Muon::RpcPrepData::ambiguityFlag
int ambiguityFlag() const
Returns the number of ambiguities associated with this RpcPrepData.
Definition: RpcPrepData.h:212
Muon::MMPrepData::charge
int charge() const
Returns the AD.
Definition: MMPrepData.h:227
RpcStripAuxContainer.h
Muon::sTgcPrepData
Class to represent sTgc measurements.
Definition: sTgcPrepData.h:20
Muon::sTgcPrepData::quality
Quality quality() const
Definition: sTgcPrepData.h:112
xAOD::sTgcWireHit_v1
Definition: sTgcWireHit_v1.h:11
Muon::PRDxAODConvertorAlg::m_tgcxAODKey
SG::WriteHandleKey< xAOD::TgcStripContainer > m_tgcxAODKey
Definition: PRDxAODConvertorAlg.h:53
TgcStripAuxContainer.h
Muon::MMPrepData::chisqProb
float chisqProb() const
Returns the microTPC chisq Prob.
Definition: MMPrepData.h:242
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
xAOD::MMCluster_v1::setChannelNumber
void setChannelNumber(uint16_t strip)
Muon::sTgcPrepData::stripTimes
const std::vector< short int > & stripTimes() const
returns the list of times
Definition: sTgcPrepData.h:159
xAOD::MdtDriftCircle_v1::setTube
void setTube(uint16_t tube_n)
Sets the tube number.