ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCnv
LArCondAthenaPool
src
LArAutoCorrMCCnv.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
10
11
#include "
LArAutoCorrMCCnv.h
"
12
#include "
LArCondTPCnv/LArAutoCorrSubsetCnv_p1.h
"
13
#include "
LArAutoCorrCompleteCnv.h
"
14
15
static
const
LArAutoCorrSubsetCnv_p1
TPconverter
;
16
17
LArAutoCorrSubset_p1
*
18
LArAutoCorrMCCnv::createPersistent
(
LArAutoCorrTransType
* transObj)
19
{
20
MsgStream log(msgSvc(),
"LArAutoCorrMCCnv"
);
21
//log << MSG::DEBUG << "LArAutoCorrMC write" << endmsg;
22
LArAutoCorrPersType
* persObj =
TPconverter
.createPersistentConst( transObj, log );
23
//log << MSG::DEBUG << "Success" << endmsg;
24
return
persObj;
25
}
26
27
LArConditionsSubset<LArAutoCorrP1>
*
28
LArAutoCorrMCCnv::createTransient
(
const
Token
* token)
29
{
30
static
const
Guid
p1_guid(
"FA16A69D-241E-40F3-B710-77A95937E394"
);
31
static
const
Guid
p0_guid(
"4E7E36E9-2121-4327-88C5-8A516D6D6D2A"
);
32
if
(
compareClassGuid
(token, p1_guid) ) {
33
// using unique_ptr ensures deletion of the persistent object
34
std::unique_ptr< LArAutoCorrSubset_p1 > col_vect(
poolReadObject< LArAutoCorrSubset_p1 >
(token) );
35
MsgStream log(msgSvc(),
"LArAutoCorrMCCnv"
);
36
//log << MSG::INFO << "Reading LArAutoCorrSubset_p1" << endmsg;
37
return
TPconverter
.createTransientConst( col_vect.get(), log );
38
}
39
else
if
(
compareClassGuid
(token, p0_guid) ) {
40
// subset from before TP separation
41
42
MsgStream log(msgSvc(),
"LArAutoCorrMCCnv"
);
43
log << MSG::INFO <<
"Reading LArAutoCorrSubset (original)"
<<
endmsg
;
44
45
std::unique_ptr< LArConditionsSubset<LArAutoCorrP> > subset (
poolReadObject
<
LArConditionsSubset<LArAutoCorrP>
>(token) );
46
// Here we must convert from LArAutoCorrP to LArAutoCorrP1
47
48
log << MSG::INFO <<
"subset ptr "
<< subset.get() <<
endmsg
;
49
50
return
(
createTransient
(subset.get()));
51
52
}
53
throw
std::runtime_error(
"Unsupported persistent version of LArAutoCorrMCCnv"
);
54
}
55
56
LArConditionsSubset<LArAutoCorrP1>
*
57
LArAutoCorrMCCnv::createTransient
(
LArConditionsSubset<LArAutoCorrP>
* orig)
58
{
59
60
MsgStream log(msgSvc(),
"LArAutoCorrMCCnv"
);
61
log << MSG::INFO <<
"LArAutoCorrMCCnv::createTransient orig "
<< orig <<
endmsg
;
62
63
LArConditionsSubset<LArAutoCorrP1>
* result =
new
LArConditionsSubset<LArAutoCorrP1>
();
64
65
// Copy LArAutoCorrP subset to LArAutoCorrP1
66
LArAutoCorrCopy
copier;
67
copier.
copyOldtoNew
(orig, result);
68
69
return
(result);
70
}
71
72
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
TPconverter
static const LArAutoCorrSubsetCnv_p1 TPconverter
Definition
LArAutoCorrCompleteCnv.cxx:14
LArAutoCorrCompleteCnv.h
AthenaPool converter LArAutoCorrComplete.
LArAutoCorrPersType
LArAutoCorrSubset_p1 LArAutoCorrPersType
Definition
LArAutoCorrCompleteCnv.h:21
LArAutoCorrMCCnv.h
AthenaPool converter LArAutoCorrMC.
LArAutoCorrTransType
LArConditionsSubset< LArAutoCorrP1 > LArAutoCorrTransType
Definition
LArAutoCorrMCCnv.h:20
LArAutoCorrSubsetCnv_p1.h
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition
Guid.h:25
LArAutoCorrCopy
Definition
LArAutoCorrCompleteCnv.h:37
LArAutoCorrCopy::copyOldtoNew
void copyOldtoNew(const LArConditionsSubset< LArAutoCorrP > *oldAutoCorr, LArConditionsSubset< LArAutoCorrP1 > *newAutoCorr)
Definition
LArAutoCorrCompleteCnv.cxx:74
LArAutoCorrMCCnv::createPersistent
virtual LArAutoCorrPersType * createPersistent(LArAutoCorrTransType *transObj)
method to be implemented by the developer.
Definition
LArAutoCorrMCCnv.cxx:18
LArAutoCorrMCCnv::createTransient
virtual LArAutoCorrTransType * createTransient(const Token *token)
method to be implemented by the developer.
Definition
LArAutoCorrMCCnv.cxx:28
LArAutoCorrSubsetCnv_p1
Definition
LArAutoCorrSubsetCnv_p1.h:20
LArAutoCorrSubset_p1
persistent class container of LArConditionsSubset for LArAutoCorr data.
Definition
LArAutoCorrSubset_p1.h:30
LArConditionsSubset
template class for use for I/O of conditions data
Definition
LArConditionsSubset.h:122
T_AthenaPoolCoolMultChanCnv< LArAutoCorrMC, LArAutoCorrTransType, LArAutoCorrPersType >::poolReadObject
P * poolReadObject(const Token *token)
T_AthenaPoolCoolMultChanCnv< LArAutoCorrMC, LArAutoCorrTransType, LArAutoCorrPersType >::compareClassGuid
virtual bool compareClassGuid(const Token *token, const Guid &clid) const
Token
This class provides a token that identifies in a unique way objects on the persistent storage.
Definition
Token.h:22
Generated on
for ATLAS Offline Software by
1.17.0