ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigCaloEventTPCnv
src
TrigEMClusterCnv_p4.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
TrigCaloEvent/TrigEMCluster.h
"
6
#include "
TrigCaloEventTPCnv/TrigEMCluster_p4.h
"
7
#include "
TrigCaloEventTPCnv/TrigEMClusterCnv_p4.h
"
8
#include "AthLinks/ElementLink.h"
9
#include "
TrigCaloEvent/RingerRingsContainer.h
"
10
#include "
DataModelAthenaPool/ElementLinkCnv_p3.h
"
11
#include "
TrigCaloEventTPCnv/TrigCaloClusterCnv_p2.h
"
12
13
static
const
ElementLinkCnv_p3< ElementLink<RingerRingsContainer>
>
ELinkRingerRingsCnv
;
14
static
const
TrigCaloClusterCnv_p2
trigCaloClusterCnv
;
15
16
void
TrigEMClusterCnv_p4::transToPers
(
const
TrigEMCluster
*
trans
,
17
TrigEMCluster_p4
* pers, MsgStream &log )
const
18
{
19
20
log << MSG::DEBUG <<
"TrigEMClusterCnv_p4::tranToPers"
<<
endmsg
;
21
22
if
( (!
trans
) || (!pers) ) {
23
log << MSG::ERROR <<
"TrigEMClusterCnv_p4::trasnToPers with trans or pers == 0"
<<
endmsg
;
24
return
;
25
}
26
27
pers->
m_allFloats
[0] =
trans
->energy();
28
pers->
m_allFloats
[1] =
trans
->et();
29
pers->
m_allFloats
[2] =
trans
->eta();
30
pers->
m_allFloats
[3] =
trans
->phi();
31
pers->
m_allFloats
[4] =
trans
->e237();
32
pers->
m_allFloats
[5] =
trans
->e277();
33
pers->
m_allFloats
[6] =
trans
->fracs1();
34
pers->
m_allFloats
[7] =
trans
->weta2();
35
pers->
m_allFloats
[8] =
trans
->ehad1();
36
pers->
m_allFloats
[9] =
trans
->Eta1();
37
pers->
m_allFloats
[10] =
trans
->emaxs1();
38
pers->
m_allFloats
[11] =
trans
->e2tsts1();
39
pers->
m_allFloats
[12] =
trans
->e233();
40
pers->
m_allFloats
[13] =
trans
->wstot();
41
for
(
int
i=0; i<
MAXSIZE
; i++){
42
pers->
m_allFloats
[14+i] =
trans
->energy((
CaloSampling::CaloSample
)i);
43
}
44
45
ELinkRingerRingsCnv
.transToPers(&
trans
->ringsLink(), &pers->
m_rings
, log);
46
trigCaloClusterCnv
.transToPers(
trans
, &pers->
m_trigCaloCluster
, log);
47
// pers->m_trigCaloCluster = baseToPersistent( &m_trigCaloClusterCnv, trans, log );
48
}
49
50
void
TrigEMClusterCnv_p4::persToTrans
(
const
TrigEMCluster_p4
* pers,
51
TrigEMCluster
*
trans
, MsgStream &log )
const
52
{
53
54
log << MSG::DEBUG <<
"TrigEMClusterCnv_p4::persToTrans"
<<
endmsg
;
55
56
if
( (!
trans
) || (!pers) ) {
57
log << MSG::ERROR <<
"TrigEMClusterCnv_p4::persToTrans with trans or pers == 0"
<<
endmsg
;
58
return
;
59
}
60
61
// See that the order of the stored object is not the same as previously
62
trans
->setEnergy (pers->
m_allFloats
[0]);
63
trans
->setEt (pers->
m_allFloats
[1]);
64
trans
->setEta (pers->
m_allFloats
[2]);
65
trans
->setPhi (pers->
m_allFloats
[3]);
66
trans
->set_e237 (pers->
m_allFloats
[4]);
67
trans
->set_e277 (pers->
m_allFloats
[5]);
68
trans
->set_fracs1 (pers->
m_allFloats
[6]);
69
trans
->set_weta2 (pers->
m_allFloats
[7]);
70
trans
->set_ehad1 (pers->
m_allFloats
[8]);
71
trans
->set_Eta1 (pers->
m_allFloats
[9]);
72
trans
->set_emaxs1 (pers->
m_allFloats
[10]);
73
trans
->set_e2tsts1 (pers->
m_allFloats
[11]);
74
trans
->set_e233 (pers->
m_allFloats
[12]);
75
trans
->set_wstot (pers->
m_allFloats
[13]);
76
for
(
int
i=0; i<
MAXSIZE
; i++){
77
trans
->setEnergy ((
CaloSampling::CaloSample
)i, pers->
m_allFloats
[14+i]);
78
}
79
80
/* trans->m_Energy = pers->m_Energy;
81
trans->m_Et = pers->m_Et;
82
for(int i=0; i<MAXSIZE; i++){
83
trans->m_EnergyS[i] = pers->m_EnergyS[i];
84
}
85
trans->m_Eta = pers->m_Eta;
86
trans->m_Phi = pers->m_Phi;
87
trans->m_e237 = pers->m_e237;
88
trans->m_e277 = pers->m_e277;
89
trans->m_fracs1 = pers->m_fracs1;
90
trans->m_weta2 = pers->m_weta2;
91
trans->m_ehad1 = pers->m_ehad1;
92
trans->m_Eta1 = pers->m_Eta1;
93
trans->m_emaxs1 = pers->m_emaxs1;
94
trans->m_e2tsts1 = pers->m_e2tsts1; */
95
96
ElementLink<RingerRingsContainer>
ringsLink;
97
ELinkRingerRingsCnv
.persToTrans(&pers->
m_rings
, &ringsLink, log);
98
trans
->setRings (ringsLink);
99
trigCaloClusterCnv
.persToTrans(&pers->
m_trigCaloCluster
,
trans
, log);
100
// fillTransFromPStore( &m_trigCaloClusterCnv, pers->m_trigCaloCluster, trans, log );
101
102
}
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
ElementLinkCnv_p3.h
This file contains the class definition for the ElementLinkCnv_p3 class.
RingerRingsContainer.h
TrigCaloClusterCnv_p2.h
ELinkRingerRingsCnv
static const ElementLinkCnv_p3< ElementLink< RingerRingsContainer > > ELinkRingerRingsCnv
Definition
TrigEMClusterCnv_p3.cxx:14
trigCaloClusterCnv
static const TrigCaloClusterCnv_p2 trigCaloClusterCnv
Definition
TrigEMClusterCnv_p3.cxx:15
TrigEMClusterCnv_p4.h
TrigEMCluster_p4.h
MAXSIZE
const int MAXSIZE
Definition
Trigger/TrigEvent/TrigCaloEvent/TrigCaloEvent/TrigCaloCluster.h:36
TrigEMCluster.h
CaloSampling::CaloSample
CaloSample
Definition
Calorimeter/CaloGeoHelpers/CaloGeoHelpers/CaloSampling.h:22
ElementLinkCnv_p3
Definition
ElementLinkCnv_p3.h:27
ElementLink
ElementLink implementation for ROOT usage.
Definition
A/AthLinks/ElementLink.h:40
TrigCaloClusterCnv_p2
Definition
TrigCaloClusterCnv_p2.h:28
TrigEMClusterCnv_p4::persToTrans
virtual void persToTrans(const TrigEMCluster_p4 *persObj, TrigEMCluster *transObj, MsgStream &log) const override
Definition
TrigEMClusterCnv_p4.cxx:50
TrigEMClusterCnv_p4::ELinkRingerRingsCnv
ElementLinkCnv_p3< ElementLink< RingerRingsContainer > > ELinkRingerRingsCnv
Definition
TrigEMClusterCnv_p4.h:48
TrigEMClusterCnv_p4::transToPers
virtual void transToPers(const TrigEMCluster *transObj, TrigEMCluster_p4 *persObj, MsgStream &log) const override
Definition
TrigEMClusterCnv_p4.cxx:16
TrigEMCluster_p4
Definition
TrigEMCluster_p4.h:23
TrigEMCluster_p4::m_trigCaloCluster
TrigCaloCluster_p2 m_trigCaloCluster
Definition
TrigEMCluster_p4.h:54
TrigEMCluster_p4::m_rings
ElementLinkInt_p3 m_rings
Definition
TrigEMCluster_p4.h:56
TrigEMCluster_p4::m_allFloats
float m_allFloats[14+MAXSIZE]
Definition
TrigEMCluster_p4.h:51
TrigEMCluster
Class with calibrated variables for egamma clustering.
Definition
Trigger/TrigEvent/TrigCaloEvent/TrigCaloEvent/TrigEMCluster.h:31
trans
TH1F * trans(TH1F *h, bool t=false)
Definition
comparitor.cxx:199
Generated on
for ATLAS Offline Software by
1.17.0