 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ATHENAPOOLCNVSVC_T_ATHENAPOOLEXTENDCNV_H
6 #define ATHENAPOOLCNVSVC_T_ATHENAPOOLEXTENDCNV_H
21 template <
class TRANS,
class PERS>
53 virtual std::unique_ptr<const Token>
writeObject(
const std::string&
key,
const std::string&
output)
override;
68 virtual void setToken(
const std::string& token)
override;
86 virtual const std::string
name()
const override;
P * poolReadObject()
Read object of type P.
virtual void readObjectFromPool(const std::string &token)=0
Read the persistent object from POOL.
virtual BaseType * baseAthenaPoolCnv()
return the original AthenaPool converter this one was cloned from if not cloned this returns self if ...
Compatibility for old converter classes that don't get passed the key.
This class is used to add functionality to a standard AthenaConverter.
virtual void readObject(const std::string &token) override
T_AthenaPoolCustomCnv< TRANS, PERS > BaseType
his file contains the class definition for the templated T_AthenaPoolCustomCnv class.
Abstract factory to create the converter.
BaseType * m_originalExtendingCnv
pointer to the original Gaudi converter - only this one is registered in the framework and has to be ...
Base class for top-level TP converters.
virtual PERS * createPersistent(TRANS *) override
no-op
virtual std::unique_ptr< const Token > writeObject(const std::string &key, const std::string &output) override
Write the persistent object to POOL.
virtual void wasClonedFrom(AthenaConverterTLPExtension *orig_converter) override
remember the original converter this one was cloned from
void poolReadObject(TopLevelTPCnvBase &tlp_converter)
Read object of type P (plus all extending objects) using the indicated top-level TP converter.
virtual TRANS * createTransient() override
T_AthenaPoolExtendingCnv(ISvcLocator *svcloc)
Constructor.
virtual bool needsCloning() const override
tells if this converter needs to be cloned (true after the converter has been registered once already...
virtual TopLevelTPCnvBase * getTopLevelTPCnv() override=0
Return the top level TP converter (which is always used for writing)
virtual void setToken(const std::string &token) override
Set the token (in std::string representation) and classID for the object that will be read next.
This templated class extends T_AthenaPoolCustomCnv to provide additional/chaged functionality for Ath...
virtual const std::string name() const override
Get the name of this converter (anything that identifies it).