ATLAS Offline Software
TrigRoiDescriptorCollectionCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // #ifndef XAOD_ANALYSIS
6 
16 
18 {
21 
24 
25 
26 
27 };
28 
32 {
33 }
35 {
36  delete m_impl;
37 }
38 
39 //create persistent
41 {
42  MsgStream mlog(msgSvc(), "TrigRoiDescriptorCollectionConverter" );
43 
45 
46  return persObj;
47 }
48 
49 //createTransient
51 {
52  MsgStream mlog(msgSvc(), "TrigRoiDescriptorCollectionConverter" );
53 
54  static const pool::Guid p3_guid("615418EF-EEFB-4E87-A396-7313E67C547E");
55  static const pool::Guid p2_guid("D1A44F23-416C-4AB6-BFFA-2EA280565D4E");
56  static const pool::Guid p1_guid("D0A0B6E7-9E0C-484E-AE8C-AC57B5111EA0");
57  static const pool::Guid tlp1_guid("CE80FC4E-B16B-40B2-9D9E-EB4916B663B0");
58 
59  TrigRoiDescriptorCollection *trans_obj(0);
60 
61  if( compareClassGuid(p3_guid) ) {
62 
63  std::unique_ptr< TrigRoiDescriptorCollection_p3 > col_vect( this->poolReadObject< TrigRoiDescriptorCollection_p3 >() );
64  trans_obj = m_impl->m_TPConverter_p3.createTransient( col_vect.get(), mlog );
65  }
66  else if( compareClassGuid(p2_guid) ) {
67 
68  std::unique_ptr< TrigRoiDescriptorCollection_p2 > col_vect( this->poolReadObject< TrigRoiDescriptorCollection_p2 >() );
69  trans_obj = m_impl->m_TPConverter_p2.createTransient( col_vect.get(), mlog );
70  }
71  else if( compareClassGuid(tlp1_guid) ) {
72 
73  std::unique_ptr< TrigRoiDescriptorCollection_tlp1 > col_vect( this->poolReadObject< TrigRoiDescriptorCollection_tlp1 >() );
74  trans_obj = m_impl->m_TPConverter_tlp1.createTransient( col_vect.get(), mlog );
75  }
76  else if( compareClassGuid(p1_guid) ) {
77 
78  std::unique_ptr< TrigRoiDescriptorCollection_p1 > col_vect( this->poolReadObject< TrigRoiDescriptorCollection_p1 >() );
79  trans_obj = m_impl->m_TPConverter_p1.createTransient( col_vect.get(), mlog );
80  }
81  else {
82 
83  throw std::runtime_error("Unsupported persistent version of TrigRoiDescriptorCollection");
84  }
85 
86  return trans_obj;
87 
88 }
89 
90 // #endif
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_p3
TrigRoiDescriptorCollectionCnv_p3 m_TPConverter_p3
Definition: TrigRoiDescriptorCollectionCnv.cxx:23
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_p1
TrigRoiDescriptorCollectionCnv_p1 m_TPConverter_p1
Definition: TrigRoiDescriptorCollectionCnv.cxx:19
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
TrigRoiDescriptorCollectionCnv_p2.h
TrigRoiDescriptorCollectionCnv_impl
Definition: TrigRoiDescriptorCollectionCnv.cxx:18
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
TrigRoiDescriptorCollectionCnv_p1.h
TrigRoiDescriptorCollectionCnv::createTransient
TrigRoiDescriptorCollection * createTransient()
Definition: TrigRoiDescriptorCollectionCnv.cxx:50
TrigRoiDescriptorCollectionCnv::createPersistent
TrigRoiDescriptorCollection_PERS * createPersistent(TrigRoiDescriptorCollection *transObj)
Definition: TrigRoiDescriptorCollectionCnv.cxx:40
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
TrigRoiDescriptorCollectionCnv.h
TrigRoiDescriptorCollection_p1.h
python.InDetPriVxFinderConfig.mlog
mlog
Definition: InDetPriVxFinderConfig.py:139
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
TrigRoiDescriptorCollectionCnv_tlp1
Definition: TrigRoiDescriptorCollectionCnv_tlp1.h:29
TrigRoiDescriptorCollection_tlp1.h
TrigRoiDescriptorCollection_p2.h
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_tlp1
TrigRoiDescriptorCollectionCnv_tlp1 m_TPConverter_tlp1
Definition: TrigRoiDescriptorCollectionCnv.cxx:20
TrigRoiDescriptorCollectionCnv_p1
Definition: TrigRoiDescriptorCollectionCnv_p1.h:26
TrigRoiDescriptorCollectionCnv::TrigRoiDescriptorCollectionCnv
TrigRoiDescriptorCollectionCnv(ISvcLocator *svcloc)
Definition: TrigRoiDescriptorCollectionCnv.cxx:29
TrigRoiDescriptorCollection_p3
Definition: TrigRoiDescriptorCollection_p3.h:23
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_p2
TrigRoiDescriptorCollectionCnv_p2 m_TPConverter_p2
Definition: TrigRoiDescriptorCollectionCnv.cxx:22
TrigRoiDescriptorCollection
Definition: TrigRoiDescriptorCollection.h:21
TrigRoiDescriptorCollection_p3.h
TPCnvVector
Definition: TPConverter.h:1256
TrigRoiDescriptorCollectionCnv_tlp1.h
TrigRoiDescriptorCollectionCnv::~TrigRoiDescriptorCollectionCnv
~TrigRoiDescriptorCollectionCnv()
Definition: TrigRoiDescriptorCollectionCnv.cxx:34
TrigRoiDescriptorCollectionCnv_p3.h
T_AthenaPoolCustCnv< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
TrigRoiDescriptorCollectionCnv::m_impl
TrigRoiDescriptorCollectionCnv_impl * m_impl
Definition: TrigRoiDescriptorCollectionCnv.h:48