ATLAS Offline Software
Loading...
Searching...
No Matches
JetElementCnv_p1.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
6
7
8// Gaudi/Athena include(s):
9#include "GaudiKernel/MsgStream.h"
10
11// Local include(s):
13
14using namespace LVL1;
15
16/*
17JetElementCnv_p1::JetElementCnv_p1()
18 : T_AthenaPoolTPCnvBase< JetElement, JetElement_p1 >() {
19
20}
21*/
22
23void JetElementCnv_p1::persToTrans( const JetElement_p1* persObj, JetElement* transObj, MsgStream &log ) {
24
25 if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "Converting JetElement from persistent state..." << endmsg;
26
27 //
28 // Translate the JetElement
29 //
30 *transObj = JetElement (persObj->m_phi,
31 persObj->m_eta,
32 persObj->m_emEnergy,
33 persObj->m_hadEnergy,
34 persObj->m_key,
35 persObj->m_em_error,
36 persObj->m_had_error,
37 persObj->m_link_error,
38 persObj->m_peak);
39
40 if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "Converted JetElement from persistent state [OK]" << endmsg;
41
42 return;
43
44}
45
46void JetElementCnv_p1::transToPers( const JetElement* transObj, JetElement_p1* persObj, MsgStream &log ) {
47
48 if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "Creating persistent state of JetElement..." << endmsg;
49
50 persObj->m_eta = transObj->eta();
51 persObj->m_phi = transObj->phi();
52 persObj->m_key = transObj->key();
53 persObj->m_peak = transObj->peak();
54 persObj->m_emEnergy = transObj->emEnergyVec();
55 persObj->m_hadEnergy = transObj->hadEnergyVec();
56 persObj->m_em_error = transObj->emErrorVec();
57 persObj->m_had_error = transObj->hadErrorVec();
58 persObj->m_link_error = transObj->linkErrorVec();
59
60 if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "Created persistent state of JetElement [OK]" << endmsg;
61
62 return;
63
64}
#define endmsg
virtual void persToTrans(const JetElement_p1 *persObj, LVL1::JetElement *transObj, MsgStream &log)
virtual void transToPers(const LVL1::JetElement *transObj, JetElement_p1 *persObj, MsgStream &log)
Persistent form of JetElement using T/P separation.
std::vector< int > m_link_error
double m_phi
Internal data.
std::vector< int > m_hadEnergy
unsigned int m_key
std::vector< int > m_had_error
std::vector< int > m_emEnergy
std::vector< int > m_em_error
Jet elements are the inputs to the Jet, ETmiss and ETsum triggers.
double eta() const
Eta of centre of JetElement.
const std::vector< int > & hadEnergyVec() const
return Had energy vector reference (all timeslices)
double phi() const
Phi of centre of JetElement.
const std::vector< int > & linkErrorVec() const
return link error vector reference (all timeslices)
const std::vector< int > & emErrorVec() const
return Em error vector reference (all timeslices)
int peak() const
return triggered slice offset
const std::vector< int > & hadErrorVec() const
return Had error vector reference (all timeslices)
unsigned int key() const
Error codes and utility information.
const std::vector< int > & emEnergyVec() const
Return data for all slices.
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...