ATLAS Offline Software
Public Types | Public Member Functions | Private Attributes | List of all members
AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > > Class Template Reference

Helper for calling a TP converter from an Athena converter. More...

#include <TPCnvElt.h>

Collaboration diagram for AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >:

Public Types

typedef TRANS Trans_t
 Make available the persistent and transient types. More...
 
typedef TRANS Pers_t
 

Public Member Functions

 TPCnvElt ()
 Constructor. More...
 
std::unique_ptr< Trans_tcreateTransient (CNV &parent, const std::string &key, MsgStream &msg)
 Read the persistent object and convert it to transient. More...
 
bool persToTrans (CNV &parent, Trans_t *trans, const std::string &key, MsgStream &msg)
 Read the persistent object and convert it to transient. More...
 

Private Attributes

Guid m_guid
 GUID for the persistent class we read. More...
 

Detailed Description

template<class CNV, class TRANS>
class AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >

Helper for calling a TP converter from an Athena converter.

Specialization for the case of no conversion.

Definition at line 118 of file TPCnvElt.h.

Member Typedef Documentation

◆ Pers_t

template<class CNV , class TRANS >
typedef TRANS AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >::Pers_t

Definition at line 123 of file TPCnvElt.h.

◆ Trans_t

template<class CNV , class TRANS >
typedef TRANS AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >::Trans_t

Make available the persistent and transient types.

Definition at line 122 of file TPCnvElt.h.

Constructor & Destructor Documentation

◆ TPCnvElt()

template<class CNV , class TRANS >
AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >::TPCnvElt ( )

Constructor.

Member Function Documentation

◆ createTransient()

template<class CNV , class TRANS >
std::unique_ptr<Trans_t> AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >::createTransient ( CNV &  parent,
const std::string &  key,
MsgStream &  msg 
)

Read the persistent object and convert it to transient.

Parameters
parentThe top-level pool converter object.
keyThe SG key of the object being read.
msgMsgStream for error reporting.

Returns a newly-allocated object. If the type of the persistent object on the file does not match the type that this converter handles, return nullptr. Other errors are reported by raising exceptions.

◆ persToTrans()

template<class CNV , class TRANS >
bool AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >::persToTrans ( CNV &  parent,
Trans_t trans,
const std::string &  key,
MsgStream &  msg 
)

Read the persistent object and convert it to transient.

Parameters
parentThe top-level pool converter object.
transThe transient object to modify.
keyThe SG key of the object being read.
msgMsgStream for error reporting.

Overwrites the provided transient object. If the type of the persistent object on the file does not match the type that this converter handles, returns false. Other errors are reported by raising exceptions.

Member Data Documentation

◆ m_guid

template<class CNV , class TRANS >
Guid AthenaPoolCnvSvc::TPCnvElt< CNV, T_TPCnvNull< TRANS > >::m_guid
private

GUID for the persistent class we read.

Definition at line 164 of file TPCnvElt.h.


The documentation for this class was generated from the following file: