ATLAS Offline Software
TrigRNNOutputContainerCnv.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
7 
8 //createPersistent
10 {
11  MsgStream mlog(msgSvc(), "TrigRNNOutputContainerConverter" );
12 
13  mlog << MSG::DEBUG << "TrigRNNOutputContainerCnv::createPersistent called" << endmsg;
14 
16 
17  return p_Cont;
18 
19 }//end of create persistent method
20 
21 
22 //createTransient
24 {
25  MsgStream mlog(msgSvc(), "TrigRNNOutputContainerConverter" );
26 
27  mlog << MSG::DEBUG << "TrigRNNOutputContainerCnv::createTransient called" << endmsg;
28 
29  static const pool::Guid tr_guid("FED72B55-6275-DE11-8F1B-000423DD5A1A");
30  static const pool::Guid tlp1_guid("86A89E9D-F776-DE11-B65D-000423DD5A1A");
31  static const pool::Guid p2_guid("B10FA1AF-F38F-4025-83C4-3A83A3F3AE71");
32 
33  if( compareClassGuid( p2_guid ) ){
34  std::unique_ptr< TrigRNNOutputContainer_p2 > col_vect( poolReadObject< TrigRNNOutputContainer_p2 >() );
35  // std::cout << "Reading IMFC p2" << std::endl;
36  return m_converter.createTransient( col_vect.get(), mlog ) ;
37  } else if ( compareClassGuid( tlp1_guid ) ) {
38  std::unique_ptr< TrigRNNOutputContainer_tlp1 > col_vect( poolReadObject< TrigRNNOutputContainer_tlp1 >() );
39  return m_converter_tlp1.createTransient( col_vect.get(), mlog );
40  } else if (compareClassGuid(tr_guid)) {
41  // regular object from before the T/P separation
42  return poolReadObject<TrigRNNOutputContainer>();
43  } else
44  throw std::runtime_error( "Unsupported persistent version of TrigRNNOutputContainer" );
45 
46 }//end of create transient method
TrigRNNOutputContainerCnv::m_converter
TrigRNNOutputContainerCnv_p2 m_converter
Definition: TrigRNNOutputContainerCnv.h:35
TPPolyCnvBase::createTransient
virtual TRANS * createTransient(const PERS *persObj, MsgStream &log)
Create transient representation of a persistent object.
TrigRNNOutputContainerCnv::createPersistent
virtual TrigRNNOutputContainer_PERS * createPersistent(TrigRNNOutputContainer *transObj)
Definition: TrigRNNOutputContainerCnv.cxx:9
TrigRNNOutputContainerCnv.h
TrigRNNOutputContainerCnv::createTransient
virtual TrigRNNOutputContainer * createTransient()
Definition: TrigRNNOutputContainerCnv.cxx:23
TPAbstractPolyCnvBase::createPersistent
virtual PERS * createPersistent(const TRANS *transObj, MsgStream &log)
Create persistent representation of a transient object.
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
python.InDetPriVxFinderConfig.mlog
mlog
Definition: InDetPriVxFinderConfig.py:134
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
TrigRNNOutputContainer_p2.h
TrigRNNOutputContainer
Definition: Trigger/TrigEvent/TrigCaloEvent/TrigCaloEvent/TrigRNNOutputContainer.h:13
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
DEBUG
#define DEBUG
Definition: page_access.h:11
TrigRNNOutputContainer_p2
Definition: TrigRNNOutputContainer_p2.h:10
T_AthenaPoolCustCnv::compareClassGuid
virtual bool compareClassGuid(const Guid &clid) const
Compare POOL class GUID with the one of the object being read.
TrigRNNOutputContainerCnv::m_converter_tlp1
TrigRNNOutputContainerCnv_tlp1 m_converter_tlp1
Definition: TrigRNNOutputContainerCnv.h:34