Logo ROOT   6.14/05
Reference Guide
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
TBufferXML Class Reference

Class for serializing/deserializing object to/from xml.

The simple way to create XML representation is:

TNamed *obj = new TNamed("name", "title");

Produced xml can be decoded into new object:

TNamed *obj2 = nullptr;

TBufferXML class uses streaming mechanism, provided by ROOT system, therefore most of ROOT and user classes can be stored to xml. There are limitations for complex objects like TTree, which can not be converted to xml.

Definition at line 35 of file TBufferXML.h.

Public Member Functions

 TBufferXML (TBuffer::EMode mode)
 Creates buffer object to serialize/deserialize data to/from xml. More...
 
 TBufferXML (TBuffer::EMode mode, TXMLFile *file)
 Creates buffer object to serialize/deserialize data to/from xml. More...
 
virtual ~TBufferXML ()
 Destroy xml buffer. More...
 
virtual void ClassBegin (const TClass *, Version_t=-1)
 Should be called at the beginning of custom class streamer. More...
 
virtual void ClassEnd (const TClass *)
 Should be called at the end of custom streamer See TBufferXML::ClassBegin for more details. More...
 
virtual void ClassMember (const char *name, const char *typeName=nullptr, Int_t arrsize1=-1, Int_t arrsize2=-1)
 Method indicates name and typename of class member, which should be now streamed in custom streamer. More...
 
virtual void DecrementLevel (TVirtualStreamerInfo *)
 Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and decrease level in xml structure. More...
 
virtual TVirtualStreamerInfoGetInfo ()
 Return current streamer info element. More...
 
Int_t GetIOVersion () const
 
virtual void IncrementLevel (TVirtualStreamerInfo *)
 Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and indent new level in xml structure. More...
 
virtual Int_t ReadArray (Bool_t *&b)
 Read array of Bool_t from buffer. More...
 
virtual Int_t ReadArray (Char_t *&c)
 Read array of Char_t from buffer. More...
 
virtual Int_t ReadArray (UChar_t *&c)
 Read array of UChar_t from buffer. More...
 
virtual Int_t ReadArray (Short_t *&h)
 Read array of Short_t from buffer. More...
 
virtual Int_t ReadArray (UShort_t *&h)
 Read array of UShort_t from buffer. More...
 
virtual Int_t ReadArray (Int_t *&i)
 Read array of Int_t from buffer. More...
 
virtual Int_t ReadArray (UInt_t *&i)
 Read array of UInt_t from buffer. More...
 
virtual Int_t ReadArray (Long_t *&l)
 Read array of Long_t from buffer. More...
 
virtual Int_t ReadArray (ULong_t *&l)
 Read array of ULong_t from buffer. More...
 
virtual Int_t ReadArray (Long64_t *&l)
 Read array of Long64_t from buffer. More...
 
virtual Int_t ReadArray (ULong64_t *&l)
 Read array of ULong64_t from buffer. More...
 
virtual Int_t ReadArray (Float_t *&f)
 Read array of Float_t from buffer. More...
 
virtual Int_t ReadArray (Double_t *&d)
 Read array of Double_t from buffer. More...
 
virtual void ReadBool (Bool_t &b)
 Reads Bool_t value from buffer. More...
 
virtual void ReadChar (Char_t &c)
 Reads Char_t value from buffer. More...
 
virtual void ReadCharP (Char_t *c)
 Reads array of characters from buffer. More...
 
virtual void ReadCharStar (char *&s)
 Read a char* string. More...
 
virtual TClassReadClass (const TClass *cl=nullptr, UInt_t *objTag=nullptr)
 Function to read class from buffer, used in old-style streamers. More...
 
virtual void ReadDouble (Double_t &d)
 Reads Double_t value from buffer. More...
 
virtual void ReadFastArray (Bool_t *b, Int_t n)
 Read array of Bool_t from buffer. More...
 
virtual void ReadFastArray (Char_t *c, Int_t n)
 Read array of Char_t from buffer if nodename==CharStar, read all array as string. More...
 
virtual void ReadFastArray (UChar_t *c, Int_t n)
 Read array of UChar_t from buffer. More...
 
virtual void ReadFastArray (Short_t *h, Int_t n)
 Read array of Short_t from buffer. More...
 
virtual void ReadFastArray (UShort_t *h, Int_t n)
 Read array of UShort_t from buffer. More...
 
virtual void ReadFastArray (Int_t *i, Int_t n)
 Read array of Int_t from buffer. More...
 
virtual void ReadFastArray (UInt_t *i, Int_t n)
 Read array of UInt_t from buffer. More...
 
virtual void ReadFastArray (Long_t *l, Int_t n)
 Read array of Long_t from buffer. More...
 
virtual void ReadFastArray (ULong_t *l, Int_t n)
 Read array of ULong_t from buffer. More...
 
virtual void ReadFastArray (Long64_t *l, Int_t n)
 Read array of Long64_t from buffer. More...
 
virtual void ReadFastArray (ULong64_t *l, Int_t n)
 Read array of ULong64_t from buffer. More...
 
virtual void ReadFastArray (Float_t *f, Int_t n)
 Read array of Float_t from buffer. More...
 
virtual void ReadFastArray (Double_t *d, Int_t n)
 Read array of Double_t from buffer. More...
 
virtual void ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr)
 Read an array of 'n' objects from the I/O buffer. More...
 
virtual void ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr)
 Read an array of 'n' objects from the I/O buffer. More...
 
virtual void ReadFastArrayString (Char_t *c, Int_t n)
 Read array of n characters from the I/O buffer. More...
 
virtual void ReadFloat (Float_t &f)
 Reads Float_t value from buffer. More...
 
virtual void ReadInt (Int_t &i)
 Reads Int_t value from buffer. More...
 
virtual void ReadLong (Long_t &l)
 Reads Long_t value from buffer. More...
 
virtual void ReadLong64 (Long64_t &l)
 Reads Long64_t value from buffer. More...
 
virtual voidReadObjectAny (const TClass *clCast)
 Read object from buffer. Only used from TBuffer. More...
 
virtual void ReadShort (Short_t &s)
 Reads Short_t value from buffer. More...
 
virtual Int_t ReadStaticArray (Bool_t *b)
 Read array of Bool_t from buffer. More...
 
virtual Int_t ReadStaticArray (Char_t *c)
 Read array of Char_t from buffer. More...
 
virtual Int_t ReadStaticArray (UChar_t *c)
 Read array of UChar_t from buffer. More...
 
virtual Int_t ReadStaticArray (Short_t *h)
 Read array of Short_t from buffer. More...
 
virtual Int_t ReadStaticArray (UShort_t *h)
 Read array of UShort_t from buffer. More...
 
virtual Int_t ReadStaticArray (Int_t *i)
 Read array of Int_t from buffer. More...
 
virtual Int_t ReadStaticArray (UInt_t *i)
 Read array of UInt_t from buffer. More...
 
virtual Int_t ReadStaticArray (Long_t *l)
 Read array of Long_t from buffer. More...
 
virtual Int_t ReadStaticArray (ULong_t *l)
 Read array of ULong_t from buffer. More...
 
virtual Int_t ReadStaticArray (Long64_t *l)
 Read array of Long64_t from buffer. More...
 
virtual Int_t ReadStaticArray (ULong64_t *l)
 Read array of ULong64_t from buffer. More...
 
virtual Int_t ReadStaticArray (Float_t *f)
 Read array of Float_t from buffer. More...
 
virtual Int_t ReadStaticArray (Double_t *d)
 Read array of Double_t from buffer. More...
 
virtual void ReadStdString (std::string *s)
 Reads a std::string. More...
 
virtual void ReadTString (TString &s)
 Reads a TString. More...
 
virtual void ReadUChar (UChar_t &c)
 Reads UChar_t value from buffer. More...
 
virtual void ReadUInt (UInt_t &i)
 Reads UInt_t value from buffer. More...
 
virtual void ReadULong (ULong_t &l)
 Reads ULong_t value from buffer. More...
 
virtual void ReadULong64 (ULong64_t &l)
 Reads ULong64_t value from buffer. More...
 
virtual void ReadUShort (UShort_t &s)
 Reads UShort_t value from buffer. More...
 
virtual Version_t ReadVersion (UInt_t *start=nullptr, UInt_t *bcnt=nullptr, const TClass *cl=nullptr)
 Read version value from buffer. More...
 
void SetIOVersion (Int_t v)
 
virtual void SetStreamerElementNumber (TStreamerElement *elem, Int_t comp_type)
 Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and add/verify next element of xml structure This calls allows separate data, correspondent to one class member, from another. More...
 
virtual void SkipObjectAny ()
 Skip any kind of object from buffer Actually skip only one node on current level of xml structure. More...
 
virtual void StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=nullptr)
 Stream object to/from buffer. More...
 
virtual void WriteArray (const Bool_t *b, Int_t n)
 Write array of Bool_t to buffer. More...
 
virtual void WriteArray (const Char_t *c, Int_t n)
 Write array of Char_t to buffer. More...
 
virtual void WriteArray (const UChar_t *c, Int_t n)
 Write array of UChar_t to buffer. More...
 
virtual void WriteArray (const Short_t *h, Int_t n)
 Write array of Short_t to buffer. More...
 
virtual void WriteArray (const UShort_t *h, Int_t n)
 Write array of UShort_t to buffer. More...
 
virtual void WriteArray (const Int_t *i, Int_t n)
 Write array of Int_ to buffer. More...
 
virtual void WriteArray (const UInt_t *i, Int_t n)
 Write array of UInt_t to buffer. More...
 
virtual void WriteArray (const Long_t *l, Int_t n)
 Write array of Long_t to buffer. More...
 
virtual void WriteArray (const ULong_t *l, Int_t n)
 Write array of ULong_t to buffer. More...
 
virtual void WriteArray (const Long64_t *l, Int_t n)
 Write array of Long64_t to buffer. More...
 
virtual void WriteArray (const ULong64_t *l, Int_t n)
 Write array of ULong64_t to buffer. More...
 
virtual void WriteArray (const Float_t *f, Int_t n)
 Write array of Float_t to buffer. More...
 
virtual void WriteArray (const Double_t *d, Int_t n)
 Write array of Double_t to buffer. More...
 
virtual void WriteBool (Bool_t b)
 Writes Bool_t value to buffer. More...
 
virtual void WriteChar (Char_t c)
 Writes Char_t value to buffer. More...
 
virtual void WriteCharP (const Char_t *c)
 Writes array of characters to buffer. More...
 
virtual void WriteCharStar (char *s)
 Write a char* string. More...
 
virtual void WriteClass (const TClass *cl)
 Function to write class into buffer, used in old-style streamers. More...
 
virtual void WriteDouble (Double_t d)
 Writes Double_t value to buffer. More...
 
virtual void WriteFastArray (const Bool_t *b, Int_t n)
 Write array of Bool_t to buffer. More...
 
virtual void WriteFastArray (const Char_t *c, Int_t n)
 Write array of Char_t to buffer If array does not include any special characters, it will be reproduced as CharStar node with string as attribute. More...
 
virtual void WriteFastArray (const UChar_t *c, Int_t n)
 Write array of UChar_t to buffer. More...
 
virtual void WriteFastArray (const Short_t *h, Int_t n)
 Write array of Short_t to buffer. More...
 
virtual void WriteFastArray (const UShort_t *h, Int_t n)
 Write array of UShort_t to buffer. More...
 
virtual void WriteFastArray (const Int_t *i, Int_t n)
 Write array of Int_t to buffer. More...
 
virtual void WriteFastArray (const UInt_t *i, Int_t n)
 Write array of UInt_t to buffer. More...
 
virtual void WriteFastArray (const Long_t *l, Int_t n)
 Write array of Long_t to buffer. More...
 
virtual void WriteFastArray (const ULong_t *l, Int_t n)
 Write array of ULong_t to buffer. More...
 
virtual void WriteFastArray (const Long64_t *l, Int_t n)
 Write array of Long64_t to buffer. More...
 
virtual void WriteFastArray (const ULong64_t *l, Int_t n)
 Write array of ULong64_t to buffer. More...
 
virtual void WriteFastArray (const Float_t *f, Int_t n)
 Write array of Float_t to buffer. More...
 
virtual void WriteFastArray (const Double_t *d, Int_t n)
 Write array of Double_t to buffer. More...
 
virtual void WriteFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr)
 Write an array of object starting at the address 'start' and of length 'n' the objects in the array are assumed to be of class 'cl'. More...
 
virtual Int_t WriteFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr)
 Write an array of object starting at the address '*start' and of length 'n' the objects in the array are of class 'cl' 'isPreAlloc' indicates whether the data member is marked with '->' Return: More...
 
virtual void WriteFastArrayString (const Char_t *c, Int_t n)
 Write array of n characters into the I/O buffer. More...
 
virtual void WriteFloat (Float_t f)
 Writes Float_t value to buffer. More...
 
virtual void WriteInt (Int_t i)
 Writes Int_t value to buffer. More...
 
virtual void WriteLong (Long_t l)
 Writes Long_t value to buffer. More...
 
virtual void WriteLong64 (Long64_t l)
 Writes Long64_t value to buffer. More...
 
virtual void WriteShort (Short_t s)
 Writes Short_t value to buffer. More...
 
virtual void WriteStdString (const std::string *s)
 Writes a std::string. More...
 
virtual void WriteTString (const TString &s)
 Writes a TString. More...
 
virtual void WriteUChar (UChar_t c)
 Writes UChar_t value to buffer. More...
 
virtual void WriteUInt (UInt_t i)
 Writes UInt_t value to buffer. More...
 
virtual void WriteULong (ULong_t l)
 Writes ULong_t value to buffer. More...
 
virtual void WriteULong64 (ULong64_t l)
 Writes ULong64_t value to buffer. More...
 
virtual void WriteUShort (UShort_t s)
 Writes UShort_t value to buffer. More...
 
virtual UInt_t WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE)
 Copies class version to buffer, but not writes it to xml Version will be written with next I/O operation or will be added as attribute of class tag, created by IncrementLevel call. More...
 
- Public Member Functions inherited from TBufferText
virtual ~TBufferText ()
 destructor More...
 
virtual Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object)
 Read one collection of objects from the buffer using the StreamerInfoLoopAction. More...
 
virtual Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection)
 Read one collection of objects from the buffer using the StreamerInfoLoopAction. More...
 
virtual Int_t ApplySequenceVecPtr (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection)
 Read one collection of objects from the buffer using the StreamerInfoLoopAction. More...
 
virtual Int_t CheckByteCount (UInt_t, UInt_t, const TClass *)
 
virtual Int_t CheckByteCount (UInt_t, UInt_t, const char *)
 
virtual Int_t ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=nullptr)
 Read array of Double32_t from buffer. More...
 
virtual Int_t ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=nullptr)
 Read array of Float16_t from buffer. More...
 
virtual void ReadBaseClass (void *start, TStreamerBase *elem)
 Read data of base class. More...
 
virtual Int_t ReadBuf (void *, Int_t)
 
virtual Int_t ReadClassBuffer (const TClass *, void *, const TClass *=nullptr)
 Deserialize information from a buffer into an object. More...
 
virtual Int_t ReadClassBuffer (const TClass *, void *, Int_t, UInt_t, UInt_t, const TClass *=nullptr)
 Deserialize information from a buffer into an object. More...
 
virtual Int_t ReadClassEmulated (const TClass *, void *, const TClass *=nullptr)
 
virtual void ReadDouble32 (Double_t *d, TStreamerElement *ele=nullptr)
 read a Double32_t from the buffer More...
 
virtual void ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=nullptr)
 read array of Double32_t from buffer More...
 
virtual void ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=nullptr)
 read array of Float16_t from buffer More...
 
virtual void ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue)
 read array of Float16_t from buffer More...
 
virtual void ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue)
 read array of Double32_t from buffer More...
 
virtual void ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits)
 read array of Float16_t from buffer More...
 
virtual void ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits)
 read array of Double32_t from buffer More...
 
virtual void ReadFloat16 (Float_t *f, TStreamerElement *ele=nullptr)
 read a Float16_t from the buffer More...
 
virtual TObjectReadObject (const TClass *)
 
virtual Int_t ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=nullptr)
 Read array of Double32_t from buffer. More...
 
virtual Int_t ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=nullptr)
 Read array of Float16_t from buffer. More...
 
virtual char * ReadString (char *, Int_t)
 
virtual Version_t ReadVersionForMemberWise (const TClass *=nullptr)
 
virtual Version_t ReadVersionNoCheckSum (UInt_t *, UInt_t *)
 
virtual void ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue)
 Read a Double32_t from the buffer when the factor and minimun value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More...
 
virtual void ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue)
 Read a Double32_t from the buffer when the factor and minimun value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More...
 
virtual void ReadWithNbits (Float_t *ptr, Int_t nbits)
 Read a Float16_t from the buffer when the number of bits is specified (explicitly or not) see comments about Float16_t encoding at TBufferFile::WriteFloat16(). More...
 
virtual void ReadWithNbits (Double_t *ptr, Int_t nbits)
 Read a Double32_t from the buffer when the number of bits is specified (explicitly or not) see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More...
 
virtual void SetByteCount (UInt_t, Bool_t=kFALSE)
 
virtual void SkipVersion (const TClass *cl=nullptr)
 Skip class version from I/O buffer. More...
 
virtual void StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=nullptr)
 stream object to/from buffer More...
 
virtual void StreamObject (void *obj, const char *className, const TClass *onFileClass=nullptr)
 stream object to/from buffer More...
 
virtual void StreamObject (TObject *obj)
 
virtual void WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr)
 Write array of Double32_t to buffer. More...
 
virtual void WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=nullptr)
 Write array of Float16_t to buffer. More...
 
virtual void WriteBaseClass (void *start, TStreamerBase *elem)
 Write data of base class. More...
 
virtual void WriteBuf (const void *, Int_t)
 
virtual Int_t WriteClassBuffer (const TClass *cl, void *pointer)
 Function called by the Streamer functions to serialize object at p to buffer b. More...
 
virtual void WriteDouble32 (Double_t *d, TStreamerElement *ele=nullptr)
 write a Double32_t to the buffer More...
 
virtual void WriteFastArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr)
 Write array of Double32_t to buffer. More...
 
virtual void WriteFastArrayFloat16 (const Float_t *d, Int_t n, TStreamerElement *ele=nullptr)
 Write array of Float16_t to buffer. More...
 
virtual void WriteFloat16 (Float_t *f, TStreamerElement *ele=nullptr)
 write a Float16_t to the buffer More...
 
virtual void WriteString (const char *)
 
virtual UInt_t WriteVersionMemberWise (const TClass *, Bool_t=kFALSE)
 
- Public Member Functions inherited from TBufferIO
virtual ~TBufferIO ()
 destructor More...
 
virtual Bool_t CheckObject (const TObject *obj)
 Check if the specified object is already in the buffer. More...
 
virtual Bool_t CheckObject (const void *obj, const TClass *ptrClass)
 Check if the specified object of the specified class is already in the buffer. More...
 
virtual void ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force)
 force writing the TStreamerInfo to the file More...
 
virtual void ForceWriteInfoClones (TClonesArray *a)
 Make sure TStreamerInfo is not optimized, otherwise it will not be possible to support schema evolution in read mode. More...
 
virtual Int_t GetBufferDisplacement () const
 
virtual TProcessIDGetLastProcessID (TRefTable *reftable) const
 Return the last TProcessID in the file. More...
 
virtual Int_t GetMapCount () const
 
virtual void GetMappedObject (UInt_t tag, void *&ptr, TClass *&ClassPtr) const
 Retrieve the object stored in the buffer's object map at 'tag' Set ptr and ClassPtr respectively to the address of the object and a pointer to its TClass. More...
 
virtual UShort_t GetPidOffset () const
 
virtual UInt_t GetTRefExecId ()
 Return the exec id stored in the current TStreamerInfo element. More...
 
virtual Int_t GetVersionOwner () const
 Return the version number of the owner file. More...
 
virtual void InitMap ()
 Create the fMap container and initialize them with the null object. More...
 
virtual void MapObject (const TObject *obj, UInt_t offset=1)
 Add object to the fMap container. More...
 
virtual void MapObject (const void *obj, const TClass *cl, UInt_t offset=1)
 Add object to the fMap container. More...
 
virtual Int_t ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers)
 Interface to TStreamerInfo::ReadBufferClones. More...
 
virtual TProcessIDReadProcessID (UShort_t pidf)
 The TProcessID with number pidf is read from file. More...
 
virtual void Reset ()
 Reset buffer object. Resets map and buffer offset. More...
 
virtual void ResetMap ()
 Delete existing fMap and reset map counter. More...
 
virtual void SetBufferDisplacement ()
 
virtual void SetBufferDisplacement (Int_t skipped)
 
virtual void SetPidOffset (UShort_t offset)
 This offset is used when a key (or basket) is transfered from one file to the other. More...
 
virtual void SetReadParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading. More...
 
virtual void SetWriteParam (Int_t mapsize)
 Set the initial size of the hashtable used to store object and class references during writing. More...
 
virtual void TagStreamerInfo (TVirtualStreamerInfo *info)
 Mark the classindex of the current file as using this TStreamerInfo. More...
 
virtual Int_t WriteClones (TClonesArray *a, Int_t nobjects)
 Interface to TStreamerInfo::WriteBufferClones. More...
 
virtual void WriteObject (const TObject *obj, Bool_t cacheReuse=kTRUE)
 Write object to I/O buffer. More...
 
virtual Int_t WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE)
 Write object to I/O buffer. More...
 
virtual UShort_t WriteProcessID (TProcessID *pid)
 Check if the ProcessID pid is already in the file. More...
 
- Public Member Functions inherited from TBuffer
 TBuffer (EMode mode)
 Create an I/O buffer object. More...
 
 TBuffer (EMode mode, Int_t bufsiz)
 Create an I/O buffer object. More...
 
 TBuffer (EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0)
 Create an I/O buffer object. More...
 
virtual ~TBuffer ()
 Delete an I/O buffer object. More...
 
void AutoExpand (Int_t size_needed)
 Automatically calculate a new size and expand the buffer to fit at least size_needed. More...
 
char * Buffer () const
 
Int_t BufferSize () const
 
void DetachBuffer ()
 
void Expand (Int_t newsize, Bool_t copy=kTRUE)
 Expand (or shrink) the I/O buffer to newsize bytes. More...
 
Int_t GetBufferVersion () const
 
TObjectGetParent () const
 Return pointer to parent of this buffer. More...
 
ReAllocCharFun_t GetReAllocFunc () const
 Return the reallocation method currently used. More...
 
Bool_t IsReading () const
 
Bool_t IsWriting () const
 
Int_t Length () const
 
virtual TVirtualArrayPeekDataCache () const
 Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. More...
 
virtual TVirtualArrayPopDataCache ()
 Pop and Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. More...
 
virtual void PushDataCache (TVirtualArray *)
 Push a new data cache area onto the list of area to be used for temporarily store 'missing' data members. More...
 
virtual void ReadStdString (std::string &s)
 
void SetBuffer (void *buf, UInt_t bufsiz=0, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0)
 Sets a new buffer in an existing TBuffer object. More...
 
void SetBufferOffset (Int_t offset=0)
 
void SetParent (TObject *parent)
 Set parent owning this buffer. More...
 
void SetReadMode ()
 Set buffer in read mode. More...
 
void SetReAllocFunc (ReAllocCharFun_t reallocfunc=0)
 Set which memory reallocation method to use. More...
 
void SetWriteMode ()
 Set buffer in write mode. More...
 
template<class T >
Int_t WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE)
 
virtual void WriteStdString (std::string &s)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Checked and record whether for this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
- Public Member Functions inherited from TXMLSetup
 TXMLSetup ()
 default constructor of TXMLSetup class More...
 
 TXMLSetup (const char *opt)
 creates TXMLSetup object getting values from string More...
 
 TXMLSetup (const TXMLSetup &src)
 copy constructor of TXMLSetup class More...
 
virtual ~TXMLSetup ()
 TXMLSetup class destructor. More...
 
Int_t GetNextRefCounter ()
 
TString GetSetupAsString ()
 return setup values as string More...
 
EXMLLayout GetXmlLayout () const
 
Bool_t IsStoreStreamerInfos () const
 
Bool_t IsUseDtd () const
 
Bool_t IsUseNamespaces () const
 
void PrintSetup ()
 show setup values More...
 
virtual void SetStoreStreamerInfos (Bool_t iConvert=kTRUE)
 
virtual void SetUsedDtd (Bool_t use=kTRUE)
 
virtual void SetUseNamespaces (Bool_t iUseNamespaces=kTRUE)
 
virtual void SetXmlLayout (EXMLLayout layout)
 
const char * XmlClassNameSpaceRef (const TClass *cl)
 produce string which used as reference in class namespace definition More...
 
const char * XmlConvertClassName (const char *name)
 convert class name to exclude any special symbols like ':', '<' '>' ',' and spaces More...
 
const char * XmlGetElementName (const TStreamerElement *el)
 return converted name for TStreamerElement More...
 

Static Public Member Functions

static TObjectConvertFromXML (const char *str, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 Read object from XML, produced by ConvertToXML() method. More...
 
static voidConvertFromXMLAny (const char *str, TClass **cl=nullptr, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 Read object of any class from XML, produced by ConvertToXML() method. More...
 
static TString ConvertToXML (const TObject *obj, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 Converts object, inherited from TObject class, to XML string GenericLayout defines layout choice for XML file UseNamespaces allow XML namespaces. More...
 
static TString ConvertToXML (const void *obj, const TClass *cl, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 Converts any type of object to XML string. More...
 
template<class T >
static Bool_t FromXML (T *&obj, const char *xml, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 
template<class T >
static TString ToXML (const T *obj, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 
- Static Public Member Functions inherited from TBufferText
static void CompactFloatString (char *buf, unsigned len)
 method compress float string, excluding exp and/or move float point More...
 
static const char * ConvertDouble (Double_t v, char *buf, unsigned len, Bool_t not_optimize=kFALSE)
 convert float to string with configured format More...
 
static const char * ConvertFloat (Float_t v, char *buf, unsigned len, Bool_t not_optimize=kFALSE)
 convert float to string with configured format More...
 
static const char * GetDoubleFormat ()
 return current printf format for double members, default "%.14e" More...
 
static const char * GetFloatFormat ()
 return current printf format for float members, default "%e" More...
 
static void SetDoubleFormat (const char *fmt="%.14e")
 set printf format for double members, default "%.14e" use it after SetFloatFormat, which also overwrites format for doubles More...
 
static void SetFloatFormat (const char *fmt="%e")
 set printf format for float/double members, default "%e" to change format only for doubles, use SetDoubleFormat More...
 
- Static Public Member Functions inherited from TBufferIO
static Int_t GetGlobalReadParam ()
 Get default read map size. More...
 
static Int_t GetGlobalWriteParam ()
 Get default write map size. More...
 
static void SetGlobalReadParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading. More...
 
static void SetGlobalWriteParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading. More...
 
- Static Public Member Functions inherited from TBuffer
static TClassGetClass (const std::type_info &typeinfo)
 Forward to TROOT::GetClass(). More...
 
static TClassGetClass (const char *className)
 Forward to TROOT::GetClass(). More...
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Static Public Member Functions inherited from TXMLSetup
static TString DefaultXmlSetup ()
 return default value for XML setup More...
 
static void SetNameSpaceBase (const char *namespacebase)
 set namespace base More...
 

Protected Member Functions

 TBufferXML ()
 Default constructor. More...
 
void BeforeIOoperation ()
 Function is called before any IO operation of TBuffer Now is used to store version value if no proper calls are discovered. More...
 
void CheckVersionBuf ()
 Checks buffer, filled by WriteVersion if next data is arriving, version should be stored in buffer. More...
 
void CreateElemNode (const TStreamerElement *elem)
 Create xml node correspondent to TStreamerElement object. More...
 
XMLNodePointer_t CreateItemNode (const char *name)
 Create item node of specified name. More...
 
Bool_t ExtractPointer (XMLNodePointer_t node, void *&ptr, TClass *&cl)
 Searches for "ptr" attribute and returns pointer to object and class, if "ptr" attribute reference to read object. More...
 
void ExtractReference (XMLNodePointer_t node, const void *ptr, const TClass *cl)
 Analyze if node has "ref" attribute and register it to object map. More...
 
Int_t GetCompressionAlgorithm () const
 
Int_t GetCompressionLevel () const
 
Int_t GetCompressionSettings () const
 
void PerformPostProcessing ()
 Function is converts TObject and TString structures to more compact representation. More...
 
void PerformPreProcessing (const TStreamerElement *elem, XMLNodePointer_t elemnode)
 Function is unpack TObject and TString structures to be able read them from custom streamers of this objects. More...
 
TXMLStackObj * PopStack ()
 Remove one level from xml stack. More...
 
Bool_t ProcessPointer (const void *ptr, XMLNodePointer_t node)
 Add "ptr" attribute to node, if ptr is null or if ptr is pointer on object, which is already saved in buffer Automatically add "ref" attribute to node, where referenced object is stored. More...
 
TXMLStackObj * PushStack (XMLNodePointer_t current, Bool_t simple=kFALSE)
 Add new level to xml stack. More...
 
void SetCompressionAlgorithm (Int_t algorithm=0)
 See comments for function SetCompressionSettings. More...
 
void SetCompressionLevel (Int_t level=1)
 See comments for function SetCompressionSettings. More...
 
void SetCompressionSettings (Int_t settings=1)
 Used to specify the compression level and algorithm. More...
 
void SetXML (TXMLEngine *xml)
 
void ShiftStack (const char *info=nullptr)
 Shift stack node to next. More...
 
TXMLStackObj * Stack (UInt_t depth=0)
 
XMLNodePointer_t StackNode ()
 Return pointer on current xml node. More...
 
Bool_t VerifyAttr (XMLNodePointer_t node, const char *name, const char *value, const char *errinfo=nullptr)
 Checks, that attribute of specified name exists and has specified value. More...
 
Bool_t VerifyElemNode (const TStreamerElement *elem)
 Checks if stack node correspond to TStreamerElement object. More...
 
Bool_t VerifyItemNode (const char *name, const char *errinfo=nullptr)
 Checks, if stack node is item and has specified name. More...
 
Bool_t VerifyNode (XMLNodePointer_t node, const char *name, const char *errinfo=nullptr)
 Check if node has specified name. More...
 
Bool_t VerifyStackAttr (const char *name, const char *value, const char *errinfo=nullptr)
 Checks stack attribute. More...
 
Bool_t VerifyStackNode (const char *name, const char *errinfo=nullptr)
 Check, if stack node has specified name. More...
 
void WorkWithClass (TStreamerInfo *info, const TClass *cl=nullptr)
 Prepares buffer to stream data of specified class. More...
 
void WorkWithElement (TStreamerElement *elem, Int_t comp_type)
 This function is a part of SetStreamerElementNumber method. More...
 
virtual void WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse)
 Write object to buffer. Only used from TBuffer. More...
 
TXMLFileXmlFile ()
 Returns pointer to TXMLFile object. More...
 
voidXmlReadAny (XMLNodePointer_t node, void *obj, TClass **cl)
 Recreate object from xml structure. More...
 
template<typename T >
R__ALWAYS_INLINE Int_t XmlReadArray (T *&arr, bool is_static=false)
 Template method to read array with size attribute If necessary, array is created. More...
 
template<typename T >
R__ALWAYS_INLINE void XmlReadArrayContent (T *arr, Int_t arrsize)
 Template method to read array content. More...
 
void XmlReadBasic (Char_t &value)
 Reads string from current xml node and convert it to Char_t value. More...
 
void XmlReadBasic (Short_t &value)
 Reads string from current xml node and convert it to Short_t value. More...
 
void XmlReadBasic (Int_t &value)
 Reads string from current xml node and convert it to Int_t value. More...
 
void XmlReadBasic (Long_t &value)
 Reads string from current xml node and convert it to Long_t value. More...
 
void XmlReadBasic (Long64_t &value)
 Reads string from current xml node and convert it to Long64_t value. More...
 
void XmlReadBasic (Float_t &value)
 Reads string from current xml node and convert it to Float_t value. More...
 
void XmlReadBasic (Double_t &value)
 Reads string from current xml node and convert it to Double_t value. More...
 
void XmlReadBasic (Bool_t &value)
 Reads string from current xml node and convert it to Bool_t value. More...
 
void XmlReadBasic (UChar_t &value)
 Reads string from current xml node and convert it to UChar_t value. More...
 
void XmlReadBasic (UShort_t &value)
 Reads string from current xml node and convert it to UShort_t value. More...
 
void XmlReadBasic (UInt_t &value)
 Reads string from current xml node and convert it to UInt_t value. More...
 
void XmlReadBasic (ULong_t &value)
 Reads string from current xml node and convert it to ULong_t value. More...
 
void XmlReadBasic (ULong64_t &value)
 Reads string from current xml node and convert it to ULong64_t value. More...
 
void XmlReadBlock (XMLNodePointer_t node)
 Read binary block of data from xml. More...
 
template<typename T >
R__ALWAYS_INLINE void XmlReadFastArray (T *arr, Int_t n)
 Template method to read content of array, which not include size of array Also treated situation, when instead of one single array chain of several elements should be produced. More...
 
voidXmlReadObject (void *obj, TClass **cl=nullptr)
 Read object from the buffer. More...
 
const char * XmlReadValue (const char *name)
 read string value from current stack node More...
 
XMLNodePointer_t XmlWriteAny (const void *obj, const TClass *cl)
 Convert object of any class to xml structures Return pointer on top xml element. More...
 
template<typename T >
R__ALWAYS_INLINE void XmlWriteArray (const T *arr, Int_t arrsize)
 Write array, including it size Content may be compressed. More...
 
template<typename T >
R__ALWAYS_INLINE void XmlWriteArrayContent (const T *arr, Int_t arrsize)
 
XMLNodePointer_t XmlWriteBasic (Char_t value)
 Converts Char_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Short_t value)
 Converts Short_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Int_t value)
 Converts Int_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Long_t value)
 Converts Long_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Long64_t value)
 Converts Long64_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Float_t value)
 Converts Float_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Double_t value)
 Converts Double_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (Bool_t value)
 Converts Bool_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (UChar_t value)
 Converts UChar_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (UShort_t value)
 Converts UShort_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (UInt_t value)
 Converts UInt_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (ULong_t value)
 Converts ULong_t to string and add xml node to buffer. More...
 
XMLNodePointer_t XmlWriteBasic (ULong64_t value)
 Converts ULong64_t to string and add xml node to buffer. More...
 
void XmlWriteBlock (XMLNodePointer_t node)
 Write binary data block from buffer to xml. More...
 
template<typename T >
R__ALWAYS_INLINE void XmlWriteFastArray (const T *arr, Int_t n)
 Write array without size attribute Also treat situation, when instead of one single array chain of several elements should be produced. More...
 
XMLNodePointer_t XmlWriteObject (const void *obj, const TClass *objClass, Bool_t cacheReuse)
 Write object to buffer If object was written before, only pointer will be stored Return pointer to top xml node, representing object. More...
 
XMLNodePointer_t XmlWriteValue (const char *value, const char *name)
 Create xml node with specified name and adds it to stack node. More...
 
- Protected Member Functions inherited from TBufferText
 TBufferText ()
 Default constructor. More...
 
 TBufferText (TBuffer::EMode mode, TObject *parent=nullptr)
 Normal constructor. More...
 
- Protected Member Functions inherited from TBufferIO
 TBufferIO ()=default
 
 TBufferIO (TBuffer::EMode mode)
 constructor More...
 
 TBufferIO (TBuffer::EMode mode, Int_t bufsiz)
 constructor More...
 
 TBufferIO (TBuffer::EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=nullptr)
 constructor More...
 
virtual void CheckCount (UInt_t)
 
Long64_t GetObjectTag (const void *obj)
 Returns tag for specified object from objects map (if exists) Returns 0 if object not included into objects map. More...
 
- Protected Member Functions inherited from TBuffer
 TBuffer ()
 
 TBuffer (const TBuffer &)
 
void operator= (const TBuffer &)
 
Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
Int_t Write (const char *name, Int_t opt, Int_t bufs)
 Write this object to the current directory. More...
 
Int_t Write (const char *name, Int_t opt, Int_t bufs) const
 Write this object to the current directory. More...
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 
- Protected Member Functions inherited from TXMLSetup
Int_t AtoI (const char *sbuf, Int_t def=0, const char *errinfo=0)
 converts string to integer. More...
 
const char * GetElItemName (TStreamerElement *el)
 get item name for given element More...
 
Bool_t IsValidXmlSetup (const char *setupstr)
 checks if string is valid setup More...
 
Bool_t ReadSetupFromStr (const char *setupstr)
 get values from string More...
 
TClassXmlDefineClass (const char *xmlClassName)
 define class for the converted class name, where special symbols were replaced by '_' More...
 

Static Protected Member Functions

static voidConvertFromXMLChecked (const char *xml, const TClass *expectedClass, Bool_t GenericLayout=kFALSE, Bool_t UseNamespaces=kFALSE)
 Convert from XML and check if object derived from specified class When possible, cast to given class. More...
 
- Static Protected Member Functions inherited from TBufferIO
static R__ALWAYS_INLINE ULong_t Void_Hash (const void *ptr)
 Return hash value for provided object. More...
 

Protected Attributes

Bool_t fCanUseCompact
 ! Flag indicate that basic type (like Int_t) can be placed in the same tag More...
 
Int_t fCompressLevel
 ! Compression level and algorithm More...
 
Int_t fErrorFlag
 ! Error flag More...
 
TClassfExpectedBaseClass
 ! Pointer to class, which should be stored as parent of current More...
 
Int_t fIOVersion
 ! Indicates format of ROOT xml file More...
 
std::deque< TXMLStackObj * > fStack
 ! Stack of processed objects More...
 
TString fValueBuf
 ! Current value buffer More...
 
Version_t fVersionBuf
 ! Current version buffer More...
 
TXMLEnginefXML
 ! instance of TXMLEngine for working with XML structures More...
 
- Protected Attributes inherited from TBufferIO
TExMapfClassMap {nullptr}
 Map containing object,class pairs for reading. More...
 
Int_t fDisplacement {0}
 Value to be added to the map offsets. More...
 
TExMapfMap {nullptr}
 Map containing object,offset pairs for reading/writing. More...
 
Int_t fMapCount {0}
 Number of objects or classes in map. More...
 
Int_t fMapSize {0}
 Default size of map. More...
 
UShort_t fPidOffset {0}
 Offset to be added to the pid index in this key/buffer. More...
 
- Protected Attributes inherited from TBuffer
char * fBufCur
 
char * fBuffer
 
char * fBufMax
 
Int_t fBufSize
 
CacheList_t fCacheStack
 Realloc function to be used when extending the buffer. More...
 
Bool_t fMode
 
TObjectfParent
 
ReAllocCharFun_t fReAllocFunc
 
Int_t fVersion
 
- Protected Attributes inherited from TXMLSetup
Int_t fRefCounter
 
Bool_t fStoreStreamerInfos
 
TString fStrBuf
 counter , used to build id of xml references More...
 
Bool_t fUseDtd
 
Bool_t fUseNamespaces
 
EXMLLayout fXmlLayout
 

Friends

class TKeyXML
 

Additional Inherited Members

- Public Types inherited from TBufferIO
enum  { kMapSize = 503 }
 
enum  EStatusBits {
  kNotDecompressed = BIT(15), kTextBasedStreaming = BIT(18), kUser1 = BIT(21), kUser2 = BIT(22),
  kUser3 = BIT(23)
}
 
- Public Types inherited from TBuffer
enum  { kInitialSize = 1024, kMinimalSize = 128 }
 
enum  EMode { kRead = 0, kWrite = 1 }
 
enum  EStatusBits { kIsOwner = BIT(16), kCannotHandleMemberWiseStreaming = BIT(17) }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kInconsistent = 0x08000000,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5),
  kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 
- Public Types inherited from TXMLSetup
enum  EXMLLayout { kSpecialized = 2, kGeneralized = 3 }
 
- Protected Types inherited from TBufferIO
enum  { kNullTag = 0 }
 
- Protected Types inherited from TBuffer
typedef std::vector< TVirtualArray * > CacheList_t
 
- Static Protected Attributes inherited from TBufferText
static const char * fgDoubleFmt = "%.14e"
 ! printf argument for doubles, either "%f" or "%e" or "%10f" and so on More...
 
static const char * fgFloatFmt = "%e"
 ! printf argument for floats, either "%f" or "%e" or "%10f" and so on More...
 
- Static Protected Attributes inherited from TBufferIO
static Int_t fgMapSize = kMapSize
 Default map size for all TBuffer objects. More...
 
- Static Protected Attributes inherited from TXMLSetup
static TString fgNameSpaceBase = "http://root.cern.ch/root/htmldoc/"
 buffer, used in XmlDefineClass() function More...
 

#include <TBufferXML.h>

Inheritance diagram for TBufferXML:
[legend]

Constructor & Destructor Documentation

◆ TBufferXML() [1/3]

TBufferXML::TBufferXML ( TBuffer::EMode  mode)

Creates buffer object to serialize/deserialize data to/from xml.

Mode should be either TBuffer::kRead or TBuffer::kWrite.

Definition at line 68 of file TBufferXML.cxx.

◆ TBufferXML() [2/3]

TBufferXML::TBufferXML ( TBuffer::EMode  mode,
TXMLFile file 
)

Creates buffer object to serialize/deserialize data to/from xml.

This constructor should be used, if data from buffer supposed to be stored in file. Mode should be either TBuffer::kRead or TBuffer::kWrite.

Definition at line 79 of file TBufferXML.cxx.

◆ ~TBufferXML()

TBufferXML::~TBufferXML ( )
virtual

Destroy xml buffer.

Definition at line 98 of file TBufferXML.cxx.

◆ TBufferXML() [3/3]

TBufferXML::TBufferXML ( )
protected

Default constructor.

Definition at line 58 of file TBufferXML.cxx.

Member Function Documentation

◆ BeforeIOoperation()

void TBufferXML::BeforeIOoperation ( )
protected

Function is called before any IO operation of TBuffer Now is used to store version value if no proper calls are discovered.

Definition at line 1412 of file TBufferXML.cxx.

◆ CheckVersionBuf()

void TBufferXML::CheckVersionBuf ( )
protected

Checks buffer, filled by WriteVersion if next data is arriving, version should be stored in buffer.

Definition at line 1479 of file TBufferXML.cxx.

◆ ClassBegin()

void TBufferXML::ClassBegin ( const TClass cl,
Version_t  = -1 
)
virtual

Should be called at the beginning of custom class streamer.

Informs buffer data about class which will be streamed now. ClassBegin(), ClassEnd() and ClassMemeber() should be used in custom class streamers to specify which kind of data are now streamed. Such information is used to correctly convert class data to XML. Without that functions calls classes with custom streamers cannot be used with TBufferXML

Implements TBuffer.

Definition at line 1069 of file TBufferXML.cxx.

◆ ClassEnd()

void TBufferXML::ClassEnd ( const TClass )
virtual

Should be called at the end of custom streamer See TBufferXML::ClassBegin for more details.

Implements TBuffer.

Definition at line 1078 of file TBufferXML.cxx.

◆ ClassMember()

void TBufferXML::ClassMember ( const char *  name,
const char *  typeName = nullptr,
Int_t  arrsize1 = -1,
Int_t  arrsize2 = -1 
)
virtual

Method indicates name and typename of class member, which should be now streamed in custom streamer.

Following combinations are supported:

  1. name = "ClassName", typeName = 0 or typename==ClassName. This is a case, when data of parent class "ClassName" should be streamed. For instance, if class directly inherited from TObject, custom streamer should include following code:
    b.ClassMember("TObject");
    TObject::Streamer(b);
  2. Basic data type
    b.ClassMember("fInt","Int_t");
    b >> fInt;
  3. Array of basic data types
    b.ClassMember("fArr","Int_t", 5);
    b.ReadFastArray(fArr, 5);
  4. Object as data member
    b.ClassMemeber("fName","TString");
    fName.Streamer(b);
  5. Pointer on object as data member
    b.ClassMemeber("fObj","TObject*");
    b.StreamObject(fObj);

Arrsize1 and arrsize2 arguments (when specified) indicate first and second dimension of array. Can be used for array of basic types. See ClassBegin() method for more details.

Implements TBuffer.

Definition at line 1121 of file TBufferXML.cxx.

◆ ConvertFromXML()

TObject * TBufferXML::ConvertFromXML ( const char *  str,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
static

Read object from XML, produced by ConvertToXML() method.

If object does not inherit from TObject class, return 0. GenericLayout and UseNamespaces should be the same as in ConvertToXML()

Definition at line 168 of file TBufferXML.cxx.

◆ ConvertFromXMLAny()

void * TBufferXML::ConvertFromXMLAny ( const char *  str,
TClass **  cl = nullptr,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
static

Read object of any class from XML, produced by ConvertToXML() method.

If cl!=0, return actual class of object. GenericLayout and UseNamespaces should be the same as in ConvertToXML()

Definition at line 191 of file TBufferXML.cxx.

◆ ConvertFromXMLChecked()

void * TBufferXML::ConvertFromXMLChecked ( const char *  xml,
const TClass expectedClass,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
staticprotected

Convert from XML and check if object derived from specified class When possible, cast to given class.

Definition at line 215 of file TBufferXML.cxx.

◆ ConvertToXML() [1/2]

TString TBufferXML::ConvertToXML ( const TObject obj,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
static

Converts object, inherited from TObject class, to XML string GenericLayout defines layout choice for XML file UseNamespaces allow XML namespaces.

See TXMLSetup class for details

Definition at line 119 of file TBufferXML.cxx.

◆ ConvertToXML() [2/2]

TString TBufferXML::ConvertToXML ( const void obj,
const TClass cl,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
static

Converts any type of object to XML string.

GenericLayout defines layout choice for XML file UseNamespaces allow XML namespaces. See TXMLSetup class for details

Definition at line 141 of file TBufferXML.cxx.

◆ CreateElemNode()

void TBufferXML::CreateElemNode ( const TStreamerElement elem)
protected

Create xml node correspondent to TStreamerElement object.

Definition at line 721 of file TBufferXML.cxx.

◆ CreateItemNode()

XMLNodePointer_t TBufferXML::CreateItemNode ( const char *  name)
protected

Create item node of specified name.

Definition at line 694 of file TBufferXML.cxx.

◆ DecrementLevel()

void TBufferXML::DecrementLevel ( TVirtualStreamerInfo info)
virtual

Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and decrease level in xml structure.

Implements TBuffer.

Definition at line 948 of file TBufferXML.cxx.

◆ ExtractPointer()

Bool_t TBufferXML::ExtractPointer ( XMLNodePointer_t  node,
void *&  ptr,
TClass *&  cl 
)
protected

Searches for "ptr" attribute and returns pointer to object and class, if "ptr" attribute reference to read object.

Definition at line 579 of file TBufferXML.cxx.

◆ ExtractReference()

void TBufferXML::ExtractReference ( XMLNodePointer_t  node,
const void ptr,
const TClass cl 
)
protected

Analyze if node has "ref" attribute and register it to object map.

Definition at line 615 of file TBufferXML.cxx.

◆ FromXML()

template<class T >
static Bool_t TBufferXML::FromXML ( T *&  obj,
const char *  xml,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
inlinestatic

Definition at line 59 of file TBufferXML.h.

◆ GetCompressionAlgorithm()

Int_t TBufferXML::GetCompressionAlgorithm ( ) const
inlineprotected

Definition at line 340 of file TBufferXML.h.

◆ GetCompressionLevel()

Int_t TBufferXML::GetCompressionLevel ( ) const
inlineprotected

Definition at line 346 of file TBufferXML.h.

◆ GetCompressionSettings()

Int_t TBufferXML::GetCompressionSettings ( ) const
inlineprotected

Definition at line 352 of file TBufferXML.h.

◆ GetInfo()

TVirtualStreamerInfo * TBufferXML::GetInfo ( )
virtual

Return current streamer info element.

Implements TBuffer.

Definition at line 3180 of file TBufferXML.cxx.

◆ GetIOVersion()

Int_t TBufferXML::GetIOVersion ( ) const
inline

Definition at line 67 of file TBufferXML.h.

◆ IncrementLevel()

void TBufferXML::IncrementLevel ( TVirtualStreamerInfo info)
virtual

Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and indent new level in xml structure.

This call indicates, that TStreamerInfo functions starts streaming object data of correspondent class

Implements TBuffer.

Definition at line 874 of file TBufferXML.cxx.

◆ PerformPostProcessing()

void TBufferXML::PerformPostProcessing ( )
protected

Function is converts TObject and TString structures to more compact representation.

Definition at line 1222 of file TBufferXML.cxx.

◆ PerformPreProcessing()

void TBufferXML::PerformPreProcessing ( const TStreamerElement elem,
XMLNodePointer_t  elemnode 
)
protected

Function is unpack TObject and TString structures to be able read them from custom streamers of this objects.

Definition at line 1339 of file TBufferXML.cxx.

◆ PopStack()

TXMLStackObj * TBufferXML::PopStack ( )
protected

Remove one level from xml stack.

Definition at line 329 of file TBufferXML.cxx.

◆ ProcessPointer()

Bool_t TBufferXML::ProcessPointer ( const void ptr,
XMLNodePointer_t  node 
)
protected

Add "ptr" attribute to node, if ptr is null or if ptr is pointer on object, which is already saved in buffer Automatically add "ref" attribute to node, where referenced object is stored.

Definition at line 542 of file TBufferXML.cxx.

◆ PushStack()

TXMLStackObj * TBufferXML::PushStack ( XMLNodePointer_t  current,
Bool_t  simple = kFALSE 
)
protected

Add new level to xml stack.

Definition at line 314 of file TBufferXML.cxx.

◆ ReadArray() [1/13]

Int_t TBufferXML::ReadArray ( Bool_t *&  b)
virtual

Read array of Bool_t from buffer.

Implements TBuffer.

Definition at line 1587 of file TBufferXML.cxx.

◆ ReadArray() [2/13]

Int_t TBufferXML::ReadArray ( Char_t *&  c)
virtual

Read array of Char_t from buffer.

Implements TBuffer.

Definition at line 1595 of file TBufferXML.cxx.

◆ ReadArray() [3/13]

Int_t TBufferXML::ReadArray ( UChar_t *&  c)
virtual

Read array of UChar_t from buffer.

Implements TBuffer.

Definition at line 1603 of file TBufferXML.cxx.

◆ ReadArray() [4/13]

Int_t TBufferXML::ReadArray ( Short_t *&  h)
virtual

Read array of Short_t from buffer.

Implements TBuffer.

Definition at line 1611 of file TBufferXML.cxx.

◆ ReadArray() [5/13]

Int_t TBufferXML::ReadArray ( UShort_t *&  h)
virtual

Read array of UShort_t from buffer.

Implements TBuffer.

Definition at line 1619 of file TBufferXML.cxx.

◆ ReadArray() [6/13]

Int_t TBufferXML::ReadArray ( Int_t *&  i)
virtual

Read array of Int_t from buffer.

Implements TBuffer.

Definition at line 1627 of file TBufferXML.cxx.

◆ ReadArray() [7/13]

Int_t TBufferXML::ReadArray ( UInt_t *&  i)
virtual

Read array of UInt_t from buffer.

Implements TBuffer.

Definition at line 1635 of file TBufferXML.cxx.

◆ ReadArray() [8/13]

Int_t TBufferXML::ReadArray ( Long_t *&  l)
virtual

Read array of Long_t from buffer.

Implements TBuffer.

Definition at line 1643 of file TBufferXML.cxx.

◆ ReadArray() [9/13]

Int_t TBufferXML::ReadArray ( ULong_t *&  l)
virtual

Read array of ULong_t from buffer.

Implements TBuffer.

Definition at line 1651 of file TBufferXML.cxx.

◆ ReadArray() [10/13]

Int_t TBufferXML::ReadArray ( Long64_t *&  l)
virtual

Read array of Long64_t from buffer.

Implements TBuffer.

Definition at line 1659 of file TBufferXML.cxx.

◆ ReadArray() [11/13]

Int_t TBufferXML::ReadArray ( ULong64_t *&  l)
virtual

Read array of ULong64_t from buffer.

Implements TBuffer.

Definition at line 1667 of file TBufferXML.cxx.

◆ ReadArray() [12/13]

Int_t TBufferXML::ReadArray ( Float_t *&  f)
virtual

Read array of Float_t from buffer.

Implements TBuffer.

Definition at line 1675 of file TBufferXML.cxx.

◆ ReadArray() [13/13]

Int_t TBufferXML::ReadArray ( Double_t *&  d)
virtual

Read array of Double_t from buffer.

Implements TBuffer.

Definition at line 1683 of file TBufferXML.cxx.

◆ ReadBool()

void TBufferXML::ReadBool ( Bool_t b)
virtual

Reads Bool_t value from buffer.

Implements TBuffer.

Definition at line 2432 of file TBufferXML.cxx.

◆ ReadChar()

void TBufferXML::ReadChar ( Char_t c)
virtual

Reads Char_t value from buffer.

Implements TBuffer.

Definition at line 2441 of file TBufferXML.cxx.

◆ ReadCharP()

void TBufferXML::ReadCharP ( Char_t c)
virtual

Reads array of characters from buffer.

Implements TBuffer.

Definition at line 2549 of file TBufferXML.cxx.

◆ ReadCharStar()

void TBufferXML::ReadCharStar ( char *&  s)
virtual

Read a char* string.

Implements TBuffer.

Definition at line 2630 of file TBufferXML.cxx.

◆ ReadClass()

TClass * TBufferXML::ReadClass ( const TClass cl = nullptr,
UInt_t objTag = nullptr 
)
virtual

Function to read class from buffer, used in old-style streamers.

Implements TBuffer.

Definition at line 1420 of file TBufferXML.cxx.

◆ ReadDouble()

void TBufferXML::ReadDouble ( Double_t d)
virtual

Reads Double_t value from buffer.

Implements TBuffer.

Definition at line 2540 of file TBufferXML.cxx.

◆ ReadFastArray() [1/15]

void TBufferXML::ReadFastArray ( Bool_t b,
Int_t  n 
)
virtual

Read array of Bool_t from buffer.

Implements TBuffer.

Definition at line 1814 of file TBufferXML.cxx.

◆ ReadFastArray() [2/15]

void TBufferXML::ReadFastArray ( Char_t c,
Int_t  n 
)
virtual

Read array of Char_t from buffer if nodename==CharStar, read all array as string.

Implements TBuffer.

Definition at line 1823 of file TBufferXML.cxx.

◆ ReadFastArray() [3/15]

void TBufferXML::ReadFastArray ( UChar_t c,
Int_t  n 
)
virtual

Read array of UChar_t from buffer.

Implements TBuffer.

Definition at line 1850 of file TBufferXML.cxx.

◆ ReadFastArray() [4/15]

void TBufferXML::ReadFastArray ( Short_t h,
Int_t  n 
)
virtual

Read array of Short_t from buffer.

Implements TBuffer.

Definition at line 1858 of file TBufferXML.cxx.

◆ ReadFastArray() [5/15]

void TBufferXML::ReadFastArray ( UShort_t h,
Int_t  n 
)
virtual

Read array of UShort_t from buffer.

Implements TBuffer.

Definition at line 1866 of file TBufferXML.cxx.

◆ ReadFastArray() [6/15]

void TBufferXML::ReadFastArray ( Int_t i,
Int_t  n 
)
virtual

Read array of Int_t from buffer.

Implements TBuffer.

Definition at line 1874 of file TBufferXML.cxx.

◆ ReadFastArray() [7/15]

void TBufferXML::ReadFastArray ( UInt_t i,
Int_t  n 
)
virtual

Read array of UInt_t from buffer.

Implements TBuffer.

Definition at line 1882 of file TBufferXML.cxx.

◆ ReadFastArray() [8/15]

void TBufferXML::ReadFastArray ( Long_t l,
Int_t  n 
)
virtual

Read array of Long_t from buffer.

Implements TBuffer.

Definition at line 1890 of file TBufferXML.cxx.

◆ ReadFastArray() [9/15]

void TBufferXML::ReadFastArray ( ULong_t l,
Int_t  n 
)
virtual

Read array of ULong_t from buffer.

Implements TBuffer.

Definition at line 1898 of file TBufferXML.cxx.

◆ ReadFastArray() [10/15]

void TBufferXML::ReadFastArray ( Long64_t l,
Int_t  n 
)
virtual

Read array of Long64_t from buffer.

Implements TBuffer.

Definition at line 1906 of file TBufferXML.cxx.

◆ ReadFastArray() [11/15]

void TBufferXML::ReadFastArray ( ULong64_t l,
Int_t  n 
)
virtual

Read array of ULong64_t from buffer.

Implements TBuffer.

Definition at line 1914 of file TBufferXML.cxx.

◆ ReadFastArray() [12/15]

void TBufferXML::ReadFastArray ( Float_t f,
Int_t  n 
)
virtual

Read array of Float_t from buffer.

Implements TBuffer.

Definition at line 1922 of file TBufferXML.cxx.

◆ ReadFastArray() [13/15]

void TBufferXML::ReadFastArray ( Double_t d,
Int_t  n 
)
virtual

Read array of Double_t from buffer.

Implements TBuffer.

Definition at line 1930 of file TBufferXML.cxx.

◆ ReadFastArray() [14/15]

void TBufferXML::ReadFastArray ( void start,
const TClass cl,
Int_t  n = 1,
TMemberStreamer streamer = nullptr,
const TClass onFileClass = nullptr 
)
virtual

Read an array of 'n' objects from the I/O buffer.

Stores the objects read starting at the address 'start'. The objects in the array are assume to be of class 'cl'.

Implements TBuffer.

Definition at line 1940 of file TBufferXML.cxx.

◆ ReadFastArray() [15/15]

void TBufferXML::ReadFastArray ( void **  start,
const TClass cl,
Int_t  n = 1,
Bool_t  isPreAlloc = kFALSE,
TMemberStreamer streamer = nullptr,
const TClass onFileClass = nullptr 
)
virtual

Read an array of 'n' objects from the I/O buffer.

The objects read are stored starting at the address '*start' The objects in the array are assumed to be of class 'cl' or a derived class. 'mode' indicates whether the data member is marked with '->'

Implements TBuffer.

Definition at line 1964 of file TBufferXML.cxx.

◆ ReadFastArrayString()

void TBufferXML::ReadFastArrayString ( Char_t c,
Int_t  n 
)
virtual

Read array of n characters from the I/O buffer.

Used only from TLeafC, dummy implementation here

Implements TBuffer.

Definition at line 1842 of file TBufferXML.cxx.

◆ ReadFloat()

void TBufferXML::ReadFloat ( Float_t f)
virtual

Reads Float_t value from buffer.

Implements TBuffer.

Definition at line 2531 of file TBufferXML.cxx.

◆ ReadInt()

void TBufferXML::ReadInt ( Int_t i)
virtual

Reads Int_t value from buffer.

Implements TBuffer.

Definition at line 2477 of file TBufferXML.cxx.

◆ ReadLong()

void TBufferXML::ReadLong ( Long_t l)
virtual

Reads Long_t value from buffer.

Implements TBuffer.

Definition at line 2495 of file TBufferXML.cxx.

◆ ReadLong64()

void TBufferXML::ReadLong64 ( Long64_t l)
virtual

Reads Long64_t value from buffer.

Implements TBuffer.

Definition at line 2513 of file TBufferXML.cxx.

◆ ReadObjectAny()

void * TBufferXML::ReadObjectAny ( const TClass clCast)
virtual

Read object from buffer. Only used from TBuffer.

Implements TBuffer.

Definition at line 1512 of file TBufferXML.cxx.

◆ ReadShort()

void TBufferXML::ReadShort ( Short_t s)
virtual

Reads Short_t value from buffer.

Implements TBuffer.

Definition at line 2459 of file TBufferXML.cxx.

◆ ReadStaticArray() [1/13]

Int_t TBufferXML::ReadStaticArray ( Bool_t b)
virtual

Read array of Bool_t from buffer.

Implements TBuffer.

Definition at line 1691 of file TBufferXML.cxx.

◆ ReadStaticArray() [2/13]

Int_t TBufferXML::ReadStaticArray ( Char_t c)
virtual

Read array of Char_t from buffer.

Implements TBuffer.

Definition at line 1699 of file TBufferXML.cxx.

◆ ReadStaticArray() [3/13]

Int_t TBufferXML::ReadStaticArray ( UChar_t c)
virtual

Read array of UChar_t from buffer.

Implements TBuffer.

Definition at line 1707 of file TBufferXML.cxx.

◆ ReadStaticArray() [4/13]

Int_t TBufferXML::ReadStaticArray ( Short_t h)
virtual

Read array of Short_t from buffer.

Implements TBuffer.

Definition at line 1715 of file TBufferXML.cxx.

◆ ReadStaticArray() [5/13]

Int_t TBufferXML::ReadStaticArray ( UShort_t h)
virtual

Read array of UShort_t from buffer.

Implements TBuffer.

Definition at line 1723 of file TBufferXML.cxx.

◆ ReadStaticArray() [6/13]

Int_t TBufferXML::ReadStaticArray ( Int_t i)
virtual

Read array of Int_t from buffer.

Implements TBuffer.

Definition at line 1731 of file TBufferXML.cxx.

◆ ReadStaticArray() [7/13]

Int_t TBufferXML::ReadStaticArray ( UInt_t i)
virtual

Read array of UInt_t from buffer.

Implements TBuffer.

Definition at line 1739 of file TBufferXML.cxx.

◆ ReadStaticArray() [8/13]

Int_t TBufferXML::ReadStaticArray ( Long_t l)
virtual

Read array of Long_t from buffer.

Implements TBuffer.

Definition at line 1747 of file TBufferXML.cxx.

◆ ReadStaticArray() [9/13]

Int_t TBufferXML::ReadStaticArray ( ULong_t l)
virtual

Read array of ULong_t from buffer.

Implements TBuffer.

Definition at line 1755 of file TBufferXML.cxx.

◆ ReadStaticArray() [10/13]

Int_t TBufferXML::ReadStaticArray ( Long64_t l)
virtual

Read array of Long64_t from buffer.

Implements TBuffer.

Definition at line 1763 of file TBufferXML.cxx.

◆ ReadStaticArray() [11/13]

Int_t TBufferXML::ReadStaticArray ( ULong64_t l)
virtual

Read array of ULong64_t from buffer.

Implements TBuffer.

Definition at line 1771 of file TBufferXML.cxx.

◆ ReadStaticArray() [12/13]

Int_t TBufferXML::ReadStaticArray ( Float_t f)
virtual

Read array of Float_t from buffer.

Implements TBuffer.

Definition at line 1779 of file TBufferXML.cxx.

◆ ReadStaticArray() [13/13]

Int_t TBufferXML::ReadStaticArray ( Double_t d)
virtual

Read array of Double_t from buffer.

Implements TBuffer.

Definition at line 1787 of file TBufferXML.cxx.

◆ ReadStdString()

void TBufferXML::ReadStdString ( std::string *  s)
virtual

Reads a std::string.

Implements TBuffer.

Definition at line 2593 of file TBufferXML.cxx.

◆ ReadTString()

void TBufferXML::ReadTString ( TString s)
virtual

Reads a TString.

Implements TBuffer.

Definition at line 2560 of file TBufferXML.cxx.

◆ ReadUChar()

void TBufferXML::ReadUChar ( UChar_t c)
virtual

Reads UChar_t value from buffer.

Implements TBuffer.

Definition at line 2450 of file TBufferXML.cxx.

◆ ReadUInt()

void TBufferXML::ReadUInt ( UInt_t i)
virtual

Reads UInt_t value from buffer.

Implements TBuffer.

Definition at line 2486 of file TBufferXML.cxx.

◆ ReadULong()

void TBufferXML::ReadULong ( ULong_t l)
virtual

Reads ULong_t value from buffer.

Implements TBuffer.

Definition at line 2504 of file TBufferXML.cxx.

◆ ReadULong64()

void TBufferXML::ReadULong64 ( ULong64_t l)
virtual

Reads ULong64_t value from buffer.

Implements TBuffer.

Definition at line 2522 of file TBufferXML.cxx.

◆ ReadUShort()

void TBufferXML::ReadUShort ( UShort_t s)
virtual

Reads UShort_t value from buffer.

Implements TBuffer.

Definition at line 2468 of file TBufferXML.cxx.

◆ ReadVersion()

Version_t TBufferXML::ReadVersion ( UInt_t start = nullptr,
UInt_t bcnt = nullptr,
const TClass cl = nullptr 
)
virtual

Read version value from buffer.

Implements TBuffer.

Definition at line 1447 of file TBufferXML.cxx.

◆ SetCompressionAlgorithm()

void TBufferXML::SetCompressionAlgorithm ( Int_t  algorithm = 0)
protected

See comments for function SetCompressionSettings.

Definition at line 363 of file TBufferXML.cxx.

◆ SetCompressionLevel()

void TBufferXML::SetCompressionLevel ( Int_t  level = 1)
protected

See comments for function SetCompressionSettings.

Definition at line 379 of file TBufferXML.cxx.

◆ SetCompressionSettings()

void TBufferXML::SetCompressionSettings ( Int_t  settings = 1)
protected

Used to specify the compression level and algorithm.

See TFile constructor for the details.

Definition at line 401 of file TBufferXML.cxx.

◆ SetIOVersion()

void TBufferXML::SetIOVersion ( Int_t  v)
inline

Definition at line 68 of file TBufferXML.h.

◆ SetStreamerElementNumber()

void TBufferXML::SetStreamerElementNumber ( TStreamerElement elem,
Int_t  comp_type 
)
virtual

Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and add/verify next element of xml structure This calls allows separate data, correspondent to one class member, from another.

Implements TBuffer.

Definition at line 980 of file TBufferXML.cxx.

◆ SetXML()

void TBufferXML::SetXML ( TXMLEngine xml)
inlineprotected

Definition at line 233 of file TBufferXML.h.

◆ ShiftStack()

void TBufferXML::ShiftStack ( const char *  info = nullptr)
protected

Shift stack node to next.

Definition at line 350 of file TBufferXML.cxx.

◆ SkipObjectAny()

void TBufferXML::SkipObjectAny ( )
virtual

Skip any kind of object from buffer Actually skip only one node on current level of xml structure.

Implements TBuffer.

Definition at line 1525 of file TBufferXML.cxx.

◆ Stack()

TXMLStackObj* TBufferXML::Stack ( UInt_t  depth = 0)
inlineprotected

Definition at line 246 of file TBufferXML.h.

◆ StackNode()

XMLNodePointer_t TBufferXML::StackNode ( )
protected

Return pointer on current xml node.

Definition at line 341 of file TBufferXML.cxx.

◆ StreamObject()

void TBufferXML::StreamObject ( void obj,
const TClass cl,
const TClass onFileClass = nullptr 
)
virtual

Stream object to/from buffer.

Implements TBuffer.

Definition at line 2407 of file TBufferXML.cxx.

◆ ToXML()

template<class T >
static TString TBufferXML::ToXML ( const T *  obj,
Bool_t  GenericLayout = kFALSE,
Bool_t  UseNamespaces = kFALSE 
)
inlinestatic

Definition at line 49 of file TBufferXML.h.

◆ VerifyAttr()

Bool_t TBufferXML::VerifyAttr ( XMLNodePointer_t  node,
const char *  name,
const char *  value,
const char *  errinfo = nullptr 
)
protected

Checks, that attribute of specified name exists and has specified value.

Definition at line 667 of file TBufferXML.cxx.

◆ VerifyElemNode()

Bool_t TBufferXML::VerifyElemNode ( const TStreamerElement elem)
protected

Checks if stack node correspond to TStreamerElement object.

Definition at line 749 of file TBufferXML.cxx.

◆ VerifyItemNode()

Bool_t TBufferXML::VerifyItemNode ( const char *  name,
const char *  errinfo = nullptr 
)
protected

Checks, if stack node is item and has specified name.

Definition at line 708 of file TBufferXML.cxx.

◆ VerifyNode()

Bool_t TBufferXML::VerifyNode ( XMLNodePointer_t  node,
const char *  name,
const char *  errinfo = nullptr 
)
protected

Check if node has specified name.

Definition at line 641 of file TBufferXML.cxx.

◆ VerifyStackAttr()

Bool_t TBufferXML::VerifyStackAttr ( const char *  name,
const char *  value,
const char *  errinfo = nullptr 
)
protected

Checks stack attribute.

Definition at line 686 of file TBufferXML.cxx.

◆ VerifyStackNode()

Bool_t TBufferXML::VerifyStackNode ( const char *  name,
const char *  errinfo = nullptr 
)
protected

Check, if stack node has specified name.

Definition at line 659 of file TBufferXML.cxx.

◆ WorkWithClass()

void TBufferXML::WorkWithClass ( TStreamerInfo info,
const TClass cl = nullptr 
)
protected

Prepares buffer to stream data of specified class.

Definition at line 882 of file TBufferXML.cxx.

◆ WorkWithElement()

void TBufferXML::WorkWithElement ( TStreamerElement elem,
Int_t  comp_type 
)
protected

This function is a part of SetStreamerElementNumber method.

It is introduced for reading of data for specified data member of class. Used also in ReadFastArray methods to resolve problem of compressed data, when several data members of the same basic type streamed with single ...FastArray call

Definition at line 991 of file TBufferXML.cxx.

◆ WriteArray() [1/13]

void TBufferXML::WriteArray ( const Bool_t b,
Int_t  n 
)
virtual

Write array of Bool_t to buffer.

Implements TBuffer.

Definition at line 2070 of file TBufferXML.cxx.

◆ WriteArray() [2/13]

void TBufferXML::WriteArray ( const Char_t c,
Int_t  n 
)
virtual

Write array of Char_t to buffer.

Implements TBuffer.

Definition at line 2078 of file TBufferXML.cxx.

◆ WriteArray() [3/13]

void TBufferXML::WriteArray ( const UChar_t c,
Int_t  n 
)
virtual

Write array of UChar_t to buffer.

Implements TBuffer.

Definition at line 2086 of file TBufferXML.cxx.

◆ WriteArray() [4/13]

void TBufferXML::WriteArray ( const Short_t h,
Int_t  n 
)
virtual

Write array of Short_t to buffer.

Implements TBuffer.

Definition at line 2094 of file TBufferXML.cxx.

◆ WriteArray() [5/13]

void TBufferXML::WriteArray ( const UShort_t h,
Int_t  n 
)
virtual

Write array of UShort_t to buffer.

Implements TBuffer.

Definition at line 2102 of file TBufferXML.cxx.

◆ WriteArray() [6/13]

void TBufferXML::WriteArray ( const Int_t i,
Int_t  n 
)
virtual

Write array of Int_ to buffer.

Implements TBuffer.

Definition at line 2110 of file TBufferXML.cxx.

◆ WriteArray() [7/13]

void TBufferXML::WriteArray ( const UInt_t i,
Int_t  n 
)
virtual

Write array of UInt_t to buffer.

Implements TBuffer.

Definition at line 2118 of file TBufferXML.cxx.

◆ WriteArray() [8/13]

void TBufferXML::WriteArray ( const Long_t l,
Int_t  n 
)
virtual

Write array of Long_t to buffer.

Implements TBuffer.

Definition at line 2126 of file TBufferXML.cxx.

◆ WriteArray() [9/13]

void TBufferXML::WriteArray ( const ULong_t l,
Int_t  n 
)
virtual

Write array of ULong_t to buffer.

Implements TBuffer.

Definition at line 2134 of file TBufferXML.cxx.

◆ WriteArray() [10/13]

void TBufferXML::WriteArray ( const Long64_t l,
Int_t  n 
)
virtual

Write array of Long64_t to buffer.

Implements TBuffer.

Definition at line 2142 of file TBufferXML.cxx.

◆ WriteArray() [11/13]

void TBufferXML::WriteArray ( const ULong64_t l,
Int_t  n 
)
virtual

Write array of ULong64_t to buffer.

Implements TBuffer.

Definition at line 2150 of file TBufferXML.cxx.

◆ WriteArray() [12/13]

void TBufferXML::WriteArray ( const Float_t f,
Int_t  n 
)
virtual

Write array of Float_t to buffer.

Implements TBuffer.

Definition at line 2158 of file TBufferXML.cxx.

◆ WriteArray() [13/13]

void TBufferXML::WriteArray ( const Double_t d,
Int_t  n 
)
virtual

Write array of Double_t to buffer.

Implements TBuffer.

Definition at line 2166 of file TBufferXML.cxx.

◆ WriteBool()

void TBufferXML::WriteBool ( Bool_t  b)
virtual

Writes Bool_t value to buffer.

Implements TBuffer.

Definition at line 2647 of file TBufferXML.cxx.

◆ WriteChar()

void TBufferXML::WriteChar ( Char_t  c)
virtual

Writes Char_t value to buffer.

Implements TBuffer.

Definition at line 2656 of file TBufferXML.cxx.

◆ WriteCharP()

void TBufferXML::WriteCharP ( const Char_t c)
virtual

Writes array of characters to buffer.

Implements TBuffer.

Definition at line 2764 of file TBufferXML.cxx.

◆ WriteCharStar()

void TBufferXML::WriteCharStar ( char *  s)
virtual

Write a char* string.

Implements TBuffer.

Definition at line 2827 of file TBufferXML.cxx.

◆ WriteClass()

void TBufferXML::WriteClass ( const TClass cl)
virtual

Function to write class into buffer, used in old-style streamers.

Implements TBuffer.

Definition at line 1436 of file TBufferXML.cxx.

◆ WriteDouble()

void TBufferXML::WriteDouble ( Double_t  d)
virtual

Writes Double_t value to buffer.

Implements TBuffer.

Definition at line 2755 of file TBufferXML.cxx.

◆ WriteFastArray() [1/15]

void TBufferXML::WriteFastArray ( const Bool_t b,
Int_t  n 
)
virtual

Write array of Bool_t to buffer.

Implements TBuffer.

Definition at line 2191 of file TBufferXML.cxx.

◆ WriteFastArray() [2/15]

void TBufferXML::WriteFastArray ( const Char_t c,
Int_t  n 
)
virtual

Write array of Char_t to buffer If array does not include any special characters, it will be reproduced as CharStar node with string as attribute.

Implements TBuffer.

Definition at line 2201 of file TBufferXML.cxx.

◆ WriteFastArray() [3/15]

void TBufferXML::WriteFastArray ( const UChar_t c,
Int_t  n 
)
virtual

Write array of UChar_t to buffer.

Implements TBuffer.

Definition at line 2227 of file TBufferXML.cxx.

◆ WriteFastArray() [4/15]

void TBufferXML::WriteFastArray ( const Short_t h,
Int_t  n 
)
virtual

Write array of Short_t to buffer.

Implements TBuffer.

Definition at line 2235 of file TBufferXML.cxx.

◆ WriteFastArray() [5/15]

void TBufferXML::WriteFastArray ( const UShort_t h,
Int_t  n 
)
virtual

Write array of UShort_t to buffer.

Implements TBuffer.

Definition at line 2243 of file TBufferXML.cxx.

◆ WriteFastArray() [6/15]

void TBufferXML::WriteFastArray ( const Int_t i,
Int_t  n 
)
virtual

Write array of Int_t to buffer.

Implements TBuffer.

Definition at line 2251 of file TBufferXML.cxx.

◆ WriteFastArray() [7/15]

void TBufferXML::WriteFastArray ( const UInt_t i,
Int_t  n 
)
virtual

Write array of UInt_t to buffer.

Implements TBuffer.

Definition at line 2259 of file TBufferXML.cxx.

◆ WriteFastArray() [8/15]

void TBufferXML::WriteFastArray ( const Long_t l,
Int_t  n 
)
virtual

Write array of Long_t to buffer.

Implements TBuffer.

Definition at line 2267 of file TBufferXML.cxx.

◆ WriteFastArray() [9/15]

void TBufferXML::WriteFastArray ( const ULong_t l,
Int_t  n 
)
virtual

Write array of ULong_t to buffer.

Implements TBuffer.

Definition at line 2275 of file TBufferXML.cxx.

◆ WriteFastArray() [10/15]

void TBufferXML::WriteFastArray ( const Long64_t l,
Int_t  n 
)
virtual

Write array of Long64_t to buffer.

Implements TBuffer.

Definition at line 2283 of file TBufferXML.cxx.

◆ WriteFastArray() [11/15]

void TBufferXML::WriteFastArray ( const ULong64_t l,
Int_t  n 
)
virtual

Write array of ULong64_t to buffer.

Implements TBuffer.

Definition at line 2291 of file TBufferXML.cxx.

◆ WriteFastArray() [12/15]

void TBufferXML::WriteFastArray ( const Float_t f,
Int_t  n 
)
virtual

Write array of Float_t to buffer.

Implements TBuffer.

Definition at line 2299 of file TBufferXML.cxx.

◆ WriteFastArray() [13/15]

void TBufferXML::WriteFastArray ( const Double_t d,
Int_t  n 
)
virtual

Write array of Double_t to buffer.

Implements TBuffer.

Definition at line 2307 of file TBufferXML.cxx.

◆ WriteFastArray() [14/15]

void TBufferXML::WriteFastArray ( void start,
const TClass cl,
Int_t  n = 1,
TMemberStreamer s = nullptr 
)
virtual

Write an array of object starting at the address 'start' and of length 'n' the objects in the array are assumed to be of class 'cl'.

Implements TBuffer.

Definition at line 2325 of file TBufferXML.cxx.

◆ WriteFastArray() [15/15]

Int_t TBufferXML::WriteFastArray ( void **  start,
const TClass cl,
Int_t  n = 1,
Bool_t  isPreAlloc = kFALSE,
TMemberStreamer streamer = nullptr 
)
virtual

Write an array of object starting at the address '*start' and of length 'n' the objects in the array are of class 'cl' 'isPreAlloc' indicates whether the data member is marked with '->' Return:

  • 0: success
  • 2: truncated success (i.e actual class is missing. Only ptrClass saved.)

Implements TBuffer.

Definition at line 2350 of file TBufferXML.cxx.

◆ WriteFastArrayString()

void TBufferXML::WriteFastArrayString ( const Char_t c,
Int_t  n 
)
virtual

Write array of n characters into the I/O buffer.

Used only by TLeafC, just dummy implementation here

Implements TBuffer.

Definition at line 2316 of file TBufferXML.cxx.

◆ WriteFloat()

void TBufferXML::WriteFloat ( Float_t  f)
virtual

Writes Float_t value to buffer.

Implements TBuffer.

Definition at line 2746 of file TBufferXML.cxx.

◆ WriteInt()

void TBufferXML::WriteInt ( Int_t  i)
virtual

Writes Int_t value to buffer.

Implements TBuffer.

Definition at line 2692 of file TBufferXML.cxx.

◆ WriteLong()

void TBufferXML::WriteLong ( Long_t  l)
virtual

Writes Long_t value to buffer.

Implements TBuffer.

Definition at line 2710 of file TBufferXML.cxx.

◆ WriteLong64()

void TBufferXML::WriteLong64 ( Long64_t  l)
virtual

Writes Long64_t value to buffer.

Implements TBuffer.

Definition at line 2728 of file TBufferXML.cxx.

◆ WriteObjectClass()

void TBufferXML::WriteObjectClass ( const void actualObjStart,
const TClass actualClass,
Bool_t  cacheReuse 
)
protectedvirtual

Write object to buffer. Only used from TBuffer.

Implements TBufferIO.

Definition at line 1533 of file TBufferXML.cxx.

◆ WriteShort()

void TBufferXML::WriteShort ( Short_t  s)
virtual

Writes Short_t value to buffer.

Implements TBuffer.

Definition at line 2674 of file TBufferXML.cxx.

◆ WriteStdString()

void TBufferXML::WriteStdString ( const std::string *  s)
virtual

Writes a std::string.

Implements TBuffer.

Definition at line 2798 of file TBufferXML.cxx.

◆ WriteTString()

void TBufferXML::WriteTString ( const TString s)
virtual

Writes a TString.

Implements TBuffer.

Definition at line 2773 of file TBufferXML.cxx.

◆ WriteUChar()

void TBufferXML::WriteUChar ( UChar_t  c)
virtual

Writes UChar_t value to buffer.

Implements TBuffer.

Definition at line 2665 of file TBufferXML.cxx.

◆ WriteUInt()

void TBufferXML::WriteUInt ( UInt_t  i)
virtual

Writes UInt_t value to buffer.

Implements TBuffer.

Definition at line 2701 of file TBufferXML.cxx.

◆ WriteULong()

void TBufferXML::WriteULong ( ULong_t  l)
virtual

Writes ULong_t value to buffer.

Implements TBuffer.

Definition at line 2719 of file TBufferXML.cxx.

◆ WriteULong64()

void TBufferXML::WriteULong64 ( ULong64_t  l)
virtual

Writes ULong64_t value to buffer.

Implements TBuffer.

Definition at line 2737 of file TBufferXML.cxx.

◆ WriteUShort()

void TBufferXML::WriteUShort ( UShort_t  s)
virtual

Writes UShort_t value to buffer.

Implements TBuffer.

Definition at line 2683 of file TBufferXML.cxx.

◆ WriteVersion()

UInt_t TBufferXML::WriteVersion ( const TClass cl,
Bool_t  useBcnt = kFALSE 
)
virtual

Copies class version to buffer, but not writes it to xml Version will be written with next I/O operation or will be added as attribute of class tag, created by IncrementLevel call.

Implements TBuffer.

Definition at line 1494 of file TBufferXML.cxx.

◆ XmlFile()

TXMLFile * TBufferXML::XmlFile ( )
protected

Returns pointer to TXMLFile object.

Access to file is necessary to produce unique identifier for object references.

Definition at line 108 of file TBufferXML.cxx.

◆ XmlReadAny()

void * TBufferXML::XmlReadAny ( XMLNodePointer_t  node,
void obj,
TClass **  cl 
)
protected

Recreate object from xml structure.

Return pointer to read object. if (cl!=0) returns pointer to class of object

Definition at line 259 of file TBufferXML.cxx.

◆ XmlReadArray()

template<typename T >
R__ALWAYS_INLINE Int_t TBufferXML::XmlReadArray ( T *&  arr,
bool  is_static = false 
)
protected

Template method to read array with size attribute If necessary, array is created.

Definition at line 1564 of file TBufferXML.cxx.

◆ XmlReadArrayContent()

template<typename T >
R__ALWAYS_INLINE void TBufferXML::XmlReadArrayContent ( T *  arr,
Int_t  arrsize 
)
protected

Template method to read array content.

Definition at line 1545 of file TBufferXML.cxx.

◆ XmlReadBasic() [1/13]

void TBufferXML::XmlReadBasic ( Char_t value)
protected

Reads string from current xml node and convert it to Char_t value.

Definition at line 2987 of file TBufferXML.cxx.

◆ XmlReadBasic() [2/13]

void TBufferXML::XmlReadBasic ( Short_t value)
protected

Reads string from current xml node and convert it to Short_t value.

Definition at line 3001 of file TBufferXML.cxx.

◆ XmlReadBasic() [3/13]

void TBufferXML::XmlReadBasic ( Int_t value)
protected

Reads string from current xml node and convert it to Int_t value.

Definition at line 3013 of file TBufferXML.cxx.

◆ XmlReadBasic() [4/13]

void TBufferXML::XmlReadBasic ( Long_t value)
protected

Reads string from current xml node and convert it to Long_t value.

Definition at line 3025 of file TBufferXML.cxx.

◆ XmlReadBasic() [5/13]

void TBufferXML::XmlReadBasic ( Long64_t value)
protected

Reads string from current xml node and convert it to Long64_t value.

Definition at line 3037 of file TBufferXML.cxx.

◆ XmlReadBasic() [6/13]

void TBufferXML::XmlReadBasic ( Float_t value)
protected

Reads string from current xml node and convert it to Float_t value.

Definition at line 3049 of file TBufferXML.cxx.

◆ XmlReadBasic() [7/13]

void TBufferXML::XmlReadBasic ( Double_t value)
protected

Reads string from current xml node and convert it to Double_t value.

Definition at line 3061 of file TBufferXML.cxx.

◆ XmlReadBasic() [8/13]

void TBufferXML::XmlReadBasic ( Bool_t value)
protected

Reads string from current xml node and convert it to Bool_t value.

Definition at line 3073 of file TBufferXML.cxx.

◆ XmlReadBasic() [9/13]

void TBufferXML::XmlReadBasic ( UChar_t value)
protected

Reads string from current xml node and convert it to UChar_t value.

Definition at line 3085 of file TBufferXML.cxx.

◆ XmlReadBasic() [10/13]

void TBufferXML::XmlReadBasic ( UShort_t value)
protected

Reads string from current xml node and convert it to UShort_t value.

Definition at line 3099 of file TBufferXML.cxx.

◆ XmlReadBasic() [11/13]

void TBufferXML::XmlReadBasic ( UInt_t value)
protected

Reads string from current xml node and convert it to UInt_t value.

Definition at line 3111 of file TBufferXML.cxx.

◆ XmlReadBasic() [12/13]

void TBufferXML::XmlReadBasic ( ULong_t value)
protected

Reads string from current xml node and convert it to ULong_t value.

Definition at line 3123 of file TBufferXML.cxx.

◆ XmlReadBasic() [13/13]

void TBufferXML::XmlReadBasic ( ULong64_t value)
protected

Reads string from current xml node and convert it to ULong64_t value.

Definition at line 3135 of file TBufferXML.cxx.

◆ XmlReadBlock()

void TBufferXML::XmlReadBlock ( XMLNodePointer_t  node)
protected

Read binary block of data from xml.

Definition at line 471 of file TBufferXML.cxx.

◆ XmlReadFastArray()

template<typename T >
R__ALWAYS_INLINE void TBufferXML::XmlReadFastArray ( T *  arr,
Int_t  n 
)
protected

Template method to read content of array, which not include size of array Also treated situation, when instead of one single array chain of several elements should be produced.

Definition at line 1798 of file TBufferXML.cxx.

◆ XmlReadObject()

void * TBufferXML::XmlReadObject ( void obj,
TClass **  cl = nullptr 
)
protected

Read object from the buffer.

Definition at line 807 of file TBufferXML.cxx.

◆ XmlReadValue()

const char * TBufferXML::XmlReadValue ( const char *  name)
protected

read string value from current stack node

Definition at line 3147 of file TBufferXML.cxx.

◆ XmlWriteAny()

XMLNodePointer_t TBufferXML::XmlWriteAny ( const void obj,
const TClass cl 
)
protected

Convert object of any class to xml structures Return pointer on top xml element.

Definition at line 242 of file TBufferXML.cxx.

◆ XmlWriteArray()

template<typename T >
R__ALWAYS_INLINE void TBufferXML::XmlWriteArray ( const T *  arr,
Int_t  arrsize 
)
protected

Write array, including it size Content may be compressed.

Definition at line 2057 of file TBufferXML.cxx.

◆ XmlWriteArrayContent()

template<typename T >
R__ALWAYS_INLINE void TBufferXML::XmlWriteArrayContent ( const T *  arr,
Int_t  arrsize 
)
protected

Definition at line 2034 of file TBufferXML.cxx.

◆ XmlWriteBasic() [1/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Char_t  value)
protected

Converts Char_t to string and add xml node to buffer.

Definition at line 2842 of file TBufferXML.cxx.

◆ XmlWriteBasic() [2/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Short_t  value)
protected

Converts Short_t to string and add xml node to buffer.

Definition at line 2852 of file TBufferXML.cxx.

◆ XmlWriteBasic() [3/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Int_t  value)
protected

Converts Int_t to string and add xml node to buffer.

Definition at line 2862 of file TBufferXML.cxx.

◆ XmlWriteBasic() [4/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Long_t  value)
protected

Converts Long_t to string and add xml node to buffer.

Definition at line 2872 of file TBufferXML.cxx.

◆ XmlWriteBasic() [5/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Long64_t  value)
protected

Converts Long64_t to string and add xml node to buffer.

Definition at line 2882 of file TBufferXML.cxx.

◆ XmlWriteBasic() [6/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Float_t  value)
protected

Converts Float_t to string and add xml node to buffer.

Definition at line 2891 of file TBufferXML.cxx.

◆ XmlWriteBasic() [7/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Double_t  value)
protected

Converts Double_t to string and add xml node to buffer.

Definition at line 2901 of file TBufferXML.cxx.

◆ XmlWriteBasic() [8/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( Bool_t  value)
protected

Converts Bool_t to string and add xml node to buffer.

Definition at line 2911 of file TBufferXML.cxx.

◆ XmlWriteBasic() [9/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( UChar_t  value)
protected

Converts UChar_t to string and add xml node to buffer.

Definition at line 2919 of file TBufferXML.cxx.

◆ XmlWriteBasic() [10/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( UShort_t  value)
protected

Converts UShort_t to string and add xml node to buffer.

Definition at line 2929 of file TBufferXML.cxx.

◆ XmlWriteBasic() [11/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( UInt_t  value)
protected

Converts UInt_t to string and add xml node to buffer.

Definition at line 2939 of file TBufferXML.cxx.

◆ XmlWriteBasic() [12/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( ULong_t  value)
protected

Converts ULong_t to string and add xml node to buffer.

Definition at line 2949 of file TBufferXML.cxx.

◆ XmlWriteBasic() [13/13]

XMLNodePointer_t TBufferXML::XmlWriteBasic ( ULong64_t  value)
protected

Converts ULong64_t to string and add xml node to buffer.

Definition at line 2959 of file TBufferXML.cxx.

◆ XmlWriteBlock()

void TBufferXML::XmlWriteBlock ( XMLNodePointer_t  node)
protected

Write binary data block from buffer to xml.

This data can be produced only by direct call of TBuffer::WriteBuf() functions.

Definition at line 410 of file TBufferXML.cxx.

◆ XmlWriteFastArray()

template<typename T >
R__ALWAYS_INLINE void TBufferXML::XmlWriteFastArray ( const T *  arr,
Int_t  n 
)
protected

Write array without size attribute Also treat situation, when instead of one single array chain of several elements should be produced.

Definition at line 2177 of file TBufferXML.cxx.

◆ XmlWriteObject()

XMLNodePointer_t TBufferXML::XmlWriteObject ( const void obj,
const TClass objClass,
Bool_t  cacheReuse 
)
protected

Write object to buffer If object was written before, only pointer will be stored Return pointer to top xml node, representing object.

Definition at line 775 of file TBufferXML.cxx.

◆ XmlWriteValue()

XMLNodePointer_t TBufferXML::XmlWriteValue ( const char *  value,
const char *  name 
)
protected

Create xml node with specified name and adds it to stack node.

Definition at line 2968 of file TBufferXML.cxx.

Friends And Related Function Documentation

◆ TKeyXML

friend class TKeyXML
friend

Definition at line 37 of file TBufferXML.h.

Member Data Documentation

◆ fCanUseCompact

Bool_t TBufferXML::fCanUseCompact
protected

! Flag indicate that basic type (like Int_t) can be placed in the same tag

Definition at line 331 of file TBufferXML.h.

◆ fCompressLevel

Int_t TBufferXML::fCompressLevel
protected

! Compression level and algorithm

Definition at line 333 of file TBufferXML.h.

◆ fErrorFlag

Int_t TBufferXML::fErrorFlag
protected

! Error flag

Definition at line 330 of file TBufferXML.h.

◆ fExpectedBaseClass

TClass* TBufferXML::fExpectedBaseClass
protected

! Pointer to class, which should be stored as parent of current

Definition at line 332 of file TBufferXML.h.

◆ fIOVersion

Int_t TBufferXML::fIOVersion
protected

! Indicates format of ROOT xml file

Definition at line 334 of file TBufferXML.h.

◆ fStack

std::deque<TXMLStackObj *> TBufferXML::fStack
protected

! Stack of processed objects

Definition at line 327 of file TBufferXML.h.

◆ fValueBuf

TString TBufferXML::fValueBuf
protected

! Current value buffer

Definition at line 329 of file TBufferXML.h.

◆ fVersionBuf

Version_t TBufferXML::fVersionBuf
protected

! Current version buffer

Definition at line 328 of file TBufferXML.h.

◆ fXML

TXMLEngine* TBufferXML::fXML
protected

! instance of TXMLEngine for working with XML structures

Definition at line 326 of file TBufferXML.h.

Libraries for TBufferXML:
[legend]

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