ATLAS Offline Software
Loading...
Searching...
No Matches
RpcPrepDataCnv_p3.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3*/
4
5//-----------------------------------------------------------------------------
6//
7// file: RpcPrepDataCnv_p3.cxx
8//
9//-----------------------------------------------------------------------------
10
13
17 const Identifier& id,
18 const MuonGM::RpcReadoutElement* detEl,
19 MsgStream & )
20{
21 Amg::Vector2D localPos;
22 localPos[Trk::locX] = persObj->m_locX;
23 localPos[Trk::locY] = 0.0;
24
25 std::vector<Identifier> rdoList(1);
26 rdoList[0]=id;
27
28 auto cmat = Amg::MatrixX(1,1);
29 cmat(0,0) = static_cast<double>(persObj->m_errorMat);
30
32 0, // collectionHash
33 localPos,
34 rdoList,
35 cmat,
36 detEl,
37 persObj->m_time,
38 persObj->m_triggerInfo,
39 persObj->m_ambiguityFlag);
40 return data;
41}
42
44persToTrans( const Muon::RpcPrepData_p3 *persObj, Muon::RpcPrepData *transObj,MsgStream & log )
45{
46 *transObj = createRpcPrepData (persObj,
47 transObj->identify(),
48 transObj->detectorElement(),
49 log);
50}
51
53transToPers( const Muon::RpcPrepData *transObj, Muon::RpcPrepData_p3 *persObj, MsgStream & )
54{
55 //log << MSG::DEBUG << "RpcPrepDataCnv_p3::transToPers" << endmsg;
56 persObj->m_locX = transObj->localPosition()[Trk::locX];
57 persObj->m_errorMat = transObj->localCovariance()(0,0);
58
59 //RpcPrepData - specific
60 persObj->m_time = transObj->time();
61 persObj->m_triggerInfo = transObj->triggerInfo();
62 persObj->m_ambiguityFlag = transObj->ambiguityFlag();
63}
64
65
char data[hepevt_bytes_allocation_ATLAS]
Definition HepEvt.cxx:11
An RpcReadoutElement corresponds to a single RPC module; therefore typicaly a barrel muon station con...
We don't write out (from Trk::PrepRawData) m_indexAndHash (can be recomputed), m_clusId (can be recom...
float m_errorMat
1-d ErrorMatrix in the base class.
float m_locX
Equivalent to localPosition (locX) in the base class.
Class to represent RPC measurements.
Definition RpcPrepData.h:35
virtual const MuonGM::RpcReadoutElement * detectorElement() const override final
Returns the detector element corresponding to this PRD.
int triggerInfo() const
Returns the trigger coincidence - usually false, unless ijk>5 or highpt&&ijk==0.
int ambiguityFlag() const
Returns the number of ambiguities associated with this RpcPrepData.
float time() const
Returns the time.
void transToPers(const Muon::RpcPrepData *transObj, Muon::RpcPrepData_p3 *persObj, MsgStream &log)
void persToTrans(const Muon::RpcPrepData_p3 *persObj, Muon::RpcPrepData *transObj, MsgStream &log)
static Muon::RpcPrepData createRpcPrepData(const Muon::RpcPrepData_p3 *persObj, const Identifier &id, const MuonGM::RpcReadoutElement *detEl, MsgStream &log)
const Amg::Vector2D & localPosition() const
return the local position reference
Identifier identify() const
return the identifier
const Amg::MatrixX & localCovariance() const
return const ref to the error matrix
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
Eigen::Matrix< double, 2, 1 > Vector2D
@ locY
local cartesian
Definition ParamDefs.h:38
@ locX
Definition ParamDefs.h:37