ATLAS Offline Software
MuonFeatureDetailsCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
10 
11 //createPersistent
13  MsgStream mlog(msgSvc(), "MuonFeatureDetailsConverter" );
14 
15  mlog << MSG::DEBUG << "MuonFeatureDetailsCnv::createPersistent" << endmsg;
16 
17  MuonFeatureDetailsCnv_p1 converter;
18  MuonFeatureDetails_PERS *persObj = converter.createPersistent( transObj, mlog );
19 
20  return persObj;
21 }
22 
23 //createTransient
25  MsgStream mlog(msgSvc(), "MuonFeatureDetailsConverter" );
26 
27  mlog << MSG::DEBUG << "MuonFeatureDetailsCnv::createTransient " << endmsg;
28 
29  static const pool::Guid p1_guid("E841B555-766B-48EF-96F8-F4BE39EE8BCB");
30 
31  if( compareClassGuid(p1_guid) ) {
32 
33  std::unique_ptr< MuonFeatureDetails_p1 > col_vect( poolReadObject< MuonFeatureDetails_p1 >() );
34  MuonFeatureDetailsCnv_p1 converter;
35  return converter.createTransient( col_vect.get(), mlog );
36  }
37  else {
38  throw std::runtime_error("MuonFeatureDetailsCnv: unsupported persistent version");
39  }
40 }
41 
MuonFeatureDetailsCnv::createPersistent
virtual MuonFeatureDetails_PERS * createPersistent(MuonFeatureDetails *transObj)
Definition: MuonFeatureDetailsCnv.cxx:12
MuonFeatureDetailsCnv::MuonFeatureDetailsCnv
MuonFeatureDetailsCnv(ISvcLocator *svcloc)
Definition: MuonFeatureDetailsCnv.cxx:8
MuonFeatureDetailsCnv.h
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
MuonFeatureDetails
Definition: MuonFeatureDetails.h:21
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:134
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
T_AthenaPoolCustomCnv
Compatibility for old converter classes that don't get passed the key.
Definition: T_AthenaPoolCustomCnv.h:132
MuonFeatureDetailsCnv_p1.h
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
MuonFeatureDetailsCnv::createTransient
virtual MuonFeatureDetails * createTransient()
Definition: MuonFeatureDetailsCnv.cxx:24
MuonFeatureDetails_p1
Definition: MuonFeatureDetails_p1.h:13
MuonFeatureDetailsCnv::~MuonFeatureDetailsCnv
~MuonFeatureDetailsCnv()
Definition: MuonFeatureDetailsCnv.cxx:9
DEBUG
#define DEBUG
Definition: page_access.h:11
MuonFeatureDetailsCnv_p1
Definition: MuonFeatureDetailsCnv_p1.h:19
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.