ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
ForwardDetectors
LUCID
LUCID_Cnv
LUCID_EventAthenaPool
src
LUCID_RawDataContainerCnv.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_RawDataContainerCnv.h
"
6
7
LUCID_RawDataContainer_PERS
*
LUCID_RawDataContainerCnv::createPersistent
(
LUCID_RawDataContainer
* transCont) {
8
9
MsgStream mlog(msgSvc(),
"LUCID_RawDataContainerCnv"
);
10
11
mlog << MSG::DEBUG <<
"In LUCID_RawDataContainerCnv::createPersistent "
<<
endmsg
;
12
13
LUCID_RawDataContainerCnv_p1
converter;
14
LUCID_RawDataContainer_PERS
* persObj = converter.
createPersistent
(transCont, mlog);
15
16
return
persObj;
17
}
18
19
LUCID_RawDataContainer
*
LUCID_RawDataContainerCnv::createTransient
(
const
Token
* token) {
20
21
MsgStream mlog(msgSvc(),
"LUCID_RawDataContainer"
);
22
23
mlog << MSG::DEBUG <<
"In LUCID_RawDataContainerCnv::createTransient "
<<
endmsg
;
24
25
LUCID_RawDataContainerCnv_p1
converter_p1;
26
27
LUCID_RawDataContainer
* trans_cont(
nullptr
);
28
29
static
const
Guid
p0_guid(
"0C023583-E3D4-4C7D-9B20-B6B2A1018D2F"
);
30
static
const
Guid
p1_guid(
"88937AAE-D299-4A80-8608-96EFB3068F9A"
);
31
32
if
(this->
compareClassGuid
(token, p0_guid)) {
// Before T/P separation
33
trans_cont = this->
poolReadObject<LUCID_RawDataContainer>
(token);
34
}
35
else
if
(this->
compareClassGuid
(token, p1_guid)) {
// First persistent version
36
37
std::unique_ptr< LUCID_RawDataContainer_p1 > col_vect( this->
poolReadObject< LUCID_RawDataContainer_p1 >
(token));
38
39
trans_cont = converter_p1.
createTransient
(col_vect.get(), mlog);
40
}
41
else
{
42
throw
std::runtime_error(
"Unsupported persistent version of Data container"
);
43
}
44
45
return
trans_cont;
46
}
47
48
49
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
LUCID_RawDataContainerCnv.h
LUCID_RawDataContainer_PERS
LUCID_RawDataContainer_p1 LUCID_RawDataContainer_PERS
Definition
LUCID_RawDataContainerCnv.h:13
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition
Guid.h:25
LUCID_RawDataContainerCnv_p1
Definition
LUCID_RawDataContainerCnv_p1.h:15
LUCID_RawDataContainerCnv::createPersistent
virtual LUCID_RawDataContainer_PERS * createPersistent(LUCID_RawDataContainer *transCont)
Definition
LUCID_RawDataContainerCnv.cxx:7
LUCID_RawDataContainerCnv::createTransient
virtual LUCID_RawDataContainer * createTransient(const Token *token)
Definition
LUCID_RawDataContainerCnv.cxx:19
LUCID_RawDataContainer
Definition
LUCID_RawDataContainer.h:12
TPAbstractPolyCnvBase::createPersistent
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
T_AthenaPoolCustomCnv< LUCID_RawDataContainer, LUCID_RawDataContainer_PERS >::compareClassGuid
virtual bool compareClassGuid(const Token *token, const Guid &clid) const
T_AthenaPoolCustomCnv< LUCID_RawDataContainer, LUCID_RawDataContainer_PERS >::poolReadObject
P * poolReadObject(const Token *token)
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition
Token.h:22
Generated on
for ATLAS Offline Software by
1.17.0