ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigSteeringEventAthenaPool
src
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
7
#include "
TrigRoiDescriptorCollectionCnv.h
"
8
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollection_p1.h
"
9
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollectionCnv_p1.h
"
10
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollection_p2.h
"
11
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollectionCnv_p2.h
"
12
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollection_p3.h
"
13
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollectionCnv_p3.h
"
14
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollection_tlp1.h
"
15
#include "
TrigSteeringEventTPCnv/TrigRoiDescriptorCollectionCnv_tlp1.h
"
16
17
struct
TrigRoiDescriptorCollectionCnv_impl
18
{
19
TrigRoiDescriptorCollectionCnv_p1
m_TPConverter_p1
;
20
TrigRoiDescriptorCollectionCnv_tlp1
m_TPConverter_tlp1
;
21
22
TrigRoiDescriptorCollectionCnv_p2
m_TPConverter_p2
;
23
TrigRoiDescriptorCollectionCnv_p3
m_TPConverter_p3
;
24
25
26
27
};
28
29
TrigRoiDescriptorCollectionCnv::TrigRoiDescriptorCollectionCnv
(ISvcLocator* svcloc) :
30
T_AthenaPoolCustomCnv
<
TrigRoiDescriptorCollection
,
TrigRoiDescriptorCollection_PERS
>( svcloc ),
31
m_impl
(new
TrigRoiDescriptorCollectionCnv_impl
)
32
{
33
}
34
TrigRoiDescriptorCollectionCnv::~TrigRoiDescriptorCollectionCnv
()
35
{
36
delete
m_impl
;
37
}
38
39
//create persistent
40
TrigRoiDescriptorCollection_PERS
*
TrigRoiDescriptorCollectionCnv::createPersistent
(
TrigRoiDescriptorCollection
* transObj)
41
{
42
MsgStream mlog(msgSvc(),
"TrigRoiDescriptorCollectionConverter"
);
43
44
TrigRoiDescriptorCollection_PERS
*persObj =
m_impl
->m_TPConverter_p3.createPersistent( transObj, mlog );
45
46
return
persObj;
47
}
48
49
//createTransient
50
TrigRoiDescriptorCollection
*
TrigRoiDescriptorCollectionCnv::createTransient
(
const
Token
* token)
51
{
52
MsgStream mlog(msgSvc(),
"TrigRoiDescriptorCollectionConverter"
);
53
54
static
const
Guid
p3_guid(
"615418EF-EEFB-4E87-A396-7313E67C547E"
);
55
static
const
Guid
p2_guid(
"D1A44F23-416C-4AB6-BFFA-2EA280565D4E"
);
56
static
const
Guid
p1_guid(
"D0A0B6E7-9E0C-484E-AE8C-AC57B5111EA0"
);
57
static
const
Guid
tlp1_guid(
"CE80FC4E-B16B-40B2-9D9E-EB4916B663B0"
);
58
59
TrigRoiDescriptorCollection
*trans_obj(0);
60
61
if
(
compareClassGuid
(token, p3_guid) ) {
62
63
std::unique_ptr< TrigRoiDescriptorCollection_p3 > col_vect( this->
poolReadObject< TrigRoiDescriptorCollection_p3 >
(token) );
64
trans_obj =
m_impl
->m_TPConverter_p3.createTransient( col_vect.get(), mlog );
65
}
66
else
if
(
compareClassGuid
(token, p2_guid) ) {
67
68
std::unique_ptr< TrigRoiDescriptorCollection_p2 > col_vect( this->
poolReadObject< TrigRoiDescriptorCollection_p2 >
(token) );
69
trans_obj =
m_impl
->m_TPConverter_p2.createTransient( col_vect.get(), mlog );
70
}
71
else
if
(
compareClassGuid
(token, tlp1_guid) ) {
72
73
std::unique_ptr< TrigRoiDescriptorCollection_tlp1 > col_vect( this->
poolReadObject< TrigRoiDescriptorCollection_tlp1 >
(token) );
74
trans_obj =
m_impl
->m_TPConverter_tlp1.createTransient( col_vect.get(), mlog );
75
}
76
else
if
(
compareClassGuid
(token, p1_guid) ) {
77
78
std::unique_ptr< TrigRoiDescriptorCollection_p1 > col_vect( this->
poolReadObject< TrigRoiDescriptorCollection_p1 >
(token) );
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.h
TrigRoiDescriptorCollection_PERS
TrigRoiDescriptorCollection_p3 TrigRoiDescriptorCollection_PERS
Definition
TrigRoiDescriptorCollectionCnv.h:28
TrigRoiDescriptorCollectionCnv_p1.h
TrigRoiDescriptorCollectionCnv_p2.h
TrigRoiDescriptorCollectionCnv_p2
T_AthenaPoolTPCnvVector< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p2, TrigRoiDescriptorCnv_p2 > TrigRoiDescriptorCollectionCnv_p2
Definition
TrigRoiDescriptorCollectionCnv_p2.h:29
TrigRoiDescriptorCollectionCnv_p3.h
TrigRoiDescriptorCollectionCnv_p3
T_AthenaPoolTPCnvVector< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_p3, TrigRoiDescriptorCnv_p3 > TrigRoiDescriptorCollectionCnv_p3
Definition
TrigRoiDescriptorCollectionCnv_p3.h:25
TrigRoiDescriptorCollectionCnv_tlp1.h
TrigRoiDescriptorCollection_p1.h
TrigRoiDescriptorCollection_p2.h
TrigRoiDescriptorCollection_p3.h
TrigRoiDescriptorCollection_tlp1.h
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition
Guid.h:25
T_AthenaPoolCustomCnv< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >::compareClassGuid
virtual bool compareClassGuid(const Token *token, const Guid &clid) const
T_AthenaPoolCustomCnv< TrigRoiDescriptorCollection, TrigRoiDescriptorCollection_PERS >::poolReadObject
P * poolReadObject(const Token *token)
T_AthenaPoolCustomCnv
Compatibility for old converter classes that don't get passed the key.
Definition
T_AthenaPoolCustomCnv.h:129
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition
Token.h:22
TrigRoiDescriptorCollectionCnv_p1
Definition
TrigRoiDescriptorCollectionCnv_p1.h:26
TrigRoiDescriptorCollectionCnv_tlp1
Definition
TrigRoiDescriptorCollectionCnv_tlp1.h:29
TrigRoiDescriptorCollectionCnv::~TrigRoiDescriptorCollectionCnv
~TrigRoiDescriptorCollectionCnv()
Definition
TrigRoiDescriptorCollectionCnv.cxx:34
TrigRoiDescriptorCollectionCnv::createTransient
TrigRoiDescriptorCollection * createTransient(const Token *token)
Definition
TrigRoiDescriptorCollectionCnv.cxx:50
TrigRoiDescriptorCollectionCnv::m_impl
TrigRoiDescriptorCollectionCnv_impl * m_impl
Definition
TrigRoiDescriptorCollectionCnv.h:48
TrigRoiDescriptorCollectionCnv::createPersistent
TrigRoiDescriptorCollection_PERS * createPersistent(TrigRoiDescriptorCollection *transObj)
Definition
TrigRoiDescriptorCollectionCnv.cxx:40
TrigRoiDescriptorCollectionCnv::TrigRoiDescriptorCollectionCnv
TrigRoiDescriptorCollectionCnv(ISvcLocator *svcloc)
Definition
TrigRoiDescriptorCollectionCnv.cxx:29
TrigRoiDescriptorCollection
Definition
TrigRoiDescriptorCollection.h:14
TrigRoiDescriptorCollectionCnv_impl
Definition
TrigRoiDescriptorCollectionCnv.cxx:18
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_p3
TrigRoiDescriptorCollectionCnv_p3 m_TPConverter_p3
Definition
TrigRoiDescriptorCollectionCnv.cxx:23
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_tlp1
TrigRoiDescriptorCollectionCnv_tlp1 m_TPConverter_tlp1
Definition
TrigRoiDescriptorCollectionCnv.cxx:20
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_p2
TrigRoiDescriptorCollectionCnv_p2 m_TPConverter_p2
Definition
TrigRoiDescriptorCollectionCnv.cxx:22
TrigRoiDescriptorCollectionCnv_impl::m_TPConverter_p1
TrigRoiDescriptorCollectionCnv_p1 m_TPConverter_p1
Definition
TrigRoiDescriptorCollectionCnv.cxx:19
Generated on
for ATLAS Offline Software by
1.17.0