ATLAS Offline Software
Loading...
Searching...
No Matches
SiHitCnv_p2.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
6#include "Identifier/Identifier.h"
8
11
12
13void
14SiHitCnv_p2::persToTrans(const SiHit_p2* persObj, SiHit* transObj, MsgStream &log)
15{
16 HepMcParticleLinkCnv_p2 HepMcPLCnv;
18 HepMcPLCnv.persToTrans(&(persObj->m_partLink),&link, log);
19
20 *transObj = SiHit (HepGeom::Point3D<double> (persObj->m_stX,
21 persObj->m_stY,
22 persObj->m_stZ),
23 HepGeom::Point3D<double> (persObj->m_enX,
24 persObj->m_enY,
25 persObj->m_enZ),
26 persObj->m_energyLoss,
27 persObj->m_meanTime,
28 link,
29 persObj->m_ID
30 );
31}
32
33
34void
35SiHitCnv_p2::transToPers(const SiHit* transObj, SiHit_p2* persObj, MsgStream &log)
36{
37// if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "SiHitCnv_p2::transToPers called " << endmsg;
38 HepMcParticleLinkCnv_p2 HepMcPLCnv;
39
40 HepGeom::Point3D<double> st = transObj->localStartPosition();
41 persObj->m_stX = st.x();
42 persObj->m_stY = st.y();
43 persObj->m_stZ = st.z();
44
45 HepGeom::Point3D<double> en = transObj->localEndPosition();
46 persObj->m_enX = en.x();
47 persObj->m_enY = en.y();
48 persObj->m_enZ = en.z();
49
50 persObj->m_energyLoss = transObj->energyLoss();
51 persObj->m_meanTime = transObj->meanTime();
52 persObj->m_ID = transObj->identify();
53 HepMcPLCnv.transToPers(&(transObj->particleLink()),&(persObj->m_partLink), log);
54}
virtual void persToTrans(const HepMcParticleLink_p2 *persObj, HepMcParticleLink *transObj, MsgStream &msg) const override
Method creating the transient representation of HepMcParticleLink from its persistent representation ...
virtual void transToPers(const HepMcParticleLink *transObj, HepMcParticleLink_p2 *persObj, MsgStream &msg) const override
Method creating the persistent representation HepMcParticleLink_p2 from its transient representation ...
virtual void transToPers(const SiHit *transObj, SiHit_p2 *persObj, MsgStream &log)
virtual void persToTrans(const SiHit_p2 *persObj, SiHit *transObj, MsgStream &log)
float m_stX
Definition SiHit_p2.h:12
float m_stY
Definition SiHit_p2.h:12
float m_energyLoss
Definition SiHit_p2.h:14
float m_enX
Definition SiHit_p2.h:13
unsigned int m_ID
Definition SiHit_p2.h:17
float m_meanTime
Definition SiHit_p2.h:15
HepMcParticleLink_p2 m_partLink
Definition SiHit_p2.h:16
float m_stZ
Definition SiHit_p2.h:12
float m_enY
Definition SiHit_p2.h:13
float m_enZ
Definition SiHit_p2.h:13
Definition SiHit.h:19
double energyLoss() const
Definition SiHit.h:175
HepGeom::Point3D< double > localStartPosition() const
Definition SiHit.cxx:146
unsigned int identify() const
Definition SiHit.h:170
double meanTime() const
Definition SiHit.h:180
const HepMcParticleLink & particleLink() const
Definition SiHit.h:190
HepGeom::Point3D< double > localEndPosition() const
Definition SiHit.cxx:153