ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonCnv
MuonEventAthenaPool
src
RpcCoinDataContainerCnv.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
RpcCoinDataContainerCnv.h
"
6
7
// Gaudi
8
#include "GaudiKernel/StatusCode.h"
9
#include "GaudiKernel/MsgStream.h"
10
11
// Athena
12
#include "
StoreGate/StoreGateSvc.h
"
13
14
// Id includes
15
#include "
MuonTrigCoinData/RpcCoinDataContainer.h
"
16
17
RpcCoinDataContainerCnv::RpcCoinDataContainerCnv
(ISvcLocator* svcloc) :
18
RpcCoinDataContainerCnvBase
(svcloc)
19
{}
20
21
RpcCoinDataContainerCnv::~RpcCoinDataContainerCnv
() =
default
;
22
23
StatusCode
RpcCoinDataContainerCnv::initialize
() {
24
// Call base clase initialize
25
if
( !
RpcCoinDataContainerCnvBase::initialize
().isSuccess() )
26
return
StatusCode::FAILURE;
27
28
//msgSvc()->setOutputLevel( "RpcCoinDataContainerCnv", MSG::INFO );
29
30
// Get the messaging service, print where you are
31
MsgStream log(msgSvc(),
"RpcCoinDataContainerCnv"
);
32
if
(log.level() <= MSG::DEBUG) log << MSG::INFO <<
"RpcCoinDataContainerCnv::initialize()"
<<
endmsg
;
33
34
return
StatusCode::SUCCESS;
35
}
36
37
Muon::RpcCoinDataContainerCnv_p1::PERS
*
RpcCoinDataContainerCnv::createPersistent
(
Muon::RpcCoinDataContainer
* transCont) {
38
MsgStream log(msgSvc(),
"RpcCoinDataContainerCnv"
);
39
if
(log.level() <= MSG::DEBUG) log<<MSG::DEBUG<<
"createPersistent(): main converter"
<<
endmsg
;
40
Muon::RpcCoinDataContainerCnv_p1::PERS
*rpc_p=
m_converter_p1
.createPersistent( transCont, log );
41
return
rpc_p;
42
}
43
44
Muon::RpcCoinDataContainer
*
RpcCoinDataContainerCnv::createTransient
(
const
Token
* token) {
45
MsgStream log(msgSvc(),
"RpcCoinDataContainerCnv"
);
46
static
const
Guid
p1_guid(
"AF0DB103-E825-45E5-9C29-9C32342756DD"
);
47
if
(log.level() <= MSG::DEBUG) log<<MSG::DEBUG<<
"createTransient(const Token* token): main converter"
<<
endmsg
;
48
Muon::RpcCoinDataContainer
* p_collection(
nullptr
);
49
if
(
compareClassGuid
(token, p1_guid) ) {
50
if
(log.level() <= MSG::DEBUG) log<<MSG::DEBUG<<
"createTransient(const Token* token): T/P version 1 detected"
<<
endmsg
;
51
std::unique_ptr< Muon::RpcCoinDataContainerCnv_p1::PERS > col_vect(
poolReadObject< Muon::RpcCoinDataContainerCnv_p1::PERS >
(token) );
52
if
(log.level() <= MSG::DEBUG) log << MSG::DEBUG <<
"Delegate TP converter "
<<
endmsg
;
53
p_collection =
m_converter_p1
.createTransient( col_vect.get(), log );
54
}
else
{
55
throw
std::runtime_error(
"Unsupported persistent version of RpcCoinDataContainer"
);
56
}
57
return
p_collection;
58
}
endmsg
#define endmsg
Definition
AnalysisConfig_Ntuple.cxx:54
RpcCoinDataContainerCnv.h
RpcCoinDataContainerCnvBase
T_AthenaPoolCustomCnv< Muon::RpcCoinDataContainer, Muon::RpcCoinDataContainerCnv_p1::PERS > RpcCoinDataContainerCnvBase
Definition
RpcCoinDataContainerCnv.h:13
RpcCoinDataContainer.h
StoreGateSvc.h
Guid
This class provides a encapsulation of a GUID/UUID/CLSID/IID data structure (128 bit number).
Definition
Guid.h:25
Muon::RpcCoinDataContainerCnv_p1::PERS
Muon::MuonPRD_Container_p2< RpcCoinData_p1 > PERS
Definition
RpcCoinDataContainerCnv_p1.h:32
RpcCoinDataContainerCnv::initialize
virtual StatusCode initialize()
Gaudi Service Interface method implementations:
Definition
RpcCoinDataContainerCnv.cxx:23
RpcCoinDataContainerCnv::createTransient
virtual Muon::RpcCoinDataContainer * createTransient(const Token *token)
Definition
RpcCoinDataContainerCnv.cxx:44
RpcCoinDataContainerCnv::m_converter_p1
Muon::RpcCoinDataContainerCnv_p1 m_converter_p1
Definition
RpcCoinDataContainerCnv.h:38
RpcCoinDataContainerCnv::createPersistent
virtual Muon::RpcCoinDataContainerCnv_p1::PERS * createPersistent(Muon::RpcCoinDataContainer *transCont)
Definition
RpcCoinDataContainerCnv.cxx:37
RpcCoinDataContainerCnv::~RpcCoinDataContainerCnv
virtual ~RpcCoinDataContainerCnv()
RpcCoinDataContainerCnv::RpcCoinDataContainerCnv
RpcCoinDataContainerCnv(ISvcLocator *svcloc)
Definition
RpcCoinDataContainerCnv.cxx:17
T_AthenaPoolCustomCnv< Muon::RpcCoinDataContainer, Muon::RpcCoinDataContainerCnv_p1::PERS >::compareClassGuid
virtual bool compareClassGuid(const Token *token, const Guid &clid) const
T_AthenaPoolCustomCnv< Muon::RpcCoinDataContainer, Muon::RpcCoinDataContainerCnv_p1::PERS >::initialize
virtual StatusCode initialize()
T_AthenaPoolCustomCnv< Muon::RpcCoinDataContainer, Muon::RpcCoinDataContainerCnv_p1::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
Muon::RpcCoinDataContainer
MuonCoinDataContainer< RpcCoinDataCollection > RpcCoinDataContainer
Definition
RpcCoinDataContainer.h:14
Generated on
for ATLAS Offline Software by
1.17.0