ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TrigEvent
TrigEventAthenaPool
src
TrigTrackCountsCnv.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
#include "
TrigTrackCountsCnv.h
"
6
#include "
TrigInDetEventTPCnv/TrigTrackCounts_p1.h
"
7
#include "
TrigInDetEventTPCnv/TrigTrackCountsCnv_p1.h
"
8
#include "
TrigInDetEventTPCnv/TrigTrackCounts_p2.h
"
9
#include "
TrigInDetEventTPCnv/TrigTrackCountsCnv_p2.h
"
10
11
TrigTrackCountsCnv::TrigTrackCountsCnv
(ISvcLocator *svcloc):
TrigTrackCountsCnvBase
(svcloc) {}
12
TrigTrackCountsCnv::~TrigTrackCountsCnv
(){}
13
14
15
TrigTrackCounts_PERS
*
TrigTrackCountsCnv::createPersistent
(
TrigTrackCounts
* transObj) {
16
MsgStream mlog(msgSvc(),
"TrigTrackCountsConverter"
);
17
18
mlog << MSG::DEBUG <<
"TrigTrackCountsCnv::createPersistent"
<<
endmsg
;
19
20
TrigTrackCountsCnv_p2
converter;
21
22
TrigTrackCounts_PERS
*persObj = converter.
createPersistent
( transObj, mlog );
23
24
return
persObj;
25
}
26
27
28
TrigTrackCounts
*
TrigTrackCountsCnv::createTransient
(
const
Token
* token) {
29
MsgStream mlog(msgSvc(),
"TrigTrackCountsConverter"
);
30
31
mlog << MSG::DEBUG <<
"TrigTrackCountsCnv::createTransient "
<<
endmsg
;
32
33
static
const
Guid
p2_guid(
"BD8BB599-AE38-45CC-93DB-27F67C23DB62"
);
34
static
const
Guid
p1_guid(
"2DCA396C-5CC1-4B6A-8B76-E3EBA4F81A61"
);
35
static
const
Guid
p0_guid(
"6277C97C-0EAA-4922-892E-E88C1FA01BA0"
);
36
37
if
(
compareClassGuid
(token, p2_guid)) {
38
std::unique_ptr< TrigTrackCounts_p2 > pers_ptr(
poolReadObject< TrigTrackCounts_p2 >
(token) );
39
TrigTrackCountsCnv_p2
converter;
40
return
converter.
createTransient
( pers_ptr.get(), mlog );
41
}
42
else
if
(
compareClassGuid
(token, p1_guid)) {
43
std::unique_ptr< TrigTrackCounts_p1 > pers_ptr(
poolReadObject< TrigTrackCounts_p1 >
(token) );
44
TrigTrackCountsCnv_p1
converter;
45
return
converter.
createTransient
( pers_ptr.get(), mlog );
46
}
47
else
if
(
compareClassGuid
(token, p0_guid)) {
48
// old version from before TP separation, just return it
49
return
this->
poolReadObject<TrigTrackCounts>
(token);
50
}
51
else
{
52
throw
std::runtime_error(
"Unsupported persistent version"
);
53
}
54
55
}
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
TrigTrackCountsCnv.h
TrigTrackCounts_PERS
TrigTrackCounts_p2 TrigTrackCounts_PERS
Definition
TrigTrackCountsCnv.h:28
TrigTrackCountsCnvBase
T_AthenaPoolCustomCnv< TrigTrackCounts, TrigTrackCounts_PERS > TrigTrackCountsCnvBase
Definition
TrigTrackCountsCnv.h:30
TrigTrackCountsCnv_p1.h
TrigTrackCountsCnv_p2.h
TrigTrackCounts_p1.h
TrigTrackCounts_p2.h
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition
Guid.h:25
TPAbstractPolyCnvBase::createPersistent
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
T_AthenaPoolCustomCnv< TrigTrackCounts, TrigTrackCounts_PERS >::compareClassGuid
virtual bool compareClassGuid(const Token *token, const Guid &clid) const
T_AthenaPoolCustomCnv< TrigTrackCounts, TrigTrackCounts_PERS >::poolReadObject
P * poolReadObject(const Token *token)
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition
Token.h:22
TrigTrackCountsCnv_p1
Definition
TrigTrackCountsCnv_p1.h:30
TrigTrackCountsCnv_p2
Definition
TrigTrackCountsCnv_p2.h:34
TrigTrackCountsCnv::createPersistent
virtual TrigTrackCounts_PERS * createPersistent(TrigTrackCounts *transObj)
Definition
TrigTrackCountsCnv.cxx:15
TrigTrackCountsCnv::createTransient
virtual TrigTrackCounts * createTransient(const Token *token)
Definition
TrigTrackCountsCnv.cxx:28
TrigTrackCountsCnv::~TrigTrackCountsCnv
~TrigTrackCountsCnv()
Definition
TrigTrackCountsCnv.cxx:12
TrigTrackCountsCnv::TrigTrackCountsCnv
TrigTrackCountsCnv(ISvcLocator *svcloc)
Definition
TrigTrackCountsCnv.cxx:11
TrigTrackCounts
Definition
Trigger/TrigEvent/TrigInDetEvent/TrigInDetEvent/TrigTrackCounts.h:18
Generated on
for ATLAS Offline Software by
1.17.0