ATLAS Offline Software
TrigMonEventCollectionCnv.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 
9 
11 {
12 public:
15 };
16 
17 //---------------------------------------------------------------------------------------------
20  m_log(new MsgStream(msgSvc(), "TrigMonEventCollectionCnv")),
22 {
23 }
24 
25 //---------------------------------------------------------------------------------------------
27 {
28  delete m_log;
29  delete m_impl;
30 }
31 
32 //---------------------------------------------------------------------------------------------
33 //create persistent
35 {
36  (*m_log) << MSG::DEBUG << "TrigMonEventCollectionCnv::createPersistent" << endmsg;
37 
39  return persObj;
40 }
41 
42 //---------------------------------------------------------------------------------------------
43 //createTransient
45 {
46  (*m_log) << MSG::DEBUG << "TrigMonEventCollectionCnv::createTransient " << endmsg;
47 
48  static const pool::Guid tlp1_guid("F224B21A-0CE8-40F1-B88B-027DA832A2A5");
49  static const pool::Guid p1_guid("9A0D41EB-9A40-42A1-8CDA-C80845FC7271");
50 
51  TrigMonEventCollection *trans_obj(0);
52 
53  if( compareClassGuid(tlp1_guid) ) {
54 
55  (*m_log) << MSG::DEBUG << "TrigMonEventCollectionCnv::reading tlp1 persistent object" << endmsg;
56  std::unique_ptr< TrigMonEventCollection_tlp1 > col_vect( this->poolReadObject< TrigMonEventCollection_tlp1 >() );
57  (*m_log) << MSG::DEBUG << "TrigMonEventCollectionCnv::reading tlp1 persistent object pointer" << col_vect.get() << endmsg;
58  trans_obj = m_impl->m_TPConverter_tlp1.createTransient(col_vect.get(), *m_log);
59  }
60  else if( compareClassGuid(p1_guid) ) {
61 
62  (*m_log) << MSG::DEBUG << "TrigMonEventCollectionCnv::reading p1 persistent object" << endmsg;
63  std::unique_ptr< TrigMonEventCollection_p1 > col_vect( this->poolReadObject< TrigMonEventCollection_p1 >() );
64  (*m_log) << MSG::DEBUG << "TrigMonEventCollectionCnv::reading p1 persistent object pointer" << col_vect.get() << endmsg;
65  trans_obj = m_impl->m_TPConverter.createTransient(col_vect.get(), *m_log);
66  }
67  else {
68  throw std::runtime_error("Unsupported persistent version of TrigMonEventCollection");
69  }
70 
71  return trans_obj;
72 }
TrigMonEventCollectionCnv::TrigMonEventCollectionCnv
TrigMonEventCollectionCnv(ISvcLocator *svcloc)
Definition: TrigMonEventCollectionCnv.cxx:18
TrigMonEventCollectionCnv.h
TrigMonEventCollectionCnv_impl::m_TPConverter_tlp1
TrigMonEventCollectionCnv_tlp1 m_TPConverter_tlp1
Definition: TrigMonEventCollectionCnv.cxx:14
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
CSV_InDetExporter.new
new
Definition: CSV_InDetExporter.py:145
TrigMonEventCollectionCnv_tlp1.h
TrigMonEventCollectionCnv::createTransient
TrigMonEventCollection * createTransient()
Definition: TrigMonEventCollectionCnv.cxx:44
TrigMonEventCollectionCnv_impl
Definition: TrigMonEventCollectionCnv.cxx:11
TrigMonEventCollectionCnv_impl::m_TPConverter
TrigMonEventCollectionCnv_p1 m_TPConverter
Definition: TrigMonEventCollectionCnv.cxx:13
TrigMonEventCollection_tlp1
Definition: TrigMonEventCollection_tlp1.h:20
pool::Guid
::Guid Guid
Definition: T_AthenaPoolCustCnv.h:19
TopLevelTPConverter::createTransient
TRANS * createTransient(MsgStream &log)
Create transient representation of the persistent object known to this converter.
Definition: TopLevelTPConverter.h:62
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
TrigMonEventCollectionCnv::~TrigMonEventCollectionCnv
virtual ~TrigMonEventCollectionCnv()
Definition: TrigMonEventCollectionCnv.cxx:26
TrigMonEventCollection
Definition: TrigMonEventCollection.h:11
TrigMonEventCollectionCnv::createPersistent
TrigMonEventCollection_PERS * createPersistent(TrigMonEventCollection *transObj)
Definition: TrigMonEventCollectionCnv.cxx:34
TrigMonEventCollectionCnv_p1
Definition: TrigMonEventCollectionCnv_p1.h:18
TrigMonEventCollectionCnv_tlp1
Definition: TrigMonEventCollectionCnv_tlp1.h:16
TrigMonEventCollectionCnv_p1.h
DEBUG
#define DEBUG
Definition: page_access.h:11
TrigMonEventCollectionCnv::m_impl
TrigMonEventCollectionCnv_impl * m_impl
Definition: TrigMonEventCollectionCnv.h:35
TopLevelTPConverter::createPersistent
virtual TL_PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of transObj.
Definition: TopLevelTPConverter.h:110
T_AthenaPoolCustCnv< TrigMonEventCollection, TrigMonEventCollection_PERS >::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
TrigMonEventCollectionCnv::m_log
MsgStream * m_log
Definition: TrigMonEventCollectionCnv.h:34