ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
TileCalorimeter
TileSvc
TileEventAthenaPool
src
TileMuonReceiverContainerCnv.cxx
Go to the documentation of this file.
1
2
3
/*
4
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
5
*/
6
7
// TileMuonReceveirContainerCnv.cxx
8
// Implementation file for class TileMuonReceiverContainerCnv
9
// Author: Joao Gentil Saraiva <joao.gentil.saraiva@cern.ch>
10
// Date: March 2014
12
13
// Framework includes
14
#include "GaudiKernel/MsgStream.h"
15
16
// TileTPCnv includes
17
#include "
TileTPCnv/TileMuonReceiverContainerCnv_p1.h
"
18
19
// TileEventAthenaPool includes
20
#include "
TileMuonReceiverContainerCnv.h
"
21
22
TileMuonReceiverContainer_PERS
*
23
TileMuonReceiverContainerCnv::createPersistent
(
TileMuonReceiverContainer
* transCont )
24
{
25
MsgStream
msg
( msgSvc(),
"TileMuonReceiverContainerCnv"
);
26
27
TileMuonReceiverContainerCnv_p1
cnv;
28
TileMuonReceiverContainer_PERS
*persObj = cnv.
createPersistent
( transCont,
msg
);
29
30
if
(
msg
.level()<=MSG::DEBUG)
31
msg
<< MSG::DEBUG <<
"::createPersistent [Success]"
<<
endmsg
;
32
return
persObj;
33
}
34
35
TileMuonReceiverContainer
*
TileMuonReceiverContainerCnv::createTransient
(
const
Token
* token) {
36
37
MsgStream
msg
( msgSvc(),
"TileMuonReceiverContainerCnv"
);
38
39
TileMuonReceiverContainer
*transObj = 0;
40
41
static
const
pool::Guid
tr_guid(
"A01F819F-4F0B-4713-A275-7DA5F47F77E5"
);
42
static
const
pool::Guid
p1_guid(
"7F0DA5A3-7773-4852-AE55-A9920FEB31AB"
);
43
44
if
(
compareClassGuid
(token, tr_guid) ) {
45
46
// regular object from before the T/P separation
47
return
poolReadObject<TileMuonReceiverContainer>
(token);
48
49
}
else
if
(
compareClassGuid
(token, p1_guid) ) {
50
// using unique_ptr ensures deletion of the persistent object
51
std::unique_ptr<TileMuonReceiverContainer_p1> persObj(
poolReadObject<TileMuonReceiverContainer_p1>
(token) );
52
TileMuonReceiverContainerCnv_p1
cnv;
53
transObj = cnv.
createTransient
( persObj.get(),
msg
);
54
}
else
{
55
throw
std::runtime_error(
"Unsupported persistent version of TileMuonReceiverContainer"
);
56
}
57
58
return
transObj;
59
}
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
TileMuonReceiverContainer
TileContainer< TileMuonReceiverObj > TileMuonReceiverContainer
Definition
TileContainer.h:71
TileMuonReceiverContainerCnv.h
TileMuonReceiverContainer_PERS
TileMuonReceiverContainer_p1 TileMuonReceiverContainer_PERS
Definition
TileMuonReceiverContainerCnv.h:24
TileMuonReceiverContainerCnv_p1.h
TileMuonReceiverContainerCnv_p1
T_AthenaPoolTPCnvVector< TileMuonReceiverContainer, TileMuonReceiverContainer_p1, TileMuonReceiverObjCnv_p1 > TileMuonReceiverContainerCnv_p1
Definition
TileMuonReceiverContainerCnv_p1.h:29
T_AthenaPoolCustomCnv< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >::msg
MsgStream & msg() const
Definition
AthMessaging.h:167
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< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >::compareClassGuid
virtual bool compareClassGuid(const Token *token, const Guid &clid) const
T_AthenaPoolCustomCnv< TileMuonReceiverContainer, TileMuonReceiverContainer_PERS >::poolReadObject
P * poolReadObject(const Token *token)
TileMuonReceiverContainerCnv::createTransient
virtual TileMuonReceiverContainer * createTransient(const Token *token)
Build the transient representation from a persistent one.
Definition
TileMuonReceiverContainerCnv.cxx:35
TileMuonReceiverContainerCnv::createPersistent
virtual TileMuonReceiverContainer_PERS * createPersistent(TileMuonReceiverContainer *transCont)
Build the persistent representation from the transient one.
Definition
TileMuonReceiverContainerCnv.cxx:23
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition
Token.h:22
pool::Guid
::Guid Guid
Definition
T_AthenaPoolCustCnv.h:19
Generated on
for ATLAS Offline Software by
1.17.0