ATLAS Offline Software
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 
Muon::RpcClusterOnTrack::detectorElement
virtual const MuonGM::RpcReadoutElement * detectorElement() const override final
Returns the detector element, assoicated with the PRD of this class.
Definition: RpcClusterOnTrack.h:138
Trk::LocalParameters
Definition: LocalParameters.h:98
Trk::PlaneSurface::globalToLocal
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...
Definition: PlaneSurface.cxx:213
Trk::locX
@ locX
Definition: ParamDefs.h:37
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
RpcClusterOnTrackCnv_p1::m_RIOCnv
RIO_OnTrackCnv_p1 * m_RIOCnv
Definition: RpcClusterOnTrackCnv_p1.h:42
RpcClusterOnTrackCnv_p1::persToTrans
void persToTrans(const Muon ::RpcClusterOnTrack_p1 *persObj, Muon ::RpcClusterOnTrack *transObj, MsgStream &log)
Definition: RpcClusterOnTrackCnv_p1.cxx:17
MuonGM::RpcReadoutElement
An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station con...
Definition: MuonDetDescr/MuonReadoutGeometry/MuonReadoutGeometry/RpcReadoutElement.h:55
Muon::RpcClusterOnTrack
Class to represent calibrated clusters formed from RPC strips.
Definition: RpcClusterOnTrack.h:35
Muon::RpcClusterOnTrack_p1::m_prdLink
ElementLinkInt_p1 m_prdLink
Link to PRD.
Definition: RpcClusterOnTrack_p1.h:29
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
ITPConverterFor< TRANS_BASE >::fillTransFromPStore
void fillTransFromPStore(CNV **cnv, const TPObjRef &ref, TRANS_T *trans, MsgStream &log) const
Convert persistent object, stored in the the top-level persistent object and referenced by the TP Ref...
Definition: TPConverter.h:145
Trk::DefinedParameter
std::pair< double, ParamDefs > DefinedParameter
Definition: DefinedParameter.h:27
RpcClusterOnTrackCnv_p1.h
RpcClusterOnTrackCnv_p1::m_elCnv
ElementLinkCnv_p1< ElementLinkToIDC_RPC_Container > m_elCnv
Definition: RpcClusterOnTrackCnv_p1.h:43
Muon::RpcClusterOnTrack_p1
Version 1 of the persistent class representing the transient class Muon::RpcClusterOnTrack.
Definition: RpcClusterOnTrack_p1.h:21
GeoPrimitives.h
Muon::RpcClusterOnTrack::m_rio
ElementLinkToIDC_RPC_Container m_rio
PrepRawData object assoicated with this measurement.
Definition: RpcClusterOnTrack.h:108
RpcClusterOnTrack.h
Muon::RpcClusterOnTrack_p1::m_positionAlongStrip
float m_positionAlongStrip
position along strip (double in transient world)
Definition: RpcClusterOnTrack_p1.h:32
Muon::RpcClusterOnTrack_p1::m_RIO
TPObjRef m_RIO
Definition: RpcClusterOnTrack_p1.h:26
Trk::MeasurementBase::m_localParams
LocalParameters m_localParams
Definition: MeasurementBase.h:111
MuonGM::RpcReadoutElement::stripPos
Amg::Vector3D stripPos(const Identifier &id) const
Definition: MuonDetDescr/MuonReadoutGeometry/src/RpcReadoutElement.cxx:177
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
Trk::RIO_OnTrack::identify
Identifier identify() const
return the identifier -extends MeasurementBase
Definition: RIO_OnTrack.h:152
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
RpcClusterOnTrackCnv_p1::transToPers
void transToPers(const Muon ::RpcClusterOnTrack *transObj, Muon ::RpcClusterOnTrack_p1 *persObj, MsgStream &log)
Definition: RpcClusterOnTrackCnv_p1.cxx:41
Muon::MuonClusterOnTrack::m_positionAlongStrip
double m_positionAlongStrip
The position along the strip - used to calculate the GlobalPosition.
Definition: MuonClusterOnTrack.h:97