ATLAS Offline Software
Loading...
Searching...
No Matches
TriggerTowerCnv_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/*
17TriggerTowerCnv_p1::TriggerTowerCnv_p1()
18 : T_AthenaPoolTPCnvBase< TriggerTower, TriggerTower_p1 >() {
19
20}
21*/
22
23void TriggerTowerCnv_p1::persToTrans( const TriggerTower_p1* persObj, TriggerTower* transObj, MsgStream &log ) {
24
25 //log << MSG::INFO << "Converting TriggerTower from persistent state..." << endmsg;
26
27 //transObj->clear(); // see if I actually need one of these
28
29 //
30 // Translate the TriggerTower
31 //
32 *transObj = TriggerTower (persObj->m_phi,
33 persObj->m_eta,
34 persObj->m_key,
35 persObj->m_em_adc,
36 persObj->m_em_energy,
37 persObj->m_em_extBCID,
38 persObj->m_em_BCID,
39 persObj->m_em_error,
40 persObj->m_em_peak,
41 persObj->m_em_adc_peak,
42 persObj->m_had_adc,
43 persObj->m_had_energy,
44 persObj->m_had_extBCID,
45 persObj->m_had_BCID,
46 persObj->m_had_error,
47 persObj->m_had_peak,
48 persObj->m_had_adc_peak);
49
50 if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "Converted TriggerTower from persistent state [OK]" << endmsg;
51
52 return;
53
54}
55
56void TriggerTowerCnv_p1::transToPers( const TriggerTower* transObj, TriggerTower_p1* persObj, MsgStream &log ) {
57
58 //log << MSG::INFO << "Creating persistent state of TriggerTower..." << endmsg;
59
60 persObj->m_em_energy = transObj->emLUT();
61 persObj->m_had_energy = transObj->hadLUT();
62 persObj->m_em_adc = transObj->emADC();
63 persObj->m_had_adc = transObj->hadADC();
64 persObj->m_em_BCID = transObj->emBCIDvec();
65 persObj->m_had_BCID = transObj->hadBCIDvec();
66 persObj->m_em_extBCID = transObj->emBCIDext();
67 persObj->m_had_extBCID = transObj->hadBCIDext();
68 persObj->m_phi = transObj->phi();
69 persObj->m_eta = transObj->eta();
70 persObj->m_key = transObj->key();
71 persObj->m_em_error = transObj->emError();
72 persObj->m_had_error = transObj->hadError();
73 persObj->m_em_peak = transObj->emPeak();
74 persObj->m_em_adc_peak = transObj->emADCPeak();
75 persObj->m_had_peak = transObj->hadPeak();
76 persObj->m_had_adc_peak = transObj->hadADCPeak();
77
78 if (log.level() <= MSG::DEBUG) log << MSG::DEBUG << "Created persistent state of TriggerTower [OK]" << endmsg;
79
80 return;
81
82}
#define endmsg
Trigger towers are the inputs to all other parts of the calorimeter trigger.
unsigned int key() const
returns TT key - that is the key the TT had when it was created.
const std::vector< int > & emBCIDext() const
returns vector of BCID words for all EM ADC samples
const std::vector< int > & emLUT() const
return references to the vectors containing the final calubrated ET values.
const std::vector< int > & emBCIDvec() const
returns vector of BCID words for all EM LUT samples
const std::vector< int > & hadBCIDvec() const
returns vector of BCID words for all Had LUT samples
int emPeak() const
return peak positions in LUT and ADC vectors
const std::vector< int > & hadADC() const
returns had adc digits
const std::vector< int > & emADC() const
return references to the vectors containing the ADC digits
const std::vector< int > & hadLUT() const
returns had LUT ET
const std::vector< int > & hadBCIDext() const
returns vector of BCID words for all Had ADC samples
virtual void transToPers(const LVL1::TriggerTower *transObj, TriggerTower_p1 *persObj, MsgStream &log)
virtual void persToTrans(const TriggerTower_p1 *persObj, LVL1::TriggerTower *transObj, MsgStream &log)
Persistent form of TriggerTower using T/P separation.
std::vector< int > m_em_extBCID
std::vector< int > m_had_extBCID
std::vector< int > m_had_adc
std::vector< int > m_em_energy
Internal data.
std::vector< int > m_had_BCID
std::vector< int > m_em_adc
std::vector< int > m_had_energy
std::vector< int > m_em_BCID
unsigned int m_key
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...