ATLAS Offline Software
TriggerTowerCollectionCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
12 
13 //createPersistent
15 {
16 
17  MsgStream mlog(msgSvc(), "TriggerTowerCollectionConverter" );
18 
19  //mlog << MSG::DEBUG << "TriggerTowerCollectionCnv::createPersistent called" << endmsg;
20 
22 
23  return p_TTColl;
24 
25 }//end of create persistent method
26 
27 
28 //createTransient
30 {
31  MsgStream mlog(msgSvc(), "TriggerTowerCollectionConverter" );
32 
33  //mlog << MSG::DEBUG << "TriggerTowerCollectionCnv::createTransient called" << endmsg;
34 
35  static const pool::Guid tlp1_guid( "CDF34B04-7594-4A52-8EE0-FE85CF2C2A18" );
36  static const pool::Guid p0_guid( "1B6DA81A-2F27-4B50-ACF6-D3FC19B40ADB" );
37 
38  TriggerTowerCollection *p_collection = 0;
39  if( compareClassGuid( tlp1_guid ) )
40  {
41  // using unique_ptr ensures deletion of the persistent object
42  std::unique_ptr< TriggerTowerCollection_PERS > pers_ref( poolReadObject< TriggerTowerCollection_PERS >() );
43  p_collection = m_TPConverter_tlp1.createTransient( pers_ref.get(), mlog );
44 
45  }else if( compareClassGuid( p0_guid ) ){
46 
47  p_collection = poolReadObject< TriggerTowerCollection >();
48 
49  }else throw std::runtime_error( "Unsupported persistent version of TriggerTowerCollection" );
50 
51  return p_collection;
52 
53 }//end of create transient method
54 
TriggerTowerCollection_tlp1
Definition: TriggerTowerCollection_tlp1.h:11
TriggerTowerCollectionCnv::m_TPConverter_tlp1
TriggerTowerCollectionCnv_tlp1 m_TPConverter_tlp1
Definition: TriggerTowerCollectionCnv.h:45
TriggerTowerCollectionCnv::createPersistent
virtual TriggerTowerCollection_PERS * createPersistent(TriggerTowerCollection *transCont)
Definition: TriggerTowerCollectionCnv.cxx:14
TriggerTowerCollectionCnv::createTransient
virtual TriggerTowerCollection * createTransient()
Definition: TriggerTowerCollectionCnv.cxx:29
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
DataVector< LVL1::TriggerTower >
TriggerTowerCollectionCnv.h
Generated header file which defines a typedef for templated converter class.
TopLevelTPConverter::createPersistent
virtual TL_PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of transObj.
Definition: TopLevelTPConverter.h:110
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.