Logo ROOT   6.16/01
Reference Guide
List of all members | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
TBufferFile Class Reference

The concrete implementation of TBuffer for writing/reading to/from a ROOT file or socket.

Definition at line 46 of file TBufferFile.h.

Public Types

enum  { kStreamedMemberWise = BIT(14) }
 
- 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 Member Functions

 TBufferFile (TBuffer::EMode mode)
 Create an I/O buffer object. More...
 
 TBufferFile (TBuffer::EMode mode, Int_t bufsiz)
 Create an I/O buffer object. More...
 
 TBufferFile (TBuffer::EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0)
 Create an I/O buffer object. More...
 
virtual ~TBufferFile ()
 Delete an I/O buffer object. More...
 
Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object)
 Read one collection of objects from the buffer using the StreamerInfoLoopAction. More...
 
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...
 
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 startpos, UInt_t bcnt, const char *classname)
 Check byte count with current buffer position. More...
 
virtual Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss)
 Check byte count with current buffer position. 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 ClassBegin (const TClass *, Version_t=-1)
 
virtual void ClassEnd (const TClass *)
 
virtual void ClassMember (const char *, const char *=0, Int_t=-1, Int_t=-1)
 
virtual void DecrementLevel (TVirtualStreamerInfo *)
 Decrement level. More...
 
TVirtualStreamerInfoGetInfo ()
 
virtual void IncrementLevel (TVirtualStreamerInfo *info)
 Increment level. More...
 
virtual Int_t ReadArray (Bool_t *&b)
 Read array of bools from the I/O buffer. More...
 
virtual Int_t ReadArray (Char_t *&c)
 Read array of characters from the I/O buffer. More...
 
virtual Int_t ReadArray (Double_t *&d)
 Read array of doubles from the I/O buffer. More...
 
virtual Int_t ReadArray (Float_t *&f)
 Read array of floats from the I/O buffer. More...
 
virtual Int_t ReadArray (Int_t *&i)
 Read array of ints from the I/O buffer. More...
 
virtual Int_t ReadArray (Long64_t *&l)
 Read array of long longs from the I/O buffer. More...
 
virtual Int_t ReadArray (Long_t *&l)
 Read array of longs from the I/O buffer. More...
 
virtual Int_t ReadArray (Short_t *&h)
 Read array of shorts from the I/O buffer. More...
 
virtual Int_t ReadArray (UChar_t *&c)
 
virtual Int_t ReadArray (UInt_t *&i)
 
virtual Int_t ReadArray (ULong64_t *&l)
 
virtual Int_t ReadArray (ULong_t *&l)
 
virtual Int_t ReadArray (UShort_t *&h)
 
virtual Int_t ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=0)
 Read array of doubles (written as float) from the I/O buffer. More...
 
virtual Int_t ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=0)
 Read array of floats (written as truncated float) from the I/O buffer. More...
 
virtual void ReadBool (Bool_t &b)
 
virtual Int_t ReadBuf (void *buf, Int_t max)
 Read max bytes from the I/O buffer into buf. More...
 
virtual void ReadChar (Char_t &c)
 
virtual void ReadCharP (Char_t *c)
 
virtual void ReadCharStar (char *&s)
 Read char* from TBuffer. More...
 
virtual TClassReadClass (const TClass *cl=0, UInt_t *objTag=0)
 Read class definition from I/O buffer. More...
 
virtual Int_t ReadClassBuffer (const TClass *cl, void *pointer, const TClass *onfile_class)
 Deserialize information from a buffer into an object. More...
 
virtual Int_t ReadClassBuffer (const TClass *cl, void *pointer, Int_t version, UInt_t start, UInt_t count, const TClass *onfile_class)
 Deserialize information from a buffer into an object. More...
 
virtual Int_t ReadClassEmulated (const TClass *cl, void *object, const TClass *onfile_class)
 Read emulated class. More...
 
virtual void ReadDouble (Double_t &d)
 
virtual void ReadDouble32 (Double_t *d, TStreamerElement *ele=0)
 Read a Double32_t from the buffer, see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More...
 
virtual void ReadFastArray (Bool_t *b, Int_t n)
 Read array of n bools from the I/O buffer. More...
 
virtual void ReadFastArray (Char_t *c, Int_t n)
 Read array of n characters from the I/O buffer. More...
 
virtual void ReadFastArray (Double_t *d, Int_t n)
 Read array of n doubles from the I/O buffer. More...
 
virtual void ReadFastArray (Float_t *f, Int_t n)
 Read array of n floats from the I/O buffer. More...
 
virtual void ReadFastArray (Int_t *i, Int_t n)
 Read array of n ints from the I/O buffer. More...
 
virtual void ReadFastArray (Long64_t *l, Int_t n)
 Read array of n long longs from the I/O buffer. More...
 
virtual void ReadFastArray (Long_t *l, Int_t n)
 Read array of n longs from the I/O buffer. More...
 
virtual void ReadFastArray (Short_t *h, Int_t n)
 Read array of n shorts from the I/O buffer. More...
 
virtual void ReadFastArray (UChar_t *c, Int_t n)
 
virtual void ReadFastArray (UInt_t *i, Int_t n)
 
virtual void ReadFastArray (ULong64_t *l, Int_t n)
 
virtual void ReadFastArray (ULong_t *l, Int_t n)
 
virtual void ReadFastArray (UShort_t *h, Int_t n)
 
virtual void ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=0, const TClass *onFileClass=0)
 Read an array of 'n' objects from the I/O buffer. More...
 
virtual void ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=0, const TClass *onFileClass=0)
 Read an array of 'n' objects from the I/O buffer. More...
 
virtual void ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=0)
 Read array of n doubles (written as float) from the I/O buffer. More...
 
virtual void ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=0)
 Read array of n floats (written as truncated float) 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 ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue)
 Read array of n doubles (written as float) from the I/O buffer. More...
 
virtual void ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue)
 Read array of n floats (written as truncated float) from the I/O buffer. More...
 
virtual void ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits)
 Read array of n doubles (written as float) from the I/O buffer. More...
 
virtual void ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits)
 Read array of n floats (written as truncated float) from the I/O buffer. More...
 
virtual void ReadFloat (Float_t &f)
 
virtual void ReadFloat16 (Float_t *f, TStreamerElement *ele=0)
 Read a Float16_t from the buffer, see comments about Float16_t encoding at TBufferFile::WriteFloat16(). More...
 
virtual void ReadInt (Int_t &i)
 
virtual void ReadLong (Long_t &l)
 Read Long from TBuffer. More...
 
virtual void ReadLong64 (Long64_t &l)
 
virtual TObjectReadObject (const TClass *cl)
 Read object from I/O buffer. More...
 
virtual voidReadObjectAny (const TClass *cast)
 Read object from I/O buffer. More...
 
virtual void ReadShort (Short_t &s)
 
virtual Int_t ReadStaticArray (Bool_t *b)
 Read array of bools from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Char_t *c)
 Read array of characters from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Double_t *d)
 Read array of doubles from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Float_t *f)
 Read array of floats from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Int_t *i)
 Read array of ints from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Long64_t *l)
 Read array of long longs from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Long_t *l)
 Read array of longs from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (Short_t *h)
 Read array of shorts from the I/O buffer. More...
 
virtual Int_t ReadStaticArray (UChar_t *c)
 
virtual Int_t ReadStaticArray (UInt_t *i)
 
virtual Int_t ReadStaticArray (ULong64_t *l)
 
virtual Int_t ReadStaticArray (ULong_t *l)
 
virtual Int_t ReadStaticArray (UShort_t *h)
 
virtual Int_t ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=0)
 Read array of doubles (written as float) from the I/O buffer. More...
 
virtual Int_t ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=0)
 Read array of floats (written as truncated float) from the I/O buffer. More...
 
virtual void ReadStdString (std::string &s)
 
virtual void ReadStdString (std::string *s)
 Read std::string from TBuffer. More...
 
virtual void ReadStdString (std::string *s)=0
 
virtual char * ReadString (char *s, Int_t max)
 Read string from I/O buffer. More...
 
virtual void ReadTString (TString &s)
 Read TString from TBuffer. More...
 
virtual void ReadUChar (UChar_t &c)
 
virtual void ReadUInt (UInt_t &i)
 
virtual void ReadULong (ULong_t &l)
 
virtual void ReadULong64 (ULong64_t &l)
 
virtual void ReadUShort (UShort_t &s)
 
virtual Version_t ReadVersion (UInt_t *start=0, UInt_t *bcnt=0, const TClass *cl=0)
 Read class version from I/O buffer. More...
 
virtual Version_t ReadVersionForMemberWise (const TClass *cl=0)
 Read class version from I/O buffer. More...
 
virtual Version_t ReadVersionNoCheckSum (UInt_t *start=0, UInt_t *bcnt=0)
 Read class version from I/O buffer, when the caller knows for sure that there is no checksum written/involved. More...
 
virtual void ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue)
 Read a Double32_t from the buffer when the factor and minimum value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More...
 
virtual void ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue)
 Read a Float16_t from the buffer when the factor and minimum value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32(). 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 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 SetByteCount (UInt_t cntpos, Bool_t packInVersion=kFALSE)
 Set byte count at position cntpos in the buffer. More...
 
virtual void SetStreamerElementNumber (TStreamerElement *, Int_t)
 
virtual void SkipObjectAny ()
 Skip any kind of object from buffer. More...
 
virtual void SkipVersion (const TClass *cl=0)
 Skip class version from I/O buffer. More...
 
virtual void StreamObject (TObject *obj)
 Stream an object inheriting from TObject using its streamer. More...
 
virtual void StreamObject (void *obj, const char *className, const TClass *onFileClass=0)
 Stream an object given the name of its actual class. More...
 
virtual void StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=0)
 Stream an object given its C++ typeinfo information. More...
 
virtual void StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=0)
 Stream an object given a pointer to its actual class. More...
 
virtual void WriteArray (const Bool_t *b, Int_t n)
 Write array of n bools into the I/O buffer. More...
 
virtual void WriteArray (const Char_t *c, Int_t n)
 Write array of n characters into the I/O buffer. More...
 
virtual void WriteArray (const Double_t *d, Int_t n)
 Write array of n doubles into the I/O buffer. More...
 
virtual void WriteArray (const Float_t *f, Int_t n)
 Write array of n floats into the I/O buffer. More...
 
virtual void WriteArray (const Int_t *i, Int_t n)
 Write array of n ints into the I/O buffer. More...
 
virtual void WriteArray (const Long64_t *l, Int_t n)
 Write array of n long longs into the I/O buffer. More...
 
virtual void WriteArray (const Long_t *l, Int_t n)
 Write array of n longs into the I/O buffer. More...
 
virtual void WriteArray (const Short_t *h, Int_t n)
 Write array of n shorts into the I/O buffer. More...
 
virtual void WriteArray (const UChar_t *c, Int_t n)
 
virtual void WriteArray (const UInt_t *i, Int_t n)
 
virtual void WriteArray (const ULong64_t *l, Int_t n)
 
virtual void WriteArray (const ULong_t *l, Int_t n)
 Write array of n unsigned longs into the I/O buffer. More...
 
virtual void WriteArray (const UShort_t *h, Int_t n)
 
virtual void WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=0)
 Write array of n doubles (as float) into the I/O buffer. More...
 
virtual void WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=0)
 Write array of n floats (as truncated float) into the I/O buffer. More...
 
virtual void WriteBool (Bool_t b)
 
virtual void WriteBuf (const void *buf, Int_t max)
 Write max bytes from buf into the I/O buffer. More...
 
virtual void WriteChar (Char_t c)
 
virtual void WriteCharP (const Char_t *c)
 
virtual void WriteCharStar (char *s)
 Write char* into TBuffer. More...
 
virtual void WriteClass (const TClass *cl)
 Write class description to I/O buffer. More...
 
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 WriteDouble (Double_t d)
 
virtual void WriteDouble32 (Double_t *d, TStreamerElement *ele=0)
 Write a Double32_t to the buffer. More...
 
virtual void WriteFastArray (const Bool_t *b, Int_t n)
 Write array of n bools into the I/O buffer. More...
 
virtual void WriteFastArray (const Char_t *c, Int_t n)
 Write array of n characters into the I/O buffer. More...
 
virtual void WriteFastArray (const Double_t *d, Int_t n)
 Write array of n doubles into the I/O buffer. More...
 
virtual void WriteFastArray (const Float_t *f, Int_t n)
 Write array of n floats into the I/O buffer. More...
 
virtual void WriteFastArray (const Int_t *i, Int_t n)
 Write array of n ints into the I/O buffer. More...
 
virtual void WriteFastArray (const Long64_t *l, Int_t n)
 Write array of n long longs into the I/O buffer. More...
 
virtual void WriteFastArray (const Long_t *l, Int_t n)
 Write array of n longs into the I/O buffer. More...
 
virtual void WriteFastArray (const Short_t *h, Int_t n)
 Write array of n shorts into the I/O buffer. More...
 
virtual void WriteFastArray (const UChar_t *c, Int_t n)
 
virtual void WriteFastArray (const UInt_t *i, Int_t n)
 
virtual void WriteFastArray (const ULong64_t *l, Int_t n)
 
virtual void WriteFastArray (const ULong_t *l, Int_t n)
 Write array of n unsigned longs into the I/O buffer. More...
 
virtual void WriteFastArray (const UShort_t *h, Int_t n)
 
virtual Int_t WriteFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=0)
 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 WriteFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=0)
 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 void WriteFastArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=0)
 Write array of n doubles (as float) into the I/O buffer. More...
 
virtual void WriteFastArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=0)
 Write array of n floats (as truncated float) into the I/O buffer. 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)
 
virtual void WriteFloat16 (Float_t *f, TStreamerElement *ele=0)
 Write a Float16_t to the buffer. More...
 
virtual void WriteInt (Int_t i)
 
virtual void WriteLong (Long_t l)
 
virtual void WriteLong64 (Long64_t l)
 
virtual void WriteShort (Short_t s)
 
virtual void WriteStdString (const std::string *s)
 Write std::string to TBuffer. More...
 
virtual void WriteStdString (const std::string *s)=0
 
virtual void WriteStdString (std::string &s)
 
virtual void WriteString (const char *s)
 Write string to I/O buffer. More...
 
virtual void WriteTString (const TString &s)
 Write TString to TBuffer. More...
 
virtual void WriteUChar (UChar_t c)
 
virtual void WriteUInt (UInt_t i)
 
virtual void WriteULong (ULong_t l)
 
virtual void WriteULong64 (ULong64_t l)
 
virtual void WriteUShort (UShort_t s)
 
virtual UInt_t WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE)
 Write class version to I/O buffer. More...
 
virtual UInt_t WriteVersionMemberWise (const TClass *cl, Bool_t useBcnt=kFALSE)
 Write class version to I/O buffer after setting the kStreamedMemberWise bit in the version number. More...
 
- 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...
 
template<class T >
Int_t WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE)
 
virtual void WriteObject (const TObject *obj, Bool_t cacheReuse)=0
 
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...
 
virtual Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object)=0
 
virtual Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection)=0
 
virtual Int_t ApplySequenceVecPtr (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection)=0
 
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
 
virtual Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const char *classname)=0
 
virtual Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss)=0
 
virtual Bool_t CheckObject (const TObject *obj)=0
 
virtual Bool_t CheckObject (const void *obj, const TClass *ptrClass)=0
 
virtual void ClassBegin (const TClass *, Version_t=-1)=0
 
virtual void ClassEnd (const TClass *)=0
 
virtual void ClassMember (const char *, const char *=0, Int_t=-1, Int_t=-1)=0
 
virtual void DecrementLevel (TVirtualStreamerInfo *)=0
 
void DetachBuffer ()
 
void Expand (Int_t newsize, Bool_t copy=kTRUE)
 Expand (or shrink) the I/O buffer to newsize bytes. More...
 
virtual void ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force)=0
 
virtual void ForceWriteInfoClones (TClonesArray *a)=0
 
virtual Int_t GetBufferDisplacement () const =0
 
Int_t GetBufferVersion () const
 
virtual TVirtualStreamerInfoGetInfo ()=0
 
virtual TProcessIDGetLastProcessID (TRefTable *reftable) const =0
 
virtual Int_t GetMapCount () const =0
 
virtual void GetMappedObject (UInt_t tag, void *&ptr, TClass *&ClassPtr) const =0
 
TObjectGetParent () const
 Return pointer to parent of this buffer. More...
 
virtual UShort_t GetPidOffset () const =0
 
ReAllocCharFun_t GetReAllocFunc () const
 Return the reallocation method currently used. More...
 
virtual UInt_t GetTRefExecId ()=0
 
virtual Int_t GetVersionOwner () const =0
 
virtual void IncrementLevel (TVirtualStreamerInfo *info)=0
 
virtual void InitMap ()=0
 
Bool_t IsReading () const
 
Bool_t IsWriting () const
 
Int_t Length () const
 
virtual void MapObject (const TObject *obj, UInt_t offset=1)=0
 
virtual void MapObject (const void *obj, const TClass *cl, UInt_t offset=1)=0
 
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 Int_t ReadArray (Bool_t *&b)=0
 
virtual Int_t ReadArray (Char_t *&c)=0
 
virtual Int_t ReadArray (Double_t *&d)=0
 
virtual Int_t ReadArray (Float_t *&f)=0
 
virtual Int_t ReadArray (Int_t *&i)=0
 
virtual Int_t ReadArray (Long64_t *&l)=0
 
virtual Int_t ReadArray (Long_t *&l)=0
 
virtual Int_t ReadArray (Short_t *&h)=0
 
virtual Int_t ReadArray (UChar_t *&c)=0
 
virtual Int_t ReadArray (UInt_t *&i)=0
 
virtual Int_t ReadArray (ULong64_t *&l)=0
 
virtual Int_t ReadArray (ULong_t *&l)=0
 
virtual Int_t ReadArray (UShort_t *&h)=0
 
virtual Int_t ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=0)=0
 
virtual Int_t ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=0)=0
 
virtual void ReadBool (Bool_t &b)=0
 
virtual Int_t ReadBuf (void *buf, Int_t max)=0
 
virtual void ReadChar (Char_t &c)=0
 
virtual void ReadCharP (Char_t *c)=0
 
virtual void ReadCharStar (char *&s)=0
 
virtual TClassReadClass (const TClass *cl=0, UInt_t *objTag=0)=0
 
virtual Int_t ReadClassBuffer (const TClass *cl, void *pointer, const TClass *onfile_class=0)=0
 
virtual Int_t ReadClassBuffer (const TClass *cl, void *pointer, Int_t version, UInt_t start, UInt_t count, const TClass *onfile_class=0)=0
 
virtual Int_t ReadClassEmulated (const TClass *cl, void *object, const TClass *onfile_class=0)=0
 
virtual Int_t ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers)=0
 
virtual void ReadDouble (Double_t &d)=0
 
virtual void ReadDouble32 (Double_t *d, TStreamerElement *ele=0)=0
 
virtual void ReadFastArray (Bool_t *b, Int_t n)=0
 
virtual void ReadFastArray (Char_t *c, Int_t n)=0
 
virtual void ReadFastArray (Double_t *d, Int_t n)=0
 
virtual void ReadFastArray (Float_t *f, Int_t n)=0
 
virtual void ReadFastArray (Int_t *i, Int_t n)=0
 
virtual void ReadFastArray (Long64_t *l, Int_t n)=0
 
virtual void ReadFastArray (Long_t *l, Int_t n)=0
 
virtual void ReadFastArray (Short_t *h, Int_t n)=0
 
virtual void ReadFastArray (UChar_t *c, Int_t n)=0
 
virtual void ReadFastArray (UInt_t *i, Int_t n)=0
 
virtual void ReadFastArray (ULong64_t *l, Int_t n)=0
 
virtual void ReadFastArray (ULong_t *l, Int_t n)=0
 
virtual void ReadFastArray (UShort_t *h, Int_t n)=0
 
virtual void ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=0, const TClass *onFileClass=0)=0
 
virtual void ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=0, const TClass *onFileClass=0)=0
 
virtual void ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=0)=0
 
virtual void ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=0)=0
 
virtual void ReadFastArrayString (Char_t *c, Int_t n)=0
 
virtual void ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue)=0
 
virtual void ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue)=0
 
virtual void ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits)=0
 
virtual void ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits)=0
 
virtual void ReadFloat (Float_t &f)=0
 
virtual void ReadFloat16 (Float_t *f, TStreamerElement *ele=0)=0
 
virtual void ReadInt (Int_t &i)=0
 
virtual void ReadLong (Long_t &l)=0
 
virtual void ReadLong64 (Long64_t &l)=0
 
virtual TObjectReadObject (const TClass *cl)=0
 
virtual voidReadObjectAny (const TClass *cast)=0
 
virtual TProcessIDReadProcessID (UShort_t pidf)=0
 Return the current Process-ID. More...
 
virtual void ReadShort (Short_t &s)=0
 
virtual Int_t ReadStaticArray (Bool_t *b)=0
 
virtual Int_t ReadStaticArray (Char_t *c)=0
 
virtual Int_t ReadStaticArray (Double_t *d)=0
 
virtual Int_t ReadStaticArray (Float_t *f)=0
 
virtual Int_t ReadStaticArray (Int_t *i)=0
 
virtual Int_t ReadStaticArray (Long64_t *l)=0
 
virtual Int_t ReadStaticArray (Long_t *l)=0
 
virtual Int_t ReadStaticArray (Short_t *h)=0
 
virtual Int_t ReadStaticArray (UChar_t *c)=0
 
virtual Int_t ReadStaticArray (UInt_t *i)=0
 
virtual Int_t ReadStaticArray (ULong64_t *l)=0
 
virtual Int_t ReadStaticArray (ULong_t *l)=0
 
virtual Int_t ReadStaticArray (UShort_t *h)=0
 
virtual Int_t ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=0)=0
 
virtual Int_t ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=0)=0
 
virtual void ReadStdString (std::string &s)
 
virtual void ReadStdString (std::string *s)=0
 
virtual char * ReadString (char *s, Int_t max)=0
 
virtual void ReadTString (TString &s)=0
 
virtual void ReadUChar (UChar_t &c)=0
 
virtual void ReadUInt (UInt_t &i)=0
 
virtual void ReadULong (ULong_t &l)=0
 
virtual void ReadULong64 (ULong64_t &l)=0
 
virtual void ReadUShort (UShort_t &s)=0
 
virtual Version_t ReadVersion (UInt_t *start=0, UInt_t *bcnt=0, const TClass *cl=0)=0
 
virtual Version_t ReadVersionForMemberWise (const TClass *cl=0)=0
 
virtual Version_t ReadVersionNoCheckSum (UInt_t *start=0, UInt_t *bcnt=0)=0
 
virtual void ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue)=0
 
virtual void ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue)=0
 
virtual void ReadWithNbits (Double_t *ptr, Int_t nbits)=0
 
virtual void ReadWithNbits (Float_t *ptr, Int_t nbits)=0
 
virtual void Reset ()=0
 
virtual void ResetMap ()=0
 
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...
 
virtual void SetBufferDisplacement ()=0
 
virtual void SetBufferDisplacement (Int_t skipped)=0
 
void SetBufferOffset (Int_t offset=0)
 
virtual void SetByteCount (UInt_t cntpos, Bool_t packInVersion=kFALSE)=0
 
void SetParent (TObject *parent)
 Set parent owning this buffer. More...
 
virtual void SetPidOffset (UShort_t offset)=0
 
void SetReadMode ()
 Set buffer in read mode. More...
 
virtual void SetReadParam (Int_t mapsize)=0
 
void SetReAllocFunc (ReAllocCharFun_t reallocfunc=0)
 Set which memory reallocation method to use. More...
 
virtual void SetStreamerElementNumber (TStreamerElement *elem, Int_t comp_type)=0
 
void SetWriteMode ()
 Set buffer in write mode. More...
 
virtual void SetWriteParam (Int_t mapsize)=0
 
virtual void SkipObjectAny ()=0
 
virtual void SkipVersion (const TClass *cl=0)=0
 
virtual void StreamObject (TObject *obj)=0
 
virtual void StreamObject (void *obj, const char *className, const TClass *onFileClass=0)=0
 
virtual void StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=0)=0
 
virtual void StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=0)=0
 
virtual void TagStreamerInfo (TVirtualStreamerInfo *info)=0
 
virtual void WriteArray (const Bool_t *b, Int_t n)=0
 
virtual void WriteArray (const Char_t *c, Int_t n)=0
 
virtual void WriteArray (const Double_t *d, Int_t n)=0
 
virtual void WriteArray (const Float_t *f, Int_t n)=0
 
virtual void WriteArray (const Int_t *i, Int_t n)=0
 
virtual void WriteArray (const Long64_t *l, Int_t n)=0
 
virtual void WriteArray (const Long_t *l, Int_t n)=0
 
virtual void WriteArray (const Short_t *h, Int_t n)=0
 
virtual void WriteArray (const UChar_t *c, Int_t n)=0
 
virtual void WriteArray (const UInt_t *i, Int_t n)=0
 
virtual void WriteArray (const ULong64_t *l, Int_t n)=0
 
virtual void WriteArray (const ULong_t *l, Int_t n)=0
 
virtual void WriteArray (const UShort_t *h, Int_t n)=0
 
virtual void WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=0)=0
 
virtual void WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=0)=0
 
virtual void WriteBool (Bool_t b)=0
 
virtual void WriteBuf (const void *buf, Int_t max)=0
 
virtual void WriteChar (Char_t c)=0
 
virtual void WriteCharP (const Char_t *c)=0
 
virtual void WriteCharStar (char *s)=0
 
virtual void WriteClass (const TClass *cl)=0
 
virtual Int_t WriteClassBuffer (const TClass *cl, void *pointer)=0
 
virtual Int_t WriteClones (TClonesArray *a, Int_t nobjects)=0
 
virtual void WriteDouble (Double_t d)=0
 
virtual void WriteDouble32 (Double_t *d, TStreamerElement *ele=0)=0
 
virtual void WriteFastArray (const Bool_t *b, Int_t n)=0
 
virtual void WriteFastArray (const Char_t *c, Int_t n)=0
 
virtual void WriteFastArray (const Double_t *d, Int_t n)=0
 
virtual void WriteFastArray (const Float_t *f, Int_t n)=0
 
virtual void WriteFastArray (const Int_t *i, Int_t n)=0
 
virtual void WriteFastArray (const Long64_t *l, Int_t n)=0
 
virtual void WriteFastArray (const Long_t *l, Int_t n)=0
 
virtual void WriteFastArray (const Short_t *h, Int_t n)=0
 
virtual void WriteFastArray (const UChar_t *c, Int_t n)=0
 
virtual void WriteFastArray (const UInt_t *i, Int_t n)=0
 
virtual void WriteFastArray (const ULong64_t *l, Int_t n)=0
 
virtual void WriteFastArray (const ULong_t *l, Int_t n)=0
 
virtual void WriteFastArray (const UShort_t *h, Int_t n)=0
 
virtual Int_t WriteFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=0)=0
 
virtual void WriteFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=0)=0
 
virtual void WriteFastArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=0)=0
 
virtual void WriteFastArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=0)=0
 
virtual void WriteFastArrayString (const Char_t *c, Int_t n)=0
 
virtual void WriteFloat (Float_t f)=0
 
virtual void WriteFloat16 (Float_t *f, TStreamerElement *ele=0)=0
 
virtual void WriteInt (Int_t i)=0
 
virtual void WriteLong (Long_t l)=0
 
virtual void WriteLong64 (Long64_t l)=0
 
template<class T >
Int_t WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE)
 
virtual void WriteObject (const TObject *obj, Bool_t cacheReuse)=0
 
virtual Int_t WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE)=0
 
virtual UShort_t WriteProcessID (TProcessID *pid)=0
 Always return 0 (current processID). More...
 
virtual void WriteShort (Short_t s)=0
 
virtual void WriteStdString (const std::string *s)=0
 
virtual void WriteStdString (std::string &s)
 
virtual void WriteString (const char *s)=0
 
virtual void WriteTString (const TString &s)=0
 
virtual void WriteUChar (UChar_t c)=0
 
virtual void WriteUInt (UInt_t i)=0
 
virtual void WriteULong (ULong_t l)=0
 
virtual void WriteULong64 (ULong64_t l)=0
 
virtual void WriteUShort (UShort_t s)=0
 
virtual UInt_t WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE)=0
 
virtual UInt_t WriteVersionMemberWise (const TClass *cl, Bool_t useBcnt=kFALSE)=0
 
- 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 ()
 Check and record whether 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 Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. 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)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
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...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 

Protected Types

typedef std::vector< TStreamerInfo * > InfoList_t
 
- Protected Types inherited from TBufferIO
enum  { kNullTag = 0 }
 
- Protected Types inherited from TBuffer
typedef std::vector< TVirtualArray * > CacheList_t
 

Protected Member Functions

 TBufferFile ()=default
 
 TBufferFile (const TBufferFile &)
 not implemented More...
 
Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss, const char *classname)
 Check byte count with current buffer position. More...
 
virtual void CheckCount (UInt_t offset)
 Check if offset is not too large (< kMaxMapCount) when writing. More...
 
UInt_t CheckObject (UInt_t offset, const TClass *cl, Bool_t readClass=kFALSE)
 Check for object in the read map. More...
 
void operator= (const TBufferFile &)
 not implemented More...
 
virtual void WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse)
 Write object to I/O buffer. 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...
 
virtual void WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse)=0
 
- 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 Attributes

TStreamerInfofInfo {nullptr}
 Pointer to TStreamerInfo object writing/reading the buffer. More...
 
InfoList_t fInfoStack
 Stack of pointers to the TStreamerInfos. 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
 

Additional Inherited Members

- 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 char *className)
 Forward to TROOT::GetClass(). More...
 
static TClassGetClass (const std::type_info &typeinfo)
 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 Protected Member Functions inherited from TBufferIO
static R__ALWAYS_INLINE ULong_t Void_Hash (const void *ptr)
 Return hash value for provided object. More...
 
- Static Protected Attributes inherited from TBufferIO
static Int_t fgMapSize = kMapSize
 Default map size for all TBuffer objects. More...
 

#include <TBufferFile.h>

Inheritance diagram for TBufferFile:
[legend]

Member Typedef Documentation

◆ InfoList_t

typedef std::vector<TStreamerInfo*> TBufferFile::InfoList_t
protected

Definition at line 49 of file TBufferFile.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kStreamedMemberWise 

Definition at line 68 of file TBufferFile.h.

Constructor & Destructor Documentation

◆ TBufferFile() [1/5]

TBufferFile::TBufferFile ( )
protecteddefault

◆ TBufferFile() [2/5]

TBufferFile::TBufferFile ( const TBufferFile )
protected

not implemented

◆ TBufferFile() [3/5]

TBufferFile::TBufferFile ( TBuffer::EMode  mode)

Create an I/O buffer object.

Mode should be either TBuffer::kRead or TBuffer::kWrite. By default the I/O buffer has a size of TBuffer::kInitialSize (1024) bytes.

Definition at line 77 of file TBufferFile.cxx.

◆ TBufferFile() [4/5]

TBufferFile::TBufferFile ( TBuffer::EMode  mode,
Int_t  bufsiz 
)

Create an I/O buffer object.

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

Definition at line 87 of file TBufferFile.cxx.

◆ TBufferFile() [5/5]

TBufferFile::TBufferFile ( TBuffer::EMode  mode,
Int_t  bufsiz,
void buf,
Bool_t  adopt = kTRUE,
ReAllocCharFun_t  reallocfunc = 0 
)

Create an I/O buffer object.

Mode should be either TBuffer::kRead or TBuffer::kWrite. By default the I/O buffer has a size of TBuffer::kInitialSize (1024) bytes. An external buffer can be passed to TBuffer via the buf argument. By default this buffer will be adopted unless adopt is false. If the new buffer is not adopted and no memory allocation routine is provided, a Fatal error will be issued if the Buffer attempts to expand.

Definition at line 104 of file TBufferFile.cxx.

◆ ~TBufferFile()

TBufferFile::~TBufferFile ( )
virtual

Delete an I/O buffer object.

Definition at line 113 of file TBufferFile.cxx.

Member Function Documentation

◆ ApplySequence() [1/2]

Int_t TBufferFile::ApplySequence ( const TStreamerInfoActions::TActionSequence sequence,
void obj 
)
virtual

Read one collection of objects from the buffer using the StreamerInfoLoopAction.

The collection needs to be a split TClonesArray or a split vector of pointers.

Implements TBuffer.

Definition at line 3546 of file TBufferFile.cxx.

◆ ApplySequence() [2/2]

Int_t TBufferFile::ApplySequence ( const TStreamerInfoActions::TActionSequence sequence,
void start_collection,
void end_collection 
)
virtual

Read one collection of objects from the buffer using the StreamerInfoLoopAction.

Implements TBuffer.

Definition at line 3603 of file TBufferFile.cxx.

◆ ApplySequenceVecPtr()

Int_t TBufferFile::ApplySequenceVecPtr ( const TStreamerInfoActions::TActionSequence sequence,
void start_collection,
void end_collection 
)
virtual

Read one collection of objects from the buffer using the StreamerInfoLoopAction.

The collection needs to be a split TClonesArray or a split vector of pointers.

Implements TBuffer.

Definition at line 3575 of file TBufferFile.cxx.

◆ CheckByteCount() [1/3]

Int_t TBufferFile::CheckByteCount ( UInt_t  startpos,
UInt_t  bcnt,
const char *  classname 
)
virtual

Check byte count with current buffer position.

They should match. If not print warning and position buffer in correct place determined by the byte count. Startpos is position of first byte where the byte count is written in buffer. Returns 0 if everything is ok, otherwise the bytecount offset (< 0 when read too little, >0 when read too much).

Implements TBuffer.

Definition at line 423 of file TBufferFile.cxx.

◆ CheckByteCount() [2/3]

Int_t TBufferFile::CheckByteCount ( UInt_t  startpos,
UInt_t  bcnt,
const TClass clss 
)
virtual

Check byte count with current buffer position.

They should match. If not print warning and position buffer in correct place determined by the byte count. Startpos is position of first byte where the byte count is written in buffer. Returns 0 if everything is ok, otherwise the bytecount offset (< 0 when read too little, >0 when read too much).

Implements TBuffer.

Definition at line 409 of file TBufferFile.cxx.

◆ CheckByteCount() [3/3]

Int_t TBufferFile::CheckByteCount ( UInt_t  startpos,
UInt_t  bcnt,
const TClass clss,
const char *  classname 
)
protected

Check byte count with current buffer position.

They should match. If not print warning and position buffer in correct place determined by the byte count. Startpos is position of first byte where the byte count is written in buffer. Returns 0 if everything is ok, otherwise the bytecount offset (< 0 when read too little, >0 when read too much).

Definition at line 356 of file TBufferFile.cxx.

◆ CheckCount()

void TBufferFile::CheckCount ( UInt_t  offset)
protectedvirtual

Check if offset is not too large (< kMaxMapCount) when writing.

Reimplemented from TBufferIO.

Definition at line 3075 of file TBufferFile.cxx.

◆ CheckObject() [1/3]

Bool_t TBufferIO::CheckObject ( const TObject obj)
virtual

Check if the specified object is already in the buffer.

Returns kTRUE if object already in the buffer, kFALSE otherwise (also if obj is 0 or TBuffer not in writing mode).

Reimplemented from TBufferIO.

Definition at line 94 of file TBufferIO.cxx.

◆ CheckObject() [2/3]

Bool_t TBufferIO::CheckObject ( const void obj,
const TClass ptrClass 
)
virtual

Check if the specified object of the specified class is already in the buffer.

Returns kTRUE if object already in the buffer, kFALSE otherwise (also if obj is 0 ).

Reimplemented from TBufferIO.

Definition at line 95 of file TBufferIO.cxx.

◆ CheckObject() [3/3]

UInt_t TBufferFile::CheckObject ( UInt_t  offset,
const TClass cl,
Bool_t  readClass = kFALSE 
)
protected

Check for object in the read map.

If the object is 0 it still has to be read. Try to read it from the buffer starting at location offset. If the object is -1 then it really does not exist and we return 0. If the object exists just return the offset.

Definition at line 3091 of file TBufferFile.cxx.

◆ ClassBegin()

virtual void TBufferFile::ClassBegin ( const TClass ,
Version_t  = -1 
)
inlinevirtual

Implements TBuffer.

Definition at line 93 of file TBufferFile.h.

◆ ClassEnd()

virtual void TBufferFile::ClassEnd ( const TClass )
inlinevirtual

Implements TBuffer.

Definition at line 94 of file TBufferFile.h.

◆ ClassMember()

virtual void TBufferFile::ClassMember ( const char *  ,
const char *  = 0,
Int_t  = -1,
Int_t  = -1 
)
inlinevirtual

Implements TBuffer.

Definition at line 95 of file TBufferFile.h.

◆ DecrementLevel()

void TBufferFile::DecrementLevel ( TVirtualStreamerInfo )
virtual

Decrement level.

Implements TBuffer.

Definition at line 129 of file TBufferFile.cxx.

◆ GetInfo()

TVirtualStreamerInfo * TBufferFile::GetInfo ( )
inlinevirtual

Implements TBuffer.

Definition at line 92 of file TBufferFile.h.

◆ IncrementLevel()

void TBufferFile::IncrementLevel ( TVirtualStreamerInfo info)
virtual

Increment level.

Implements TBuffer.

Definition at line 120 of file TBufferFile.cxx.

◆ operator=()

void TBufferFile::operator= ( const TBufferFile )
protected

not implemented

◆ ReadArray() [1/13]

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

Read array of bools from the I/O buffer.

Returns the number of bools read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 701 of file TBufferFile.cxx.

◆ ReadArray() [2/13]

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

Read array of characters from the I/O buffer.

Returns the number of characters read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 729 of file TBufferFile.cxx.

◆ ReadArray() [3/13]

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

Read array of doubles from the I/O buffer.

Returns the number of doubles read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 905 of file TBufferFile.cxx.

◆ ReadArray() [4/13]

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

Read array of floats from the I/O buffer.

Returns the number of floats read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 872 of file TBufferFile.cxx.

◆ ReadArray() [5/13]

Int_t TBufferFile::ReadArray ( Int_t *&  ii)
virtual

Read array of ints from the I/O buffer.

Returns the number of ints read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 785 of file TBufferFile.cxx.

◆ ReadArray() [6/13]

Int_t TBufferFile::ReadArray ( Long64_t *&  ll)
virtual

Read array of long longs from the I/O buffer.

Returns the number of long longs read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 844 of file TBufferFile.cxx.

◆ ReadArray() [7/13]

Int_t TBufferFile::ReadArray ( Long_t *&  ll)
virtual

Read array of longs from the I/O buffer.

Returns the number of longs read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 818 of file TBufferFile.cxx.

◆ ReadArray() [8/13]

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

Read array of shorts from the I/O buffer.

Returns the number of shorts read. If argument is a 0 pointer then space will be allocated for the array.

Implements TBuffer.

Definition at line 752 of file TBufferFile.cxx.

◆ ReadArray() [9/13]

Int_t TBufferFile::ReadArray ( UChar_t *&  c)
inlinevirtual

Implements TBuffer.

Definition at line 455 of file TBufferFile.h.

◆ ReadArray() [10/13]

Int_t TBufferFile::ReadArray ( UInt_t *&  i)
inlinevirtual

Implements TBuffer.

Definition at line 461 of file TBufferFile.h.

◆ ReadArray() [11/13]

Int_t TBufferFile::ReadArray ( ULong64_t *&  l)
inlinevirtual

Implements TBuffer.

Definition at line 467 of file TBufferFile.h.

◆ ReadArray() [12/13]

Int_t TBufferFile::ReadArray ( ULong_t *&  l)
inlinevirtual

Implements TBuffer.

Definition at line 464 of file TBufferFile.h.

◆ ReadArray() [13/13]

Int_t TBufferFile::ReadArray ( UShort_t *&  h)
inlinevirtual

Implements TBuffer.

Definition at line 458 of file TBufferFile.h.

◆ ReadArrayDouble32()

Int_t TBufferFile::ReadArrayDouble32 ( Double_t *&  d,
TStreamerElement ele = 0 
)
virtual

Read array of doubles (written as float) from the I/O buffer.

Returns the number of doubles read. If argument is a 0 pointer then space will be allocated for the array. see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Definition at line 956 of file TBufferFile.cxx.

◆ ReadArrayFloat16()

Int_t TBufferFile::ReadArrayFloat16 ( Float_t *&  f,
TStreamerElement ele = 0 
)
virtual

Read array of floats (written as truncated float) from the I/O buffer.

Returns the number of floats read. If argument is a 0 pointer then space will be allocated for the array. see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Definition at line 934 of file TBufferFile.cxx.

◆ ReadBool()

void TBufferFile::ReadBool ( Bool_t b)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 368 of file TBufferFile.h.

◆ ReadBuf()

Int_t TBufferFile::ReadBuf ( void buf,
Int_t  max 
)
virtual

Read max bytes from the I/O buffer into buf.

The function returns the actual number of bytes read.

Implements TBuffer.

Definition at line 3167 of file TBufferFile.cxx.

◆ ReadChar()

void TBufferFile::ReadChar ( Char_t c)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 374 of file TBufferFile.h.

◆ ReadCharP()

void TBufferFile::ReadCharP ( Char_t c)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 449 of file TBufferFile.h.

◆ ReadCharStar()

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

Read char* from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 285 of file TBufferFile.cxx.

◆ ReadClass()

TClass * TBufferFile::ReadClass ( const TClass clReq = 0,
UInt_t objTag = 0 
)
virtual

Read class definition from I/O buffer.

Parameters
[in]clReqCan be used to cross check if the actually read object is of the requested class.
[in]objTagSet in case the object is a reference to an already read object.

Implements TBuffer.

Definition at line 2566 of file TBufferFile.cxx.

◆ ReadClassBuffer() [1/2]

Int_t TBufferFile::ReadClassBuffer ( const TClass cl,
void pointer,
const TClass onFileClass 
)
virtual

Deserialize information from a buffer into an object.

Note: This function is called by the xxx::Streamer() functions in rootcint-generated dictionaries.

Implements TBuffer.

Definition at line 3361 of file TBufferFile.cxx.

◆ ReadClassBuffer() [2/2]

Int_t TBufferFile::ReadClassBuffer ( const TClass cl,
void pointer,
Int_t  version,
UInt_t  start,
UInt_t  count,
const TClass onFileClass 
)
virtual

Deserialize information from a buffer into an object.

Note: This function is called by the xxx::Streamer() functions in rootcint-generated dictionaries. This function assumes that the class version and the byte count information have been read.

Parameters
[in]versionThe version number of the class
[in]startThe starting position in the buffer b
[in]countThe number of bytes for this object in the buffer

Implements TBuffer.

Definition at line 3277 of file TBufferFile.cxx.

◆ ReadClassEmulated()

Int_t TBufferFile::ReadClassEmulated ( const TClass cl,
void object,
const TClass onfile_class 
)
virtual

Read emulated class.

Implements TBuffer.

Definition at line 3237 of file TBufferFile.cxx.

◆ ReadDouble()

void TBufferFile::ReadDouble ( Double_t d)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 443 of file TBufferFile.h.

◆ ReadDouble32()

void TBufferFile::ReadDouble32 ( Double_t d,
TStreamerElement ele = 0 
)
virtual

Read a Double32_t from the buffer, see comments about Double32_t encoding at TBufferFile::WriteDouble32().

Implements TBuffer.

Definition at line 449 of file TBufferFile.cxx.

◆ ReadFastArray() [1/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1241 of file TBufferFile.cxx.

◆ ReadFastArray() [2/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1258 of file TBufferFile.cxx.

◆ ReadFastArray() [3/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1397 of file TBufferFile.cxx.

◆ ReadFastArray() [4/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1375 of file TBufferFile.cxx.

◆ ReadFastArray() [5/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1320 of file TBufferFile.cxx.

◆ ReadFastArray() [6/15]

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

Read array of n long longs from the I/O buffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1358 of file TBufferFile.cxx.

◆ ReadFastArray() [7/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1342 of file TBufferFile.cxx.

◆ ReadFastArray() [8/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1298 of file TBufferFile.cxx.

◆ ReadFastArray() [9/15]

void TBufferFile::ReadFastArray ( UChar_t c,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 487 of file TBufferFile.h.

◆ ReadFastArray() [10/15]

void TBufferFile::ReadFastArray ( UInt_t i,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 493 of file TBufferFile.h.

◆ ReadFastArray() [11/15]

void TBufferFile::ReadFastArray ( ULong64_t l,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 499 of file TBufferFile.h.

◆ ReadFastArray() [12/15]

void TBufferFile::ReadFastArray ( ULong_t l,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 496 of file TBufferFile.h.

◆ ReadFastArray() [13/15]

void TBufferFile::ReadFastArray ( UShort_t h,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 490 of file TBufferFile.h.

◆ ReadFastArray() [14/15]

void TBufferFile::ReadFastArray ( void **  start,
const TClass cl,
Int_t  n = 1,
Bool_t  isPreAlloc = kFALSE,
TMemberStreamer streamer = 0,
const TClass onFileClass = 0 
)
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.

Reimplemented in TBufferSQL.

Definition at line 1619 of file TBufferFile.cxx.

◆ ReadFastArray() [15/15]

void TBufferFile::ReadFastArray ( void start,
const TClass cl,
Int_t  n = 1,
TMemberStreamer streamer = 0,
const TClass onFileClass = 0 
)
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.

Reimplemented in TBufferSQL.

Definition at line 1596 of file TBufferFile.cxx.

◆ ReadFastArrayDouble32()

void TBufferFile::ReadFastArrayDouble32 ( Double_t d,
Int_t  n,
TStreamerElement ele = 0 
)
virtual

Read array of n doubles (written as float) from the I/O buffer.

see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1497 of file TBufferFile.cxx.

◆ ReadFastArrayFloat16()

void TBufferFile::ReadFastArrayFloat16 ( Float_t f,
Int_t  n,
TStreamerElement ele = 0 
)
virtual

Read array of n floats (written as truncated float) from the I/O buffer.

see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1415 of file TBufferFile.cxx.

◆ ReadFastArrayString()

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1270 of file TBufferFile.cxx.

◆ ReadFastArrayWithFactor() [1/2]

void TBufferFile::ReadFastArrayWithFactor ( Double_t d,
Int_t  n,
Double_t  factor,
Double_t  minvalue 
)
virtual

Read array of n doubles (written as float) from the I/O buffer.

see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1545 of file TBufferFile.cxx.

◆ ReadFastArrayWithFactor() [2/2]

void TBufferFile::ReadFastArrayWithFactor ( Float_t ptr,
Int_t  n,
Double_t  factor,
Double_t  minvalue 
)
virtual

Read array of n floats (written as truncated float) from the I/O buffer.

see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1455 of file TBufferFile.cxx.

◆ ReadFastArrayWithNbits() [1/2]

void TBufferFile::ReadFastArrayWithNbits ( Double_t d,
Int_t  n,
Int_t  nbits 
)
virtual

Read array of n doubles (written as float) from the I/O buffer.

see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1559 of file TBufferFile.cxx.

◆ ReadFastArrayWithNbits() [2/2]

void TBufferFile::ReadFastArrayWithNbits ( Float_t ptr,
Int_t  n,
Int_t  nbits 
)
virtual

Read array of n floats (written as truncated float) from the I/O buffer.

see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1469 of file TBufferFile.cxx.

◆ ReadFloat()

void TBufferFile::ReadFloat ( Float_t f)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 437 of file TBufferFile.h.

◆ ReadFloat16()

void TBufferFile::ReadFloat16 ( Float_t f,
TStreamerElement ele = 0 
)
virtual

Read a Float16_t from the buffer, see comments about Float16_t encoding at TBufferFile::WriteFloat16().

Implements TBuffer.

Definition at line 433 of file TBufferFile.cxx.

◆ ReadInt()

void TBufferFile::ReadInt ( Int_t i)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 398 of file TBufferFile.h.

◆ ReadLong()

void TBufferFile::ReadLong ( Long_t l)
virtual

Read Long from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 173 of file TBufferFile.cxx.

◆ ReadLong64()

void TBufferFile::ReadLong64 ( Long64_t l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 425 of file TBufferFile.h.

◆ ReadObject()

TObject * TBufferFile::ReadObject ( const TClass cl)
virtual

Read object from I/O buffer.

clReq is NOT used.

The value returned is the address of the actual start in memory of the object. Note that if the actual class of the object does not inherit first from TObject, the type of the pointer is NOT 'TObject*'. [More accurately, the class needs to start with the TObject part, for the pointer to be a real TObject*]. We recommend using ReadObjectAny instead of ReadObject

Implements TBuffer.

Definition at line 2321 of file TBufferFile.cxx.

◆ ReadObjectAny()

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

Read object from I/O buffer.

A typical use for this function is:

MyClass *ptr = (MyClass*)b.ReadObjectAny(MyClass::Class());

I.e. clCast should point to a TClass object describing the class pointed to by your pointer. In case of multiple inheritance, the return value might not be the real beginning of the object in memory. You will need to use a dynamic_cast later if you need to retrieve it.

Implements TBuffer.

Definition at line 2349 of file TBufferFile.cxx.

◆ ReadShort()

void TBufferFile::ReadShort ( Short_t s)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 386 of file TBufferFile.h.

◆ ReadStaticArray() [1/13]

Int_t TBufferFile::ReadStaticArray ( Bool_t b)
virtual

Read array of bools from the I/O buffer.

Returns the number of bools read.

Implements TBuffer.

Definition at line 976 of file TBufferFile.cxx.

◆ ReadStaticArray() [2/13]

Int_t TBufferFile::ReadStaticArray ( Char_t c)
virtual

Read array of characters from the I/O buffer.

Returns the number of characters read.

Implements TBuffer.

Definition at line 1003 of file TBufferFile.cxx.

◆ ReadStaticArray() [3/13]

Int_t TBufferFile::ReadStaticArray ( Double_t d)
virtual

Read array of doubles from the I/O buffer.

Returns the number of doubles read.

Implements TBuffer.

Definition at line 1173 of file TBufferFile.cxx.

◆ ReadStaticArray() [4/13]

Int_t TBufferFile::ReadStaticArray ( Float_t f)
virtual

Read array of floats from the I/O buffer.

Returns the number of floats read.

Implements TBuffer.

Definition at line 1141 of file TBufferFile.cxx.

◆ ReadStaticArray() [5/13]

Int_t TBufferFile::ReadStaticArray ( Int_t ii)
virtual

Read array of ints from the I/O buffer.

Returns the number of ints read.

Implements TBuffer.

Definition at line 1057 of file TBufferFile.cxx.

◆ ReadStaticArray() [6/13]

Int_t TBufferFile::ReadStaticArray ( Long64_t ll)
virtual

Read array of long longs from the I/O buffer.

Returns the number of long longs read.

Implements TBuffer.

Definition at line 1114 of file TBufferFile.cxx.

◆ ReadStaticArray() [7/13]

Int_t TBufferFile::ReadStaticArray ( Long_t ll)
virtual

Read array of longs from the I/O buffer.

Returns the number of longs read.

Implements TBuffer.

Definition at line 1089 of file TBufferFile.cxx.

◆ ReadStaticArray() [8/13]

Int_t TBufferFile::ReadStaticArray ( Short_t h)
virtual

Read array of shorts from the I/O buffer.

Returns the number of shorts read.

Implements TBuffer.

Definition at line 1025 of file TBufferFile.cxx.

◆ ReadStaticArray() [9/13]

Int_t TBufferFile::ReadStaticArray ( UChar_t c)
inlinevirtual

Implements TBuffer.

Definition at line 471 of file TBufferFile.h.

◆ ReadStaticArray() [10/13]

Int_t TBufferFile::ReadStaticArray ( UInt_t i)
inlinevirtual

Implements TBuffer.

Definition at line 477 of file TBufferFile.h.

◆ ReadStaticArray() [11/13]

Int_t TBufferFile::ReadStaticArray ( ULong64_t l)
inlinevirtual

Implements TBuffer.

Definition at line 483 of file TBufferFile.h.

◆ ReadStaticArray() [12/13]

Int_t TBufferFile::ReadStaticArray ( ULong_t l)
inlinevirtual

Implements TBuffer.

Definition at line 480 of file TBufferFile.h.

◆ ReadStaticArray() [13/13]

Int_t TBufferFile::ReadStaticArray ( UShort_t h)
inlinevirtual

Implements TBuffer.

Definition at line 474 of file TBufferFile.h.

◆ ReadStaticArrayDouble32()

Int_t TBufferFile::ReadStaticArrayDouble32 ( Double_t d,
TStreamerElement ele = 0 
)
virtual

Read array of doubles (written as float) from the I/O buffer.

Returns the number of doubles read. see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Definition at line 1222 of file TBufferFile.cxx.

◆ ReadStaticArrayFloat16()

Int_t TBufferFile::ReadStaticArrayFloat16 ( Float_t f,
TStreamerElement ele = 0 
)
virtual

Read array of floats (written as truncated float) from the I/O buffer.

Returns the number of floats read. see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Definition at line 1201 of file TBufferFile.cxx.

◆ ReadStdString() [1/3]

virtual void TBuffer::ReadStdString ( std::string &  s)
inlinevirtual

Reimplemented from TBuffer.

Reimplemented in TBufferSQL.

Definition at line 287 of file TBuffer.h.

◆ ReadStdString() [2/3]

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

Read std::string from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL, and TBufferSQL.

Definition at line 230 of file TBufferFile.cxx.

◆ ReadStdString() [3/3]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

◆ ReadString()

char * TBufferFile::ReadString ( char *  s,
Int_t  max 
)
virtual

Read string from I/O buffer.

String is read till 0 character is found or till max-1 characters are read (i.e. string s has max bytes allocated). If max = -1 no check on number of character is made, reading continues till 0 character is found.

Implements TBuffer.

Definition at line 3202 of file TBufferFile.cxx.

◆ ReadTString()

void TBufferFile::ReadTString ( TString s)
virtual

Read TString from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 186 of file TBufferFile.cxx.

◆ ReadUChar()

void TBufferFile::ReadUChar ( UChar_t c)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 380 of file TBufferFile.h.

◆ ReadUInt()

void TBufferFile::ReadUInt ( UInt_t i)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 404 of file TBufferFile.h.

◆ ReadULong()

void TBufferFile::ReadULong ( ULong_t l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 418 of file TBufferFile.h.

◆ ReadULong64()

void TBufferFile::ReadULong64 ( ULong64_t l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 431 of file TBufferFile.h.

◆ ReadUShort()

void TBufferFile::ReadUShort ( UShort_t s)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 392 of file TBufferFile.h.

◆ ReadVersion()

Version_t TBufferFile::ReadVersion ( UInt_t start = 0,
UInt_t bcnt = 0,
const TClass cl = 0 
)
virtual

Read class version from I/O buffer.

Implements TBuffer.

Definition at line 2761 of file TBufferFile.cxx.

◆ ReadVersionForMemberWise()

Version_t TBufferFile::ReadVersionForMemberWise ( const TClass cl = 0)
virtual

Read class version from I/O buffer.

To be used when streaming out member-wise streamed collection where we do not care (not save) about the byte count and can safely ignore missing streamerInfo (since they usually indicate empty collections).

Implements TBuffer.

Definition at line 2910 of file TBufferFile.cxx.

◆ ReadVersionNoCheckSum()

Version_t TBufferFile::ReadVersionNoCheckSum ( UInt_t start = 0,
UInt_t bcnt = 0 
)
virtual

Read class version from I/O buffer, when the caller knows for sure that there is no checksum written/involved.

Implements TBuffer.

Definition at line 2867 of file TBufferFile.cxx.

◆ ReadWithFactor() [1/2]

void TBufferFile::ReadWithFactor ( Double_t ptr,
Double_t  factor,
Double_t  minvalue 
)
virtual

Read a Double32_t from the buffer when the factor and minimum value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32().

Implements TBuffer.

Definition at line 506 of file TBufferFile.cxx.

◆ ReadWithFactor() [2/2]

void TBufferFile::ReadWithFactor ( Float_t ptr,
Double_t  factor,
Double_t  minvalue 
)
virtual

Read a Float16_t from the buffer when the factor and minimum value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32().

Implements TBuffer.

Definition at line 471 of file TBufferFile.cxx.

◆ ReadWithNbits() [1/2]

void TBufferFile::ReadWithNbits ( Double_t ptr,
Int_t  nbits 
)
virtual

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().

Implements TBuffer.

Definition at line 518 of file TBufferFile.cxx.

◆ ReadWithNbits() [2/2]

void TBufferFile::ReadWithNbits ( Float_t ptr,
Int_t  nbits 
)
virtual

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().

Implements TBuffer.

Definition at line 483 of file TBufferFile.cxx.

◆ SetByteCount()

void TBufferFile::SetByteCount ( UInt_t  cntpos,
Bool_t  packInVersion = kFALSE 
)
virtual

Set byte count at position cntpos in the buffer.

Generate warning if count larger than kMaxMapCount. The count is excluded its own size.

Implements TBuffer.

Definition at line 319 of file TBufferFile.cxx.

◆ SetStreamerElementNumber()

virtual void TBufferFile::SetStreamerElementNumber ( TStreamerElement ,
Int_t   
)
inlinevirtual

Implements TBuffer.

Definition at line 90 of file TBufferFile.h.

◆ SkipObjectAny()

void TBufferFile::SkipObjectAny ( )
virtual

Skip any kind of object from buffer.

Implements TBuffer.

Definition at line 2329 of file TBufferFile.cxx.

◆ SkipVersion()

void TBufferFile::SkipVersion ( const TClass cl = 0)
virtual

Skip class version from I/O buffer.

Implements TBuffer.

Definition at line 2690 of file TBufferFile.cxx.

◆ StreamObject() [1/4]

void TBufferFile::StreamObject ( TObject obj)
virtual

Stream an object inheriting from TObject using its streamer.

Implements TBuffer.

Definition at line 3067 of file TBufferFile.cxx.

◆ StreamObject() [2/4]

void TBufferFile::StreamObject ( void obj,
const char *  className,
const TClass onFileClass = 0 
)
virtual

Stream an object given the name of its actual class.

Implements TBuffer.

Definition at line 3049 of file TBufferFile.cxx.

◆ StreamObject() [3/4]

void TBufferFile::StreamObject ( void obj,
const std::type_info &  typeinfo,
const TClass onFileClass = 0 
)
virtual

Stream an object given its C++ typeinfo information.

Implements TBuffer.

Definition at line 3039 of file TBufferFile.cxx.

◆ StreamObject() [4/4]

void TBufferFile::StreamObject ( void obj,
const TClass cl,
const TClass onFileClass = 0 
)
virtual

Stream an object given a pointer to its actual class.

Implements TBuffer.

Definition at line 3059 of file TBufferFile.cxx.

◆ WriteArray() [1/13]

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

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

Implements TBuffer.

Definition at line 1678 of file TBufferFile.cxx.

◆ WriteArray() [2/13]

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

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

Implements TBuffer.

Definition at line 1703 of file TBufferFile.cxx.

◆ WriteArray() [3/13]

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

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

Implements TBuffer.

Definition at line 1876 of file TBufferFile.cxx.

◆ WriteArray() [4/13]

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

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

Implements TBuffer.

Definition at line 1846 of file TBufferFile.cxx.

◆ WriteArray() [5/13]

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

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

Implements TBuffer.

Definition at line 1753 of file TBufferFile.cxx.

◆ WriteArray() [6/13]

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

Write array of n long longs into the I/O buffer.

Implements TBuffer.

Definition at line 1821 of file TBufferFile.cxx.

◆ WriteArray() [7/13]

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

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

Implements TBuffer.

Definition at line 1783 of file TBufferFile.cxx.

◆ WriteArray() [8/13]

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

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

Implements TBuffer.

Definition at line 1723 of file TBufferFile.cxx.

◆ WriteArray() [9/13]

void TBufferFile::WriteArray ( const UChar_t c,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Definition at line 503 of file TBufferFile.h.

◆ WriteArray() [10/13]

void TBufferFile::WriteArray ( const UInt_t i,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Definition at line 509 of file TBufferFile.h.

◆ WriteArray() [11/13]

void TBufferFile::WriteArray ( const ULong64_t l,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Definition at line 512 of file TBufferFile.h.

◆ WriteArray() [12/13]

void TBufferFile::WriteArray ( const ULong_t ll,
Int_t  n 
)
virtual

Write array of n unsigned longs into the I/O buffer.

This is an explicit case for unsigned longs since signed longs have a special tobuf().

Implements TBuffer.

Definition at line 1803 of file TBufferFile.cxx.

◆ WriteArray() [13/13]

void TBufferFile::WriteArray ( const UShort_t h,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Definition at line 506 of file TBufferFile.h.

◆ WriteArrayDouble32()

void TBufferFile::WriteArrayDouble32 ( const Double_t d,
Int_t  n,
TStreamerElement ele = 0 
)
virtual

Write array of n doubles (as float) into the I/O buffer.

see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Definition at line 1922 of file TBufferFile.cxx.

◆ WriteArrayFloat16()

void TBufferFile::WriteArrayFloat16 ( const Float_t f,
Int_t  n,
TStreamerElement ele = 0 
)
virtual

Write array of n floats (as truncated float) into the I/O buffer.

see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Definition at line 1902 of file TBufferFile.cxx.

◆ WriteBool()

void TBufferFile::WriteBool ( Bool_t  b)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 271 of file TBufferFile.h.

◆ WriteBuf()

void TBufferFile::WriteBuf ( const void buf,
Int_t  max 
)
virtual

Write max bytes from buf into the I/O buffer.

Implements TBuffer.

Definition at line 3184 of file TBufferFile.cxx.

◆ WriteChar()

void TBufferFile::WriteChar ( Char_t  c)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 278 of file TBufferFile.h.

◆ WriteCharP()

void TBufferFile::WriteCharP ( const Char_t c)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 362 of file TBufferFile.h.

◆ WriteCharStar()

void TBufferFile::WriteCharStar ( char *  s)
virtual

Write char* into TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 302 of file TBufferFile.cxx.

◆ WriteClass()

void TBufferFile::WriteClass ( const TClass cl)
virtual

Write class description to I/O buffer.

Implements TBuffer.

Definition at line 2652 of file TBufferFile.cxx.

◆ WriteClassBuffer()

Int_t TBufferFile::WriteClassBuffer ( const TClass cl,
void pointer 
)
virtual

Function called by the Streamer functions to serialize object at p to buffer b.

The optional argument info may be specified to give an alternative StreamerInfo instead of using the default StreamerInfo automatically built from the class definition. For more information, see class TStreamerInfo.

Implements TBuffer.

Definition at line 3503 of file TBufferFile.cxx.

◆ WriteDouble()

void TBufferFile::WriteDouble ( Double_t  d)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 355 of file TBufferFile.h.

◆ WriteDouble32()

void TBufferFile::WriteDouble32 ( Double_t d,
TStreamerElement ele = 0 
)
virtual

Write a Double32_t to the buffer.

The following cases are supported for streaming a Double32_t type depending on the range declaration in the comment field of the data member:

Case Example
A Double32_t fNormal;
B Double32_t fTemperature; //[0,100]
C Double32_t fCharge; //[-1,1,2]
D Double32_t fVertex[3]; //[-30,30,10]
E Double32_t fChi2; //[0,0,6]
F Int_t fNsp;
Double32_t* fPointValue; //[fNsp][0,3]

In case A fNormal is converted from a Double_t to a Float_t In case B fTemperature is converted to a 32 bit unsigned integer In case C fCharge is converted to a 2 bits unsigned integer In case D the array elements of fVertex are converted to an unsigned 10 bits integer In case E fChi2 is converted to a Float_t with mantissa truncated precision at 6 bits In case F the fNsp elements of array fPointvalue are converted to an unsigned 32 bit integer Note that the range specifier must follow the dimension specifier. Case B has more precision (9 to 10 significative digits than case A (6 to 7 digits). See TBufferFile::WriteFloat16 for more information.

see example of use of the Double32_t data type in tutorial double32.C

Implements TBuffer.

Definition at line 654 of file TBufferFile.cxx.

◆ WriteFastArray() [1/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1941 of file TBufferFile.cxx.

◆ WriteFastArray() [2/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1960 of file TBufferFile.cxx.

◆ WriteFastArray() [3/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2114 of file TBufferFile.cxx.

◆ WriteFastArray() [4/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2090 of file TBufferFile.cxx.

◆ WriteFastArray() [5/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2019 of file TBufferFile.cxx.

◆ WriteFastArray() [6/15]

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

Write array of n long longs into the I/O buffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2071 of file TBufferFile.cxx.

◆ WriteFastArray() [7/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2043 of file TBufferFile.cxx.

◆ WriteFastArray() [8/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1995 of file TBufferFile.cxx.

◆ WriteFastArray() [9/15]

void TBufferFile::WriteFastArray ( const UChar_t c,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 516 of file TBufferFile.h.

◆ WriteFastArray() [10/15]

void TBufferFile::WriteFastArray ( const UInt_t i,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 522 of file TBufferFile.h.

◆ WriteFastArray() [11/15]

void TBufferFile::WriteFastArray ( const ULong64_t l,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 525 of file TBufferFile.h.

◆ WriteFastArray() [12/15]

void TBufferFile::WriteFastArray ( const ULong_t ll,
Int_t  n 
)
virtual

Write array of n unsigned longs into the I/O buffer.

This is an explicit case for unsigned longs since signed longs have a special tobuf().

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2058 of file TBufferFile.cxx.

◆ WriteFastArray() [13/15]

void TBufferFile::WriteFastArray ( const UShort_t h,
Int_t  n 
)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 519 of file TBufferFile.h.

◆ WriteFastArray() [14/15]

Int_t TBufferFile::WriteFastArray ( void **  start,
const TClass cl,
Int_t  n = 1,
Bool_t  isPreAlloc = kFALSE,
TMemberStreamer streamer = 0 
)
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.

Reimplemented in TBufferSQL.

Definition at line 2268 of file TBufferFile.cxx.

◆ WriteFastArray() [15/15]

void TBufferFile::WriteFastArray ( void start,
const TClass cl,
Int_t  n = 1,
TMemberStreamer s = 0 
)
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.

Reimplemented in TBufferSQL.

Definition at line 2243 of file TBufferFile.cxx.

◆ WriteFastArrayDouble32()

void TBufferFile::WriteFastArrayDouble32 ( const Double_t d,
Int_t  n,
TStreamerElement ele = 0 
)
virtual

Write array of n doubles (as float) into the I/O buffer.

see comments about Double32_t encoding at TBufferFile::WriteDouble32

Implements TBuffer.

Definition at line 2185 of file TBufferFile.cxx.

◆ WriteFastArrayFloat16()

void TBufferFile::WriteFastArrayFloat16 ( const Float_t f,
Int_t  n,
TStreamerElement ele = 0 
)
virtual

Write array of n floats (as truncated float) into the I/O buffer.

see comments about Float16_t encoding at TBufferFile::WriteFloat16

Implements TBuffer.

Definition at line 2134 of file TBufferFile.cxx.

◆ WriteFastArrayString()

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1974 of file TBufferFile.cxx.

◆ WriteFloat()

void TBufferFile::WriteFloat ( Float_t  f)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 348 of file TBufferFile.h.

◆ WriteFloat16()

void TBufferFile::WriteFloat16 ( Float_t f,
TStreamerElement ele = 0 
)
virtual

Write a Float16_t to the buffer.

The following cases are supported for streaming a Float16_t type depending on the range declaration in the comment field of the data member:

Case Example
A Float16_t fNormal;
B Float16_t fTemperature; //[0,100]
C Float16_t fCharge; //[-1,1,2]
D Float16_t fVertex[3]; //[-30,30,10]
E Float16_t fChi2; //[0,0,6]
F Int_t fNsp;
Float16_t* fPointValue; //[fNsp][0,3]
  • In case A fNormal is converted from a Float_t to a Float_t with mantissa truncated to 12 bits
  • In case B fTemperature is converted to a 32 bit unsigned integer
  • In case C fCharge is converted to a 2 bits unsigned integer
  • In case D the array elements of fVertex are converted to an unsigned 10 bits integer
  • In case E fChi2 is converted to a Float_t with truncated precision at 6 bits
  • In case F the fNsp elements of array fPointvalue are converted to an unsigned 32 bit integer Note that the range specifier must follow the dimension specifier. Case B has more precision (9 to 10 significative digits than case A (6 to 7 digits).

The range specifier has the general format: [xmin,xmax] or [xmin,xmax,nbits]

  • [0,1];
  • [-10,100];
  • [-pi,pi], [-pi/2,pi/4],[-2pi,2*pi]
  • [-10,100,16]
  • [0,0,8] if nbits is not specified, or nbits <2 or nbits>16 it is set to 16. If (xmin==0 and xmax==0 and nbits <=14) the float word will have its mantissa truncated to nbits significative bits.

IMPORTANT NOTE

NOTE 1

Lets assume an original variable float x: When using the format [0,0,8] (ie range not specified) you get the best relative precision when storing and reading back the truncated x, say xt. The variance of (x-xt)/x will be better than when specifying a range for the same number of bits. However the precision relative to the range (x-xt)/(xmax-xmin) will be worst, and vice-versa. The format [0,0,8] is also interesting when the range of x is infinite or unknown.

NOTE 2

It is important to understand the difference with the meaning of nbits

  • in case of [-1,1,nbits], nbits is the total number of bits used to make the conversion from a float to an integer
  • in case of [0,0,nbits], nbits is the number of bits used for the mantissa

See example of use of the Float16_t data type in tutorial double32.C

Implements TBuffer.

Definition at line 590 of file TBufferFile.cxx.

◆ WriteInt()

void TBufferFile::WriteInt ( Int_t  i)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 306 of file TBufferFile.h.

◆ WriteLong()

void TBufferFile::WriteLong ( Long_t  l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 320 of file TBufferFile.h.

◆ WriteLong64()

void TBufferFile::WriteLong64 ( Long64_t  l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 334 of file TBufferFile.h.

◆ WriteObjectClass()

void TBufferFile::WriteObjectClass ( const void actualObjectStart,
const TClass actualClass,
Bool_t  cacheReuse 
)
protectedvirtual

Write object to I/O buffer.

This function assumes that the value of 'actualObjectStart' is the actual start of the object of class 'actualClass' If 'cacheReuse' is true (default) upon seeing an object address a second time, we record the offset where its was written the first time rather than streaming the object a second time. If 'cacheReuse' is false, we always stream the object. This allows the (re)use of temporary object to store different data in the same buffer.

Implements TBufferIO.

Definition at line 2489 of file TBufferFile.cxx.

◆ WriteShort()

void TBufferFile::WriteShort ( Short_t  s)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 292 of file TBufferFile.h.

◆ WriteStdString() [1/3]

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

Write std::string to TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL, and TBufferSQL.

Definition at line 261 of file TBufferFile.cxx.

◆ WriteStdString() [2/3]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

◆ WriteStdString() [3/3]

virtual void TBuffer::WriteStdString ( std::string &  s)
inlinevirtual

Reimplemented from TBuffer.

Reimplemented in TBufferSQL.

Definition at line 307 of file TBuffer.h.

◆ WriteString()

void TBufferFile::WriteString ( const char *  s)
virtual

Write string to I/O buffer.

Writes string upto and including the terminating 0.

Implements TBuffer.

Definition at line 3229 of file TBufferFile.cxx.

◆ WriteTString()

void TBufferFile::WriteTString ( const TString s)
virtual

Write TString to TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 211 of file TBufferFile.cxx.

◆ WriteUChar()

void TBufferFile::WriteUChar ( UChar_t  c)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 285 of file TBufferFile.h.

◆ WriteUInt()

void TBufferFile::WriteUInt ( UInt_t  i)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 313 of file TBufferFile.h.

◆ WriteULong()

void TBufferFile::WriteULong ( ULong_t  l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 327 of file TBufferFile.h.

◆ WriteULong64()

void TBufferFile::WriteULong64 ( ULong64_t  l)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 341 of file TBufferFile.h.

◆ WriteUShort()

void TBufferFile::WriteUShort ( UShort_t  s)
inlinevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 299 of file TBufferFile.h.

◆ WriteVersion()

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

Write class version to I/O buffer.

Implements TBuffer.

Definition at line 2978 of file TBufferFile.cxx.

◆ WriteVersionMemberWise()

UInt_t TBufferFile::WriteVersionMemberWise ( const TClass cl,
Bool_t  useBcnt = kFALSE 
)
virtual

Write class version to I/O buffer after setting the kStreamedMemberWise bit in the version number.

Implements TBuffer.

Definition at line 3008 of file TBufferFile.cxx.

Member Data Documentation

◆ fInfo

TStreamerInfo* TBufferFile::fInfo {nullptr}
protected

Pointer to TStreamerInfo object writing/reading the buffer.

Definition at line 51 of file TBufferFile.h.

◆ fInfoStack

InfoList_t TBufferFile::fInfoStack
protected

Stack of pointers to the TStreamerInfos.

Definition at line 52 of file TBufferFile.h.

Libraries for TBufferFile:
[legend]

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