ATLAS Offline Software
Loading...
Searching...
No Matches
TileMuContainerCnv.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// TileMuContainerCnv.cxx
8// Implementation file for class TileMuContainerCnv
9// Author: Aranzazu Ruiz <aranzazu.ruiz.martinez@cern.ch>
10// Date: July 2008
12
13// Framework includes
14#include "GaudiKernel/MsgStream.h"
15
16// TileTPCnv includes
18
19// TileEventAthenaPool includes
20#include "TileMuContainerCnv.h"
21
24{
25 MsgStream msg( msgSvc(), "TileMuContainerCnv" );
26
28 TileMuContainer_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
36
37 MsgStream msg( msgSvc(), "TileMuContainerCnv" );
38
39 TileMuContainer *transObj = 0;
40
41 static const pool::Guid tr_guid("FC0456E4-912B-425B-9AA2-4DDD0C6B2275");
42 static const pool::Guid p1_guid("DE8904EB-25FD-495A-8DD5-E31B05E397C6");
43
44 if ( compareClassGuid(tr_guid) ) {
45
46 // regular object from before the T/P separation
48
49 } else if ( compareClassGuid(p1_guid) ) {
50
51 // using unique_ptr ensures deletion of the persistent object
52 std::unique_ptr<TileMuContainer_p1> persObj( poolReadObject<TileMuContainer_p1>() );
54 transObj = cnv.createTransient( persObj.get(), msg );
55 } else {
56 throw std::runtime_error("Unsupported persistent version of TileMuContainer");
57 }
58
59 return transObj;
60}
#define endmsg
TileContainer< TileMu > TileMuContainer
TileMuContainer_p1 TileMuContainer_PERS
T_AthenaPoolTPCnvVector< TileMuContainer, TileMuContainer_p1, TileMuCnv_p1 > TileMuContainerCnv_p1
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
virtual TileMuContainer * createTransient()
Build the transient representation from a persistent one.
virtual TileMuContainer_PERS * createPersistent(TileMuContainer *transCont)
Build the persistent representation from the transient one.