ATLAS Offline Software
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 
12 {
13 public:
16 };
17 
21 {
22 }
24 {
25  delete m_impl;
26 }
27 
28 
29 //create persistent
31 {
32  MsgStream mlog(msgSvc(), "TrigTauClusterConverter" );
33  mlog << MSG::DEBUG << "TrigTauClusterCnv::createPersistent" << endmsg;
34 
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 }
TrigTauClusterCnv_impl::m_TPConverter1
TrigTauClusterCnv_tlp1 m_TPConverter1
Definition: TrigTauClusterCnv.cxx:14
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
TrigTauClusterCnv_tlp2
Definition: TrigTauClusterCnv_tlp2.h:26
TrigTauCluster
Class with calibrated variables for tau clustering.
Definition: TrigTauCluster.h:33
TrigTauClusterCnv::createPersistent
TrigTauCluster_PERS * createPersistent(TrigTauCluster *transCont)
Definition: TrigTauClusterCnv.cxx:30
TrigTauCluster_tlp2
Definition: TrigTauCluster_tlp2.h:23
TrigTauCluster_tlp2.h
TrigTauClusterCnv_tlp2.h
pool::Guid
::Guid Guid
Definition: T_AthenaPoolCustCnv.h:19
TrigTauCluster_tlp1.h
TopLevelTPConverter::createTransient
TRANS * createTransient(MsgStream &log)
Create transient representation of the persistent object known to this converter.
Definition: TopLevelTPConverter.h:62
TrigTauClusterCnv_tlp1.h
python.InDetPriVxFinderConfig.mlog
mlog
Definition: InDetPriVxFinderConfig.py:134
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
T_AthenaPoolCustomCnv
Compatibility for old converter classes that don't get passed the key.
Definition: T_AthenaPoolCustomCnv.h:132
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
TrigTauClusterCnv_tlp1
Definition: TrigTauClusterCnv_tlp1.h:28
TrigTauClusterCnv::~TrigTauClusterCnv
~TrigTauClusterCnv()
Definition: TrigTauClusterCnv.cxx:23
TrigTauClusterCnv.h
TrigTauClusterCnv::createTransient
TrigTauCluster * createTransient()
Definition: TrigTauClusterCnv.cxx:42
DEBUG
#define DEBUG
Definition: page_access.h:11
TrigTauClusterCnv::m_impl
TrigTauClusterCnv_impl * m_impl
Definition: TrigTauClusterCnv.h:46
TrigTauClusterCnv::TrigTauClusterCnv
TrigTauClusterCnv(ISvcLocator *svcloc)
Definition: TrigTauClusterCnv.cxx:18
TopLevelTPConverter::createPersistent
virtual TL_PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of transObj.
Definition: TopLevelTPConverter.h:110
TrigTauClusterCnv_impl::m_TPConverter2
TrigTauClusterCnv_tlp2 m_TPConverter2
Definition: TrigTauClusterCnv.cxx:15
T_AthenaPoolCustCnv< TrigTauCluster, TrigTauCluster_PERS >::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
TrigTauClusterCnv_impl
Definition: TrigTauClusterCnv.cxx:12