90#ifndef ROOTCONVERSIONS_TVIRTUALCONVERTER_H
91#define ROOTCONVERSIONS_TVIRTUALCONVERTER_H
141 const std::string& trans_cls,
142 const std::string& pers_cls);
154 const std::string& pers_cls);
202 virtual void ConvertVoid (
void* transobj,
const void* persobj) = 0;
217 virtual void ReadBuffer(TBuffer& b,
void* obj, Version_t version,
218 UInt_t R__S, UInt_t R__c);
226 static TClass*
ToClass (
const std::string& name);
234 static TClass*
ToClass (
const std::type_info&
id);
282template <
class TTrans,
class TPers>
298 TClass* pers_cls = 0);
310 TClass* trans_cls = 0,
311 TClass* pers_cls = 0);
332 virtual void Convert (TTrans* transobj,
const TPers* persobj) = 0;
virtual void Convert(TTrans *transobj, const TPers *persobj)=0
Do the conversion.
TVirtualConverter_T(TClass *trans_cls=0, TClass *pers_cls=0)
Constructor, with class pointers.
virtual void ConvertVoid(void *transobj, const void *persobj)
Do the conversion.
TVirtualConverter_T(UInt_t checksum, TClass *trans_cls=0, TClass *pers_cls=0)
Constructor, with checksum and class pointers.
virtual void ReadBuffer(TBuffer &b, void *obj, Version_t version, UInt_t R__S, UInt_t R__c)
Read object in non-split mode.
TClass * fPersClass
The declared persistent class.
TClass * GetTransClass()
Return the transient class, to which we're converting.
virtual void * NewPersObj()
Create a new instance of the persistent class.
int fOldLast
Used by CheckStreamInfos: the length of the streamerinfo list that we saw on the last CheckStreamInfo...
virtual ~TVirtualConverter()
Destructor.
TVirtualConverter()
Default constructor.
virtual void DeletePersObj(void *persobj)
Destroy an instance of the persistent class.
TVirtualConverter(UInt_t checksum, TClass *trans_cls, TClass *pers_cls)
Constructor, with checksum and class pointers.
void CheckStreamInfos()
Helper to allow for automatic schema evolution for persistent classes.
int GetCheckSum() const
Return the checksum of the class from which we're converting.
void SetCtorInfo(UInt_t checksum, TClass *trans_cls, TClass *pers_cls)
Set the parameters that would normally be passed to the constructor.
virtual void ConvertVoid(void *transobj, const void *persobj)=0
Do the conversion.
TClass * GetPersClass()
Return the persistent class, from which we're converting.
static TClass * ToClass(const std::string &name)
Helper to convert a class name to a Root class pointer.
void * fPersObj
The temporary persistent object instance, used for conversions (in non-split mode).
TClass * fTransClass
The declared transient class.
UInt_t fCheckSum
The declared checksum.
void CheckClasses()
Helper to check that the classes have been defined properly.