ATLAS Offline Software
Loading...
Searching...
No Matches
TrigTauClusterCnv.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 "TrigTauClusterCnv.h"
10
17
27
28
29//create persistent
31{
32 MsgStream mlog(msgSvc(), "TrigTauClusterConverter" );
33 mlog << MSG::DEBUG << "TrigTauClusterCnv::createPersistent" << endmsg;
34
35 TrigTauCluster_PERS *persObj = m_impl->m_TPConverter2.createPersistent( transCont, mlog );
36
37 return persObj;
38
39}
40
41//create transient
43{
44 MsgStream mlog(msgSvc(), "TrigTauClusterConverter" );
45 mlog << MSG::DEBUG << "TrigTauClusterCnv::createTransient " << endmsg;
46
47 static const pool::Guid tlp2_guid("CEDD0095-1134-4CEC-91CC-61028B214F6C");
48 static const pool::Guid tlp1_guid("60C9B591-CE4B-473C-9CB9-8C4F99271D76");
49 static const pool::Guid p0_guid("9B3B6AE8-9CE6-44AB-8B31-8B39FED52607");
50
51 TrigTauCluster *trans_cont(0);
52
53 if( compareClassGuid(tlp2_guid) ) {
54
55 mlog << MSG::DEBUG << "TrigTauClusterCnv::reading tlp2 persistent object" << endmsg;
56 std::unique_ptr< TrigTauCluster_tlp2 > col_vect( this->poolReadObject< TrigTauCluster_tlp2 >() );
57 trans_cont = m_impl->m_TPConverter2.createTransient( col_vect.get(), mlog );
58
59 }
60 else if( compareClassGuid(tlp1_guid) ) {
61
62 mlog << MSG::DEBUG << "TrigTauClusterCnv::reading tlp1 persistent object" << endmsg;
63 std::unique_ptr< TrigTauCluster_tlp1 > col_vect( this->poolReadObject< TrigTauCluster_tlp1 >() );
64 trans_cont = m_impl->m_TPConverter1.createTransient( col_vect.get(), mlog );
65
66 }
67 else if( compareClassGuid(p0_guid) ) {
68
69 mlog << MSG::DEBUG << "TrigTauClusterCnv::reading p0 persistent object" << endmsg;
70 // old version from before TP separation, just return it
71 trans_cont = this->poolReadObject<TrigTauCluster>();
72
73 } else {
74
75 throw std::runtime_error("Unsupported persistent version of Data container");
76 }
77
78 return trans_cont;
79}
#define endmsg
TrigTauCluster_tlp2 TrigTauCluster_PERS
virtual bool compareClassGuid(const Guid &clid) const
Compatibility for old converter classes that don't get passed the key.
TrigTauClusterCnv_tlp1 m_TPConverter1
TrigTauClusterCnv_tlp2 m_TPConverter2
TrigTauCluster * createTransient()
TrigTauCluster_PERS * createPersistent(TrigTauCluster *transCont)
TrigTauClusterCnv_impl * m_impl
TrigTauClusterCnv(ISvcLocator *svcloc)
Class with calibrated variables for tau clustering.