ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCnv
LArCondAthenaPool
src
LArDAC2uAMCCnv.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 "
LArDAC2uAMCCnv.h
"
12
#include "
LArSingleFloatUpdater.h
"
13
14
LArConditionsSubset<LArSingleFloatP>
*
15
LArDAC2uAMCCnv::createTransient
(
const
Token
* token)
16
{
17
static
const
pool::Guid
p0_guid(
"00BB980F-D174-4AD7-A5C7-DC66BA71C4D2"
);
18
// first try the single-float converter
19
LArConditionsSubset<LArSingleFloatP>
* p=
createTransientSingleFloat
(token);
20
if
(p)
21
return
p;
22
else
if
(
compareClassGuid
(token, p0_guid) ) {
23
// subset from before TP separation
24
MsgStream log(msgSvc(),
"LArDAC2uAMCCnv"
);
25
log << MSG::DEBUG <<
"Reading LArDAC2uASubset (original)"
<<
endmsg
;
26
std::unique_ptr< LArConditionsSubset<LArDAC2uAP> > subset (
poolReadObject
<
LArConditionsSubset<LArDAC2uAP>
>(token) );
27
return
(
createTransient
(subset.get()));
28
29
}
30
throw
std::runtime_error(
"Unsupported persistent version of LArDAC2uAMC"
);
31
}
32
33
LArConditionsSubset<LArSingleFloatP>
*
34
LArDAC2uAMCCnv::createTransient
(
LArConditionsSubset<LArDAC2uAP>
* orig)
35
{
36
MsgStream log(msgSvc(),
"LArDAC2uAMCCnv"
);
37
log << MSG::DEBUG <<
"LArDAC2uAMCCnv::createTransient orig "
<< orig <<
endmsg
;
38
39
LArConditionsSubset<LArSingleFloatP>
* result =
new
LArConditionsSubset<LArSingleFloatP>
();
40
41
// Copy LArDAC2uAP subset to LArSingleFloat Subset
42
LArSingleFloatUpdater
copier;
43
copier.
update
(orig, result);
44
45
return
(result);
46
}
47
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
LArDAC2uAMCCnv.h
AthenaPool converter LArDAC2uAMC.
LArSingleFloatUpdater.h
LArConditionsSubset
template class for use for I/O of conditions data
Definition
LArConditionsSubset.h:122
LArDAC2uAMCCnv::createTransient
virtual LArConditionsSubset< LArSingleFloatP > * createTransient(const Token *token)
Throws and exception if object is not a LArConditionsSubset<LArSingleFloatP>.
Definition
LArDAC2uAMCCnv.cxx:15
LArSingleFloatConverter< LArDAC2uAMC >::createTransientSingleFloat
LArConditionsSubset< LArSingleFloatP > * createTransientSingleFloat(const Token *token)
LArSingleFloatUpdater
Definition
LArSingleFloatUpdater.h:19
LArSingleFloatUpdater::update
void update(const LArConditionsSubset< P > *old, LArConditionsSubset< LArSingleFloatP > *newObj)
Definition
LArSingleFloatUpdater.h:22
LArSingleFloatConverter< LArDAC2uAMC >::poolReadObject
P * poolReadObject(const Token *token)
LArSingleFloatConverter< LArDAC2uAMC >::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
pool::Guid
::Guid Guid
Definition
T_AthenaPoolCustCnv.h:19
Generated on
for ATLAS Offline Software by
1.17.0