5#ifndef ATHENAPOOLCNVSVC_T_ATHENAPOOLCOOLMULTCHANCNV_H
6#define ATHENAPOOLCNVSVC_T_ATHENAPOOLCOOLMULTCHANCNV_H
35template <
class COLL_T,
class ELEM_T,
class ELEM_P = ELEM_T>
46 virtual StatusCode
createObj(IOpaqueAddress* pAddr, DataObject*& pObj)
override;
51 virtual StatusCode
createRep(DataObject* pObj, IOpaqueAddress*& pAddr)
override;
56 virtual StatusCode
fillRepRefs(IOpaqueAddress* pAddr, DataObject* pObj)
override;
64 (COLL_T* obj, IOpaqueAddress*& pAddr,
66 std::unique_ptr<Token>& token);
107 virtual void setToken(
const std::string& token)
override final;
120 virtual StatusCode
transToPers(COLL_T* obj, ELEM_T*& persObj)
override;
121 virtual StatusCode
persToTrans(COLL_T*& transObj, ELEM_T* obj)
override;
his file contains the class definition for the templated T_AthenaPoolCustCnv class.
This file contains the class definition for the Token class (migrated from POOL).
Abstract factory to create the converter.
This class is a collection of AttributeLists where each one is associated with a channel number.
T_AthenaPoolCoolMultChanCnv(ISvcLocator *svcloc)
Constructor.
virtual StatusCode transToPers(COLL_T *obj, ELEM_T *&persObj) override
Dummy methods not needed here.
StatusCode condMultChanCollImplToObject(const std::string &collImplToken, COLL_T *&obj)
Read in CondAttrListCollImpl and the objects for its tokens, saving them in the output collection.
P * poolReadObject()
Read object of type P.
StatusCode objectToAttrListColl ATLAS_NOT_THREAD_SAFE(COLL_T *obj, IOpaqueAddress *&pAddr, CondAttrListCollection *&attrListColl, std::unique_ptr< Token > &token)
Write out objects stored in "obj" into POOL and save the tokens in a CondAttrListCollection,...
ELEM_T * poolReadObject()
virtual ELEM_P * createPersistent(ELEM_T *obj)
method to be implemented by the developer.
StatusCode attrListCollToObject(CondAttrListCollection *attrListColl, COLL_T *&obj)
Read in objects from POOL for the tokens stored CondAttrListCollection and save the objects in the ou...
virtual StatusCode fillRepRefs(IOpaqueAddress *pAddr, DataObject *pObj) override
Create a POOL persistent representation for a transient object.
virtual StatusCode createObj(IOpaqueAddress *pAddr, DataObject *&pObj) override
Create a transient object from a POOL persistent representation.
virtual void setToken(const std::string &token) override final
specialized version that adds persistency contextID to tokens (for reading)
virtual StatusCode createRep(DataObject *pObj, IOpaqueAddress *&pAddr) override
Create a POOL persistent representation for a transient object.
virtual ELEM_T * createTransient()
method to be implemented by the developer.
virtual StatusCode persToTrans(COLL_T *&transObj, ELEM_T *obj) override
T_AthenaPoolCustCnv(ISvcLocator *pSvcLocator, const char *name=nullptr)