ATLAS Offline Software
ForwardDetectors
LUCID
LUCID_Cnv
LUCID_EventAthenaPool
src
LUCID_DigitContainerCnv.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
LUCID_DigitContainerCnv.h
"
6
7
LUCID_DigitContainer_PERS
*
LUCID_DigitContainerCnv::createPersistent
(
LUCID_DigitContainer
* transCont) {
8
9
MsgStream
mlog
(
msgSvc
(),
"LUCID_DigitContainerCnv"
);
10
11
mlog
<<
MSG::DEBUG
<<
"In LUCID_DigitContainerCnv::createPersistent "
<<
endmsg
;
12
13
LUCID_DigitContainerCnv_p2
converter;
14
LUCID_DigitContainer_PERS
* persObj = converter.
createPersistent
(transCont,
mlog
);
15
16
return
persObj;
17
}
18
19
LUCID_DigitContainer
*
LUCID_DigitContainerCnv::createTransient
() {
20
21
MsgStream
mlog
(
msgSvc
(),
"LUCID_DigitContainer"
);
22
23
mlog
<<
MSG::DEBUG
<<
"In LUCID_DigitContainerCnv::createTransient "
<<
endmsg
;
24
25
LUCID_DigitContainerCnv_p2
converter_p2;
26
27
LUCID_DigitContainer
* trans_cont(
nullptr
);
28
29
static
const
pool::Guid
p2_guid (
"08BBB3C5-BCAE-4540-8F3A-76D873045585"
);
30
static
const
pool::Guid
p1_guid (
"681CDB46-D6D0-4C59-98C9-398B43873B50"
);
31
static
const
pool::Guid
old_guid(
"49672224-A5AB-4D4C-802E-CA0749038ECC"
);
32
33
if
(this->
compareClassGuid
(p2_guid)) {
34
35
std::unique_ptr< LUCID_DigitContainer_p2 > col_vect( this->poolReadObject< LUCID_DigitContainer_p2 >());
36
37
trans_cont = converter_p2.
createTransient
(col_vect.get(),
mlog
);
38
}
39
else
if
(this->
compareClassGuid
(p1_guid)) {
40
41
trans_cont = this->poolReadObject<LUCID_DigitContainer>();
42
}
43
else
if
(this->
compareClassGuid
(old_guid)) {
44
45
trans_cont = this->poolReadObject<LUCID_DigitContainer>();
46
}
47
else
throw
std::runtime_error(
"Unsupported persistent version of Data container"
);
48
49
return
trans_cont;
50
}
51
52
53
LUCID_DigitContainerCnv_p2
Definition:
LUCID_DigitContainerCnv_p2.h:15
LUCID_DigitContainer
Definition:
LUCID_DigitContainer.h:13
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
LUCID_DigitContainerCnv::createPersistent
virtual LUCID_DigitContainer_PERS * createPersistent(LUCID_DigitContainer *transCont)
Definition:
LUCID_DigitContainerCnv.cxx:7
TPAbstractPolyCnvBase::createPersistent
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
pool::Guid
::Guid Guid
Definition:
T_AthenaPoolCustCnv.h:19
python.InDetPriVxFinderConfig.mlog
mlog
Definition:
InDetPriVxFinderConfig.py:139
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition:
StdJOSetup.py:36
endmsg
#define endmsg
Definition:
AnalysisConfig_Ntuple.cxx:63
LUCID_DigitContainer_p2
Definition:
LUCID_DigitContainer_p2.h:16
LUCID_DigitContainerCnv::createTransient
virtual LUCID_DigitContainer * createTransient()
Definition:
LUCID_DigitContainerCnv.cxx:19
DEBUG
#define DEBUG
Definition:
page_access.h:11
LUCID_DigitContainerCnv.h
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
Generated on Sun Dec 22 2024 21:13:55 for ATLAS Offline Software by
1.8.18