ATLAS Offline Software
TrigMuonEFContainerCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
8 //createPersistent
10 {
11  MsgStream mlog(msgSvc(), "TrigMuonEFContainerConverter" );
12 
13  mlog << MSG::DEBUG << "TrigMuonEFContainerCnv::createPersistent called" << endmsg;
14 
15  TrigMuonEFContainer_PERS * p_muEFcont = m_converter.createPersistent( transObj, mlog );
16 
17  return p_muEFcont;
18 
19 }//end of create persistent method
20 
21 
22 //createTransient
24 {
25  MsgStream mlog(msgSvc(), "TrigMuonEFContainerConverter" );
26 
27  mlog << MSG::DEBUG << "TrigMuonEFContainerCnv::createTransient called" << endmsg;
28 
29  static const pool::Guid p2_guid( "3BB5C107-2975-4F9E-AACC-9FD948C3D2A8" );
30  static const pool::Guid p1_guid( "567E65A0-23E8-469F-94F7-A03F6E9C1C2E" );
31  static const pool::Guid p0_guid( "BB866230-C9D8-437A-A11B-A0CC08ACD97B" );
32 
33  if( compareClassGuid( p2_guid ) ){
34  std::unique_ptr< TrigMuonEFContainer_p2 > col_vect( poolReadObject< TrigMuonEFContainer_p2 >() );
35  // std::cout << "Reading IMFC p2" << std::endl;
36  return m_converter.createTransient( col_vect.get(), mlog ) ;
37 
38  } else if( compareClassGuid( p1_guid ) ) {
39  std::unique_ptr< TrigMuonEFContainer_tlp1 > col_vect( poolReadObject< TrigMuonEFContainer_tlp1 >() );
40  // std::cout << "Reading IMFC tlp1" << std::endl;
41  return m_converter_tlp1.createTransient( col_vect.get(), mlog );
42 
43  } else if( compareClassGuid( p0_guid ) ){
44 
45  return poolReadObject< TrigMuonEFContainer >();
46 
47  } else throw std::runtime_error( "Unsupported persistent version of TrigMuonEFContainer" );
48 
49 }//end of create transient method
50 
TrigMuonEFContainerCnv::createTransient
virtual TrigMuonEFContainer * createTransient()
Definition: TrigMuonEFContainerCnv.cxx:23
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
TrigMuonEFContainerCnv.h
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
TopLevelTPConverter::createTransient
TRANS * createTransient(MsgStream &log)
Create transient representation of the persistent object known to this converter.
Definition: TopLevelTPConverter.h:62
python.InDetPriVxFinderConfig.mlog
mlog
Definition: InDetPriVxFinderConfig.py:134
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
TrigMuonEFContainerCnv::createPersistent
virtual TrigMuonEFContainer_PERS * createPersistent(TrigMuonEFContainer *transObj)
Definition: TrigMuonEFContainerCnv.cxx:9
TrigMuonEFContainer_p2.h
TrigMuonEFContainerCnv::m_converter_tlp1
TrigMuonEFContainerCnv_tlp1 m_converter_tlp1
Definition: TrigMuonEFContainerCnv.h:34
TrigMuonEFContainer_p2
Definition: TrigMuonEFContainer_p2.h:10
DEBUG
#define DEBUG
Definition: page_access.h:11
TrigMuonEFContainer
Definition: TrigMuonEFContainer.h:27
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
TrigMuonEFContainerCnv::m_converter
TrigMuonEFContainerCnv_p2 m_converter
Definition: TrigMuonEFContainerCnv.h:35