ATLAS Offline Software
Loading...
Searching...
No Matches
TrigL2BphysCnv_p3.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3*/
4
8
10
11//-----------------------------------------------------------------------------
12// Persistent to transient
13//-----------------------------------------------------------------------------
15 TrigL2Bphys *transObj,
16 MsgStream &log )
17{
18 log << MSG::DEBUG << "TrigL2BphysCnv_p3::persToTrans called " << endmsg;
19
20
22 m_elementLinkL2BphysCnv.persToTrans(&persObj->m_secondaryDecay, &secondaryDecay, log);
23
24 *transObj = TrigL2Bphys (persObj->m_allInts[0], // roiID
25 persObj->m_allFloats[0], // eta
26 persObj->m_allFloats[1], // phi
27 static_cast<TrigL2Bphys::pType>(persObj->m_allInts[1]), // particleType
28 persObj->m_allFloats[2], // mass
29 secondaryDecay);
30
31 transObj->fitndof (persObj->m_allInts[2]);
32 transObj->fitmass (persObj->m_allFloats[3]);
33 transObj->fitchi2 (persObj->m_allFloats[4]);
34 transObj->fitx (persObj->m_allFloats[5]);
35 transObj->fity (persObj->m_allFloats[6]);
36 transObj->fitz (persObj->m_allFloats[7]);
37
39 trackELVCnv.persToTrans(&persObj->m_trackVector, &trackVector, log);
40 for (const ElementLink<TrigInDetTrackCollection> el : trackVector)
41 transObj->addTrack (el);
42}
43
44//-----------------------------------------------------------------------------
45// Transient to persistent
46//-----------------------------------------------------------------------------
48 TrigL2Bphys_p3 *persObj,
49 MsgStream &log )
50{
51 log << MSG::DEBUG << "TrigL2BphysCnv_p3::transToPers called " << endmsg;
52
53 persObj->m_allInts[0] = transObj->roiId() ;
54 persObj->m_allInts[1] = transObj->particleType();
55 persObj->m_allInts[2] = transObj->fitndof() ;
56
57 persObj->m_allFloats[0] = transObj->eta() ;
58 persObj->m_allFloats[1] = transObj->phi() ;
59 persObj->m_allFloats[2] = transObj->mass() ;
60 persObj->m_allFloats[3] = transObj->fitmass() ;
61 persObj->m_allFloats[4] = transObj->fitchi2() ;
62 persObj->m_allFloats[5] = transObj->fitx() ;
63 persObj->m_allFloats[6] = transObj->fity() ;
64 persObj->m_allFloats[7] = transObj->fitz() ;
65
66 trackELVCnv.transToPers(&transObj->trackVector(), &persObj->m_trackVector, log);
67
68 m_elementLinkL2BphysCnv.transToPers(&transObj->secondaryDecayLink(), &persObj->m_secondaryDecay, log);
69}
#define endmsg
static const ElementLinkVectorCnv_p1< ElementLinkVector< Rec::TrackParticleContainer > > trackELVCnv
ElementLinkVector implementation for standalone ROOT.
ElementLinkCnv_p3< ElementLink< TrigL2BphysContainer > > m_elementLinkL2BphysCnv
virtual void transToPers(const TrigL2Bphys *transObj, TrigL2Bphys_p3 *persObj, MsgStream &log)
virtual void persToTrans(const TrigL2Bphys_p3 *persObj, TrigL2Bphys *transObj, MsgStream &log)
float m_allFloats[8]
ElementLinkInt_p3 m_secondaryDecay
ElementLinkIntVector_p1 m_trackVector
float fity() const
accessor method: y position of vertex
Definition TrigL2Bphys.h:84
const ElementLink< TrigL2BphysContainer > & secondaryDecayLink() const
const ElementLinkVector< TrigInDetTrackCollection > & trackVector() const
accessor method:vector of tracks used to make particle
Definition TrigL2Bphys.h:93
float fitz() const
accessor method: z position of vertex
Definition TrigL2Bphys.h:86
void addTrack(const ElementLink< TrigInDetTrackCollection > &track)
set method: add track to particle
pType particleType() const
accessor method: particle Type
Definition TrigL2Bphys.h:68
float fitx() const
accessor method: x position of vertex
Definition TrigL2Bphys.h:82
float mass() const
accessor method: mass
Definition TrigL2Bphys.h:74
float phi() const
accessor method: phi
Definition TrigL2Bphys.h:72
float eta() const
accessor method: eta
Definition TrigL2Bphys.h:70
pType
enum for different particle types
Definition TrigL2Bphys.h:47
int roiId() const
accessor method: ID of L1 RoI
Definition TrigL2Bphys.h:66
int fitndof() const
accessor method: ndof from vertex fit
Definition TrigL2Bphys.h:80
float fitchi2() const
accessor method: chi2 from vertex fit
Definition TrigL2Bphys.h:78
float fitmass() const
accessor method: mass from vertex fit
Definition TrigL2Bphys.h:76