ATLAS Offline Software
Loading...
Searching...
No Matches
SiHitCnv_p1.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_p1::persToTrans(const SiHit_p1* persObj, SiHit* transObj,
15MsgStream &log)
16{
17 HepMcParticleLinkCnv_p1 HepMcPLCnv;
19 HepMcPLCnv.persToTrans(&(persObj->m_partLink),&link, log);
20
21 *transObj = SiHit (HepGeom::Point3D<double> (persObj->m_stX,
22 persObj->m_stY,
23 persObj->m_stZ),
24 HepGeom::Point3D<double> (persObj->m_enX,
25 persObj->m_enY,
26 persObj->m_enZ),
27 persObj->m_energyLoss,
28 persObj->m_meanTime,
29 link,
30 persObj->m_ID
31 );
32}
33
34
35void
36SiHitCnv_p1::transToPers(const SiHit* transObj, SiHit_p1* persObj,
37MsgStream &log)
38{
39// if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "SiHitCnv_p1::transToPers called " << endmsg;
40 HepMcParticleLinkCnv_p1 HepMcPLCnv;
41
42 HepGeom::Point3D<double> st = transObj->localStartPosition();
43 persObj->m_stX = st.x();
44 persObj->m_stY = st.y();
45 persObj->m_stZ = st.z();
46
47 HepGeom::Point3D<double> en = transObj->localEndPosition();
48 persObj->m_enX = en.x();
49 persObj->m_enY = en.y();
50 persObj->m_enZ = en.z();
51
52 persObj->m_energyLoss = transObj->energyLoss();
53 persObj->m_meanTime = transObj->meanTime();
54 persObj->m_ID = transObj->identify();
55 HepMcPLCnv.transToPers(&(transObj->particleLink()),&(persObj->m_partLink), log);
56}
virtual void persToTrans(const HepMcParticleLink_p1 *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_p1 *persObj, MsgStream &msg) const override
Method creating the persistent representation HepMcParticleLink_p1 from its transient representation ...
virtual void transToPers(const SiHit *transObj, SiHit_p1 *persObj, MsgStream &log)
virtual void persToTrans(const SiHit_p1 *persObj, SiHit *transObj, MsgStream &log)
float m_enX
Definition SiHit_p1.h:13
float m_energyLoss
Definition SiHit_p1.h:14
float m_stX
Definition SiHit_p1.h:12
float m_meanTime
Definition SiHit_p1.h:15
HepMcParticleLink_p1 m_partLink
Definition SiHit_p1.h:16
float m_stZ
Definition SiHit_p1.h:12
float m_enY
Definition SiHit_p1.h:13
float m_enZ
Definition SiHit_p1.h:13
float m_stY
Definition SiHit_p1.h:12
unsigned int m_ID
Definition SiHit_p1.h:17
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