ATLAS Offline Software
Loading...
Searching...
No Matches
RpcClusterOnTrackCnv_p1.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
5//-----------------------------------------------------------------------------
6//
7// file: RpcClusterOnTrackCnv_p1.cxx
8//
9//-----------------------------------------------------------------------------
10
14
15
18 Muon::RpcClusterOnTrack *transObj, MsgStream &log )
19{
20 fillTransFromPStore( &m_RIOCnv, persObj->m_RIO, transObj, log );
21 m_elCnv.persToTrans(&persObj->m_prdLink,&transObj->m_rio,log);
22 transObj->m_positionAlongStrip = persObj->m_positionAlongStrip;
23
24 // check to handle cases explained in bug#56227
25
26 const MuonGM::RpcReadoutElement * de = transObj->detectorElement();
27
28 // okay, so this was originally on a large surface and needs correcting.
29 const Amg::Vector3D globalposHIT = de->stripPos( transObj->identify() );
30 Amg::Vector2D tmpLocal;
31 if (!de->surface( transObj->identify() ).globalToLocal(globalposHIT,globalposHIT,tmpLocal))
32 throw std::runtime_error("RpcClusterOnTrackCnv_p1 - couldn't globalToLocal to surface");
33
35 transObj->m_localParams = Trk::LocalParameters(xPar);
36
37}
38
39
42 Muon::RpcClusterOnTrack_p1 *, MsgStream & )
43{
44 throw std::runtime_error("RpcClusterOnTrackCnv_p1::transToPers is deprecated!");
45}
46
47
void fillTransFromPStore(CNV **cnv, const TPObjRef &ref, TRANS_T *trans, MsgStream &log) const
virtual const Trk::PlaneSurface & surface() const override
access to chamber surface (phi orientation), uses the first gas gap
An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station con...
double m_positionAlongStrip
The position along the strip - used to calculate the GlobalPosition.
Version 1 of the persistent class representing the transient class Muon::RpcClusterOnTrack.
float m_positionAlongStrip
position along strip (double in transient world)
ElementLinkInt_p1 m_prdLink
Link to PRD.
Class to represent calibrated clusters formed from RPC strips.
ElementLinkToIDC_RPC_Container m_rio
PrepRawData object assoicated with this measurement.
virtual const MuonGM::RpcReadoutElement * detectorElement() const override final
Returns the detector element, assoicated with the PRD of this class.
void transToPers(const Muon ::RpcClusterOnTrack *transObj, Muon ::RpcClusterOnTrack_p1 *persObj, MsgStream &log)
ElementLinkCnv_p1< ElementLinkToIDC_RPC_Container > m_elCnv
void persToTrans(const Muon ::RpcClusterOnTrack_p1 *persObj, Muon ::RpcClusterOnTrack *transObj, MsgStream &log)
LocalParameters m_localParams
virtual bool globalToLocal(const Amg::Vector3D &glob, const Amg::Vector3D &mom, Amg::Vector2D &loc) const override final
Specified for PlaneSurface: GlobalToLocal method without dynamic memory allocation - boolean checks i...
Identifier identify() const
return the identifier -extends MeasurementBase
Eigen::Matrix< double, 2, 1 > Vector2D
Eigen::Matrix< double, 3, 1 > Vector3D
@ locX
Definition ParamDefs.h:37
std::pair< double, ParamDefs > DefinedParameter
Typedef to of a std::pair<double, ParamDefs> to identify a passed-through double as a specific type o...