Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TBufferFile Class Reference

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

Definition at line 47 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.
 
 TBufferFile (TBuffer::EMode mode, Int_t bufsiz)
 Create an I/O buffer object.
 
 TBufferFile (TBuffer::EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=nullptr)
 Create an I/O buffer object.
 
virtual ~TBufferFile ()
 Delete an I/O buffer object.
 
Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object) override
 Read one collection of objects from the buffer using the StreamerInfoLoopAction.
 
Int_t ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection) override
 Read one collection of objects from the buffer using the StreamerInfoLoopAction.
 
Int_t ApplySequenceVecPtr (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection) override
 Read one collection of objects from the buffer using the StreamerInfoLoopAction.
 
Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const char *classname) override
 Check byte count with current buffer position.
 
Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss) override
 Check byte count with current buffer position.
 
Bool_t CheckObject (const TObject *obj) override
 Check if the specified object is already in the buffer.
 
Bool_t CheckObject (const void *obj, const TClass *ptrClass) override
 Check if the specified object of the specified class is already in the buffer.
 
void ClassBegin (const TClass *, Version_t=-1) override
 
void ClassEnd (const TClass *) override
 
void ClassMember (const char *, const char *=0, Int_t=-1, Int_t=-1) override
 
void DecrementLevel (TVirtualStreamerInfo *) override
 Decrement level.
 
TVirtualStreamerInfoGetInfo () override
 
void IncrementLevel (TVirtualStreamerInfo *info) override
 Increment level.
 
Int_t ReadArray (Bool_t *&b) override
 Read array of bools from the I/O buffer.
 
Int_t ReadArray (Char_t *&c) override
 Read array of characters from the I/O buffer.
 
Int_t ReadArray (Double_t *&d) override
 Read array of doubles from the I/O buffer.
 
Int_t ReadArray (Float_t *&f) override
 Read array of floats from the I/O buffer.
 
Int_t ReadArray (Int_t *&i) override
 Read array of ints from the I/O buffer.
 
Int_t ReadArray (Long64_t *&l) override
 Read array of long longs from the I/O buffer.
 
Int_t ReadArray (Long_t *&l) override
 Read array of longs from the I/O buffer.
 
Int_t ReadArray (Short_t *&h) override
 Read array of shorts from the I/O buffer.
 
Int_t ReadArray (UChar_t *&c) override
 
Int_t ReadArray (UInt_t *&i) override
 
Int_t ReadArray (ULong64_t *&l) override
 
Int_t ReadArray (ULong_t *&l) override
 
Int_t ReadArray (UShort_t *&h) override
 
Int_t ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=nullptr) override
 Read array of doubles (written as float) from the I/O buffer.
 
Int_t ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=nullptr) override
 Read array of floats (written as truncated float) from the I/O buffer.
 
void ReadBool (Bool_t &b) override
 
Int_t ReadBuf (void *buf, Int_t max) override
 Read max bytes from the I/O buffer into buf.
 
void ReadChar (Char_t &c) override
 
void ReadCharP (Char_t *c) override
 
void ReadCharStar (char *&s) override
 Read char* from TBuffer.
 
TClassReadClass (const TClass *cl=nullptr, UInt_t *objTag=nullptr) override
 Read class definition from I/O buffer.
 
Int_t ReadClassBuffer (const TClass *cl, void *pointer, const TClass *onfile_class) override
 Deserialize information from a buffer into an object.
 
Int_t ReadClassBuffer (const TClass *cl, void *pointer, Int_t version, UInt_t start, UInt_t count, const TClass *onfile_class) override
 Deserialize information from a buffer into an object.
 
Int_t ReadClassEmulated (const TClass *cl, void *object, const TClass *onfile_class) override
 Read emulated class.
 
void ReadDouble (Double_t &d) override
 
void ReadDouble32 (Double_t *d, TStreamerElement *ele=nullptr) override
 Read a Double32_t from the buffer, see comments about Double32_t encoding at TBufferFile::WriteDouble32().
 
void ReadFastArray (Bool_t *b, Int_t n) override
 Read array of n bools from the I/O buffer.
 
void ReadFastArray (Char_t *c, Int_t n) override
 Read array of n characters from the I/O buffer.
 
void ReadFastArray (Double_t *d, Int_t n) override
 Read array of n doubles from the I/O buffer.
 
void ReadFastArray (Float_t *f, Int_t n) override
 Read array of n floats from the I/O buffer.
 
void ReadFastArray (Int_t *i, Int_t n) override
 Read array of n ints from the I/O buffer.
 
void ReadFastArray (Long64_t *l, Int_t n) override
 Read array of n long longs from the I/O buffer.
 
void ReadFastArray (Long_t *l, Int_t n) override
 Read array of n longs from the I/O buffer.
 
void ReadFastArray (Short_t *h, Int_t n) override
 Read array of n shorts from the I/O buffer.
 
void ReadFastArray (UChar_t *c, Int_t n) override
 
void ReadFastArray (UInt_t *i, Int_t n) override
 
void ReadFastArray (ULong64_t *l, Int_t n) override
 
void ReadFastArray (ULong_t *l, Int_t n) override
 
void ReadFastArray (UShort_t *h, Int_t n) override
 
void ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr) override
 Read an array of 'n' objects from the I/O buffer.
 
void ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr) override
 Read an array of 'n' objects from the I/O buffer.
 
void ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=nullptr) override
 Read array of n doubles (written as float) from the I/O buffer.
 
void ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=nullptr) override
 Read array of n floats (written as truncated float) from the I/O buffer.
 
void ReadFastArrayString (Char_t *c, Int_t n) override
 Read array of n characters from the I/O buffer.
 
void ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue) override
 Read array of n doubles (written as float) from the I/O buffer.
 
void ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue) override
 Read array of n floats (written as truncated float) from the I/O buffer.
 
void ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits) override
 Read array of n doubles (written as float) from the I/O buffer.
 
void ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits) override
 Read array of n floats (written as truncated float) from the I/O buffer.
 
void ReadFloat (Float_t &f) override
 
void ReadFloat16 (Float_t *f, TStreamerElement *ele=nullptr) override
 Read a Float16_t from the buffer, see comments about Float16_t encoding at TBufferFile::WriteFloat16().
 
void ReadInt (Int_t &i) override
 
void ReadLong (Long_t &l) override
 Read Long from TBuffer.
 
void ReadLong64 (Long64_t &l) override
 
TObjectReadObject (const TClass *cl) override
 Read object from I/O buffer.
 
voidReadObjectAny (const TClass *cast) override
 Read object from I/O buffer.
 
void ReadShort (Short_t &s) override
 
Int_t ReadStaticArray (Bool_t *b) override
 Read array of bools from the I/O buffer.
 
Int_t ReadStaticArray (Char_t *c) override
 Read array of characters from the I/O buffer.
 
Int_t ReadStaticArray (Double_t *d) override
 Read array of doubles from the I/O buffer.
 
Int_t ReadStaticArray (Float_t *f) override
 Read array of floats from the I/O buffer.
 
Int_t ReadStaticArray (Int_t *i) override
 Read array of ints from the I/O buffer.
 
Int_t ReadStaticArray (Long64_t *l) override
 Read array of long longs from the I/O buffer.
 
Int_t ReadStaticArray (Long_t *l) override
 Read array of longs from the I/O buffer.
 
Int_t ReadStaticArray (Short_t *h) override
 Read array of shorts from the I/O buffer.
 
Int_t ReadStaticArray (UChar_t *c) override
 
Int_t ReadStaticArray (UInt_t *i) override
 
Int_t ReadStaticArray (ULong64_t *l) override
 
Int_t ReadStaticArray (ULong_t *l) override
 
Int_t ReadStaticArray (UShort_t *h) override
 
Int_t ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=nullptr) override
 Read array of doubles (written as float) from the I/O buffer.
 
Int_t ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=nullptr) override
 Read array of floats (written as truncated float) from the I/O buffer.
 
virtual void ReadStdString (std::string &s)
 
void ReadStdString (std::string *s) override
 Read std::string from TBuffer.
 
virtual void ReadStdString (std::string *s)=0
 
char * ReadString (char *s, Int_t max) override
 Read string from I/O buffer.
 
void ReadTString (TString &s) override
 Read TString from TBuffer.
 
void ReadUChar (UChar_t &c) override
 
void ReadUInt (UInt_t &i) override
 
void ReadULong (ULong_t &l) override
 
void ReadULong64 (ULong64_t &l) override
 
void ReadUShort (UShort_t &s) override
 
Version_t ReadVersion (UInt_t *start=nullptr, UInt_t *bcnt=nullptr, const TClass *cl=nullptr) override
 Read class version from I/O buffer.
 
Version_t ReadVersionForMemberWise (const TClass *cl=nullptr) override
 Read class version from I/O buffer.
 
Version_t ReadVersionNoCheckSum (UInt_t *start=nullptr, UInt_t *bcnt=nullptr) override
 Read class version from I/O buffer, when the caller knows for sure that there is no checksum written/involved.
 
void ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue) override
 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().
 
void ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue) override
 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().
 
void ReadWithNbits (Double_t *ptr, Int_t nbits) override
 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().
 
void ReadWithNbits (Float_t *ptr, Int_t nbits) override
 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().
 
void SetByteCount (UInt_t cntpos, Bool_t packInVersion=kFALSE) override
 Set byte count at position cntpos in the buffer.
 
void SetStreamerElementNumber (TStreamerElement *, Int_t) override
 
void SkipObjectAny () override
 Skip any kind of object from buffer.
 
void SkipVersion (const TClass *cl=nullptr) override
 Skip class version from I/O buffer.
 
void StreamObject (TObject *obj) override
 Stream an object inheriting from TObject using its streamer.
 
void StreamObject (void *obj, const char *className, const TClass *onFileClass=nullptr) override
 Stream an object given the name of its actual class.
 
void StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=nullptr) override
 Stream an object given its C++ typeinfo information.
 
void StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=nullptr) override
 Stream an object given a pointer to its actual class.
 
void WriteArray (const Bool_t *b, Int_t n) override
 Write array of n bools into the I/O buffer.
 
void WriteArray (const Char_t *c, Int_t n) override
 Write array of n characters into the I/O buffer.
 
void WriteArray (const Double_t *d, Int_t n) override
 Write array of n doubles into the I/O buffer.
 
void WriteArray (const Float_t *f, Int_t n) override
 Write array of n floats into the I/O buffer.
 
void WriteArray (const Int_t *i, Int_t n) override
 Write array of n ints into the I/O buffer.
 
void WriteArray (const Long64_t *l, Int_t n) override
 Write array of n long longs into the I/O buffer.
 
void WriteArray (const Long_t *l, Int_t n) override
 Write array of n longs into the I/O buffer.
 
void WriteArray (const Short_t *h, Int_t n) override
 Write array of n shorts into the I/O buffer.
 
void WriteArray (const UChar_t *c, Int_t n) override
 
void WriteArray (const UInt_t *i, Int_t n) override
 
void WriteArray (const ULong64_t *l, Int_t n) override
 
void WriteArray (const ULong_t *l, Int_t n) override
 Write array of n unsigned longs into the I/O buffer.
 
void WriteArray (const UShort_t *h, Int_t n) override
 
void WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr) override
 Write array of n doubles (as float) into the I/O buffer.
 
void WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=nullptr) override
 Write array of n floats (as truncated float) into the I/O buffer.
 
void WriteBool (Bool_t b) override
 
void WriteBuf (const void *buf, Int_t max) override
 Write max bytes from buf into the I/O buffer.
 
void WriteChar (Char_t c) override
 
void WriteCharP (const Char_t *c) override
 
void WriteCharStar (char *s) override
 Write char* into TBuffer.
 
void WriteClass (const TClass *cl) override
 Write class description to I/O buffer.
 
Int_t WriteClassBuffer (const TClass *cl, void *pointer) override
 Function called by the Streamer functions to serialize object at p to buffer b.
 
void WriteDouble (Double_t d) override
 
void WriteDouble32 (Double_t *d, TStreamerElement *ele=nullptr) override
 Write a Double32_t to the buffer.
 
void WriteFastArray (const Bool_t *b, Int_t n) override
 Write array of n bools into the I/O buffer.
 
void WriteFastArray (const Char_t *c, Int_t n) override
 Write array of n characters into the I/O buffer.
 
void WriteFastArray (const Double_t *d, Int_t n) override
 Write array of n doubles into the I/O buffer.
 
void WriteFastArray (const Float_t *f, Int_t n) override
 Write array of n floats into the I/O buffer.
 
void WriteFastArray (const Int_t *i, Int_t n) override
 Write array of n ints into the I/O buffer.
 
void WriteFastArray (const Long64_t *l, Int_t n) override
 Write array of n long longs into the I/O buffer.
 
void WriteFastArray (const Long_t *l, Int_t n) override
 Write array of n longs into the I/O buffer.
 
void WriteFastArray (const Short_t *h, Int_t n) override
 Write array of n shorts into the I/O buffer.
 
void WriteFastArray (const UChar_t *c, Int_t n) override
 
void WriteFastArray (const UInt_t *i, Int_t n) override
 
void WriteFastArray (const ULong64_t *l, Int_t n) override
 
void WriteFastArray (const ULong_t *l, Int_t n) override
 Write array of n unsigned longs into the I/O buffer.
 
void WriteFastArray (const UShort_t *h, Int_t n) override
 
Int_t WriteFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr) override
 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:
 
void WriteFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr) override
 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'.
 
void WriteFastArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr) override
 Write array of n doubles (as float) into the I/O buffer.
 
void WriteFastArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=nullptr) override
 Write array of n floats (as truncated float) into the I/O buffer.
 
void WriteFastArrayString (const Char_t *c, Int_t n) override
 Write array of n characters into the I/O buffer.
 
void WriteFloat (Float_t f) override
 
void WriteFloat16 (Float_t *f, TStreamerElement *ele=nullptr) override
 Write a Float16_t to the buffer.
 
void WriteInt (Int_t i) override
 
void WriteLong (Long_t l) override
 
void WriteLong64 (Long64_t l) override
 
void WriteShort (Short_t s) override
 
void WriteStdString (const std::string *s) override
 Write std::string to TBuffer.
 
virtual void WriteStdString (const std::string *s)=0
 
virtual void WriteStdString (std::string &s)
 
void WriteString (const char *s) override
 Write string to I/O buffer.
 
void WriteTString (const TString &s) override
 Write TString to TBuffer.
 
void WriteUChar (UChar_t c) override
 
void WriteUInt (UInt_t i) override
 
void WriteULong (ULong_t l) override
 
void WriteULong64 (ULong64_t l) override
 
void WriteUShort (UShort_t s) override
 
UInt_t WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE) override
 Write class version to I/O buffer.
 
UInt_t WriteVersionMemberWise (const TClass *cl, Bool_t useBcnt=kFALSE) override
 Write class version to I/O buffer after setting the kStreamedMemberWise bit in the version number.
 
- Public Member Functions inherited from TBufferIO
virtual ~TBufferIO ()
 destructor
 
Bool_t CheckObject (const TObject *obj) override
 Check if the specified object is already in the buffer.
 
Bool_t CheckObject (const void *obj, const TClass *ptrClass) override
 Check if the specified object of the specified class is already in the buffer.
 
void ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force) override
 force writing the TStreamerInfo to the file
 
void ForceWriteInfoClones (TClonesArray *a) override
 Make sure TStreamerInfo is not optimized, otherwise it will not be possible to support schema evolution in read mode.
 
Int_t GetBufferDisplacement () const override
 
TProcessIDGetLastProcessID (TRefTable *reftable) const override
 Return the last TProcessID in the file.
 
Int_t GetMapCount () const override
 
void GetMappedObject (UInt_t tag, void *&ptr, TClass *&ClassPtr) const override
 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.
 
UShort_t GetPidOffset () const override
 
UInt_t GetTRefExecId () override
 Return the exec id stored in the current TStreamerInfo element.
 
Int_t GetVersionOwner () const override
 Return the version number of the owner file.
 
void InitMap () override
 Create the fMap container and initialize them with the null object.
 
void MapObject (const TObject *obj, UInt_t offset=1) override
 Add object to the fMap container.
 
void MapObject (const void *obj, const TClass *cl, UInt_t offset=1) override
 Add object to the fMap container.
 
Int_t ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers) override
 Interface to TStreamerInfo::ReadBufferClones.
 
TProcessIDReadProcessID (UShort_t pidf) override
 The TProcessID with number pidf is read from file.
 
void Reset () override
 Reset buffer object. Resets map and buffer offset.
 
void ResetMap () override
 Delete existing fMap and reset map counter.
 
void SetBufferDisplacement () override
 
void SetBufferDisplacement (Int_t skipped) override
 
void SetPidOffset (UShort_t offset) override
 This offset is used when a key (or basket) is transfered from one file to the other.
 
void SetReadParam (Int_t mapsize) override
 Set the initial size of the map used to store object and class references during reading.
 
void SetWriteParam (Int_t mapsize) override
 Set the initial size of the hashtable used to store object and class references during writing.
 
void TagStreamerInfo (TVirtualStreamerInfo *info) override
 Mark the classindex of the current file as using this TStreamerInfo.
 
Int_t WriteClones (TClonesArray *a, Int_t nobjects) override
 Interface to TStreamerInfo::WriteBufferClones.
 
template<class T >
Int_t WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE)
 
virtual void WriteObject (const TObject *obj, Bool_t cacheReuse)=0
 
void WriteObject (const TObject *obj, Bool_t cacheReuse=kTRUE) override
 Write object to I/O buffer.
 
Int_t WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE) override
 Write object to I/O buffer.
 
UShort_t WriteProcessID (TProcessID *pid) override
 Check if the ProcessID pid is already in the file.
 
- Public Member Functions inherited from TBuffer
 TBuffer (EMode mode)
 Create an I/O buffer object.
 
 TBuffer (EMode mode, Int_t bufsiz)
 Create an I/O buffer object.
 
 TBuffer (EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0)
 Create an I/O buffer object.
 
virtual ~TBuffer ()
 Delete an I/O buffer object.
 
void AutoExpand (Int_t size_needed)
 Automatically calculate a new size and expand the buffer to fit at least size_needed.
 
char * Buffer () const
 
Int_t BufferSize () const
 
Bool_t ByteSwapBuffer (Long64_t n, EDataType type)
 Byte-swap N primitive-elements in the buffer.
 
void DetachBuffer ()
 
void Expand (Int_t newsize, Bool_t copy=kTRUE)
 Expand (or shrink) the I/O buffer to newsize bytes.
 
Int_t GetBufferVersion () const
 
char * GetCurrent () const
 
TObjectGetParent () const
 Return pointer to parent of this buffer.
 
ReAllocCharFun_t GetReAllocFunc () const
 Return the reallocation method currently used.
 
Bool_t IsReading () const
 
Bool_t IsWriting () const
 
Int_t Length () const
 
virtual TVirtualArrayPeekDataCache () const
 Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members.
 
virtual TVirtualArrayPopDataCache ()
 Pop and Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members.
 
virtual void PushDataCache (TVirtualArray *)
 Push a new data cache area onto the list of area to be used for temporarily store 'missing' data members.
 
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.
 
void SetBufferOffset (Int_t offset=0)
 
void SetParent (TObject *parent)
 Set parent owning this buffer.
 
void SetReadMode ()
 Set buffer in read mode.
 
void SetReAllocFunc (ReAllocCharFun_t reallocfunc=0)
 Set which memory reallocation method to use.
 
void SetWriteMode ()
 Set buffer in write mode.
 
template<class T >
Int_t WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action.
 
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.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility.
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method.
 
virtual void Copy (TObject &object) const
 Copy this to obj.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
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.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual const char * GetIconName () const
 Returns mime type name of object.
 
virtual const char * GetName () const
 Returns name of object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object.
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
virtual ULong_t Hash () const
 Return hash value for this object.
 
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.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
 
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.
 
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).
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification.
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
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.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
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.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 

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 Types inherited from TObject
enum  { kOnlyPrepStep = BIT(3) }
 

Protected Member Functions

 TBufferFile ()
 
 TBufferFile (const TBufferFile &)=delete
 not implemented
 
Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss, const char *classname)
 Check byte count with current buffer position.
 
void CheckCount (UInt_t offset) override
 Check if offset is not too large (< kMaxMapCount) when writing.
 
UInt_t CheckObject (UInt_t offset, const TClass *cl, Bool_t readClass=kFALSE)
 Check for object in the read map.
 
void operator= (const TBufferFile &)=delete
 not implemented
 
void WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse) override
 Write object to I/O buffer.
 
- Protected Member Functions inherited from TBufferIO
 TBufferIO ()
 
 TBufferIO (TBuffer::EMode mode)
 constructor
 
 TBufferIO (TBuffer::EMode mode, Int_t bufsiz)
 constructor
 
 TBufferIO (TBuffer::EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=nullptr)
 constructor
 
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.
 
- Protected Member Functions inherited from TBuffer
 TBuffer ()
 
 TBuffer (const TBuffer &)=delete
 
void operator= (const TBuffer &)=delete
 
Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
Int_t Write (const char *name, Int_t opt, Int_t bufs)
 Write this object to the current directory.
 
Int_t Write (const char *name, Int_t opt, Int_t bufs) const
 Write this object to the current directory.
 
- 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).
 
void MakeZombie ()
 

Protected Attributes

TStreamerInfofInfo {nullptr}
 Pointer to TStreamerInfo object writing/reading the buffer.
 
InfoList_t fInfoStack
 Stack of pointers to the TStreamerInfos.
 
- Protected Attributes inherited from TBufferIO
TExMapfClassMap {nullptr}
 Map containing object,class pairs for reading.
 
Int_t fDisplacement {0}
 Value to be added to the map offsets.
 
TExMapfMap {nullptr}
 Map containing object,offset pairs for reading/writing.
 
Int_t fMapCount {0}
 Number of objects or classes in map.
 
Int_t fMapSize {0}
 Default size of map.
 
UShort_t fPidOffset {0}
 Offset to be added to the pid index in this key/buffer.
 
- 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.
 
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.
 
static Int_t GetGlobalWriteParam ()
 Get default write map size.
 
static void SetGlobalReadParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading.
 
static void SetGlobalWriteParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading.
 
- Static Public Member Functions inherited from TBuffer
static TClassGetClass (const char *className)
 Forward to TROOT::GetClass().
 
static TClassGetClass (const std::type_info &typeinfo)
 Forward to TROOT::GetClass().
 
- Static Public Member Functions inherited from TObject
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Protected Member Functions inherited from TBufferIO
static R__ALWAYS_INLINE ULong_t Void_Hash (const void *ptr)
 Return hash value for provided object.
 
- Static Protected Attributes inherited from TBufferIO
static Int_t fgMapSize = kMapSize
 Default map size for all TBuffer objects.
 

#include <TBufferFile.h>

Inheritance diagram for TBufferFile:
[legend]

Member Typedef Documentation

◆ InfoList_t

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

Definition at line 50 of file TBufferFile.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
kStreamedMemberWise 

Definition at line 69 of file TBufferFile.h.

Constructor & Destructor Documentation

◆ TBufferFile() [1/5]

TBufferFile::TBufferFile ( )
inlineprotected

Definition at line 56 of file TBufferFile.h.

◆ TBufferFile() [2/5]

TBufferFile::TBufferFile ( const TBufferFile )
protecteddelete

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 76 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 86 of file TBufferFile.cxx.

◆ TBufferFile() [5/5]

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

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 103 of file TBufferFile.cxx.

◆ ~TBufferFile()

TBufferFile::~TBufferFile ( )
virtual

Delete an I/O buffer object.

Definition at line 112 of file TBufferFile.cxx.

Member Function Documentation

◆ ApplySequence() [1/2]

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

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 3558 of file TBufferFile.cxx.

◆ ApplySequence() [2/2]

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

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

Implements TBuffer.

Definition at line 3618 of file TBufferFile.cxx.

◆ ApplySequenceVecPtr()

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

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 3587 of file TBufferFile.cxx.

◆ CheckByteCount() [1/3]

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

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 422 of file TBufferFile.cxx.

◆ CheckByteCount() [2/3]

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

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 408 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 355 of file TBufferFile.cxx.

◆ CheckCount()

void TBufferFile::CheckCount ( UInt_t  offset)
overrideprotectedvirtual

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

Reimplemented from TBufferIO.

Definition at line 3076 of file TBufferFile.cxx.

◆ CheckObject() [1/3]

Bool_t TBufferIO::CheckObject ( const TObject obj)
overridevirtual

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

Implements TBuffer.

Definition at line 94 of file TBufferIO.cxx.

◆ CheckObject() [2/3]

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

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

Implements TBuffer.

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 3092 of file TBufferFile.cxx.

◆ ClassBegin()

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

Implements TBuffer.

Definition at line 94 of file TBufferFile.h.

◆ ClassEnd()

void TBufferFile::ClassEnd ( const TClass )
inlineoverridevirtual

Implements TBuffer.

Definition at line 95 of file TBufferFile.h.

◆ ClassMember()

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

Implements TBuffer.

Definition at line 96 of file TBufferFile.h.

◆ DecrementLevel()

void TBufferFile::DecrementLevel ( TVirtualStreamerInfo )
overridevirtual

Decrement level.

Implements TBuffer.

Definition at line 128 of file TBufferFile.cxx.

◆ GetInfo()

TVirtualStreamerInfo * TBufferFile::GetInfo ( )
inlineoverridevirtual

Implements TBuffer.

Definition at line 93 of file TBufferFile.h.

◆ IncrementLevel()

void TBufferFile::IncrementLevel ( TVirtualStreamerInfo info)
overridevirtual

Increment level.

Implements TBuffer.

Definition at line 119 of file TBufferFile.cxx.

◆ operator=()

void TBufferFile::operator= ( const TBufferFile )
protecteddelete

not implemented

◆ ReadArray() [1/13]

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

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 700 of file TBufferFile.cxx.

◆ ReadArray() [2/13]

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

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 728 of file TBufferFile.cxx.

◆ ReadArray() [3/13]

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

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 904 of file TBufferFile.cxx.

◆ ReadArray() [4/13]

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

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 871 of file TBufferFile.cxx.

◆ ReadArray() [5/13]

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

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 784 of file TBufferFile.cxx.

◆ ReadArray() [6/13]

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

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 843 of file TBufferFile.cxx.

◆ ReadArray() [7/13]

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

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 817 of file TBufferFile.cxx.

◆ ReadArray() [8/13]

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

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 751 of file TBufferFile.cxx.

◆ ReadArray() [9/13]

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

Implements TBuffer.

Definition at line 456 of file TBufferFile.h.

◆ ReadArray() [10/13]

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

Implements TBuffer.

Definition at line 462 of file TBufferFile.h.

◆ ReadArray() [11/13]

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

Implements TBuffer.

Definition at line 468 of file TBufferFile.h.

◆ ReadArray() [12/13]

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

Implements TBuffer.

Definition at line 465 of file TBufferFile.h.

◆ ReadArray() [13/13]

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

Implements TBuffer.

Definition at line 459 of file TBufferFile.h.

◆ ReadArrayDouble32()

Int_t TBufferFile::ReadArrayDouble32 ( Double_t *&  d,
TStreamerElement ele = nullptr 
)
overridevirtual

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 955 of file TBufferFile.cxx.

◆ ReadArrayFloat16()

Int_t TBufferFile::ReadArrayFloat16 ( Float_t *&  f,
TStreamerElement ele = nullptr 
)
overridevirtual

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 933 of file TBufferFile.cxx.

◆ ReadBool()

void TBufferFile::ReadBool ( Bool_t b)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 369 of file TBufferFile.h.

◆ ReadBuf()

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

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

The function returns the actual number of bytes read.

Implements TBuffer.

Definition at line 3168 of file TBufferFile.cxx.

◆ ReadChar()

void TBufferFile::ReadChar ( Char_t c)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 375 of file TBufferFile.h.

◆ ReadCharP()

void TBufferFile::ReadCharP ( Char_t c)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 450 of file TBufferFile.h.

◆ ReadCharStar()

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

Read char* from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 284 of file TBufferFile.cxx.

◆ ReadClass()

TClass * TBufferFile::ReadClass ( const TClass clReq = nullptr,
UInt_t objTag = nullptr 
)
overridevirtual

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 2567 of file TBufferFile.cxx.

◆ ReadClassBuffer() [1/2]

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

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 3371 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 
)
overridevirtual

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 3278 of file TBufferFile.cxx.

◆ ReadClassEmulated()

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

Read emulated class.

Implements TBuffer.

Definition at line 3238 of file TBufferFile.cxx.

◆ ReadDouble()

void TBufferFile::ReadDouble ( Double_t d)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 444 of file TBufferFile.h.

◆ ReadDouble32()

void TBufferFile::ReadDouble32 ( Double_t d,
TStreamerElement ele = nullptr 
)
overridevirtual

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

Implements TBuffer.

Definition at line 448 of file TBufferFile.cxx.

◆ ReadFastArray() [1/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1240 of file TBufferFile.cxx.

◆ ReadFastArray() [2/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1257 of file TBufferFile.cxx.

◆ ReadFastArray() [3/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1396 of file TBufferFile.cxx.

◆ ReadFastArray() [4/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1374 of file TBufferFile.cxx.

◆ ReadFastArray() [5/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1319 of file TBufferFile.cxx.

◆ ReadFastArray() [6/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1357 of file TBufferFile.cxx.

◆ ReadFastArray() [7/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1341 of file TBufferFile.cxx.

◆ ReadFastArray() [8/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1297 of file TBufferFile.cxx.

◆ ReadFastArray() [9/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 488 of file TBufferFile.h.

◆ ReadFastArray() [10/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 494 of file TBufferFile.h.

◆ ReadFastArray() [11/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 500 of file TBufferFile.h.

◆ ReadFastArray() [12/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 497 of file TBufferFile.h.

◆ ReadFastArray() [13/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 491 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 = nullptr,
const TClass onFileClass = nullptr 
)
overridevirtual

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 1618 of file TBufferFile.cxx.

◆ ReadFastArray() [15/15]

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

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 1595 of file TBufferFile.cxx.

◆ ReadFastArrayDouble32()

void TBufferFile::ReadFastArrayDouble32 ( Double_t d,
Int_t  n,
TStreamerElement ele = nullptr 
)
overridevirtual

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 1496 of file TBufferFile.cxx.

◆ ReadFastArrayFloat16()

void TBufferFile::ReadFastArrayFloat16 ( Float_t f,
Int_t  n,
TStreamerElement ele = nullptr 
)
overridevirtual

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 1414 of file TBufferFile.cxx.

◆ ReadFastArrayString()

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1269 of file TBufferFile.cxx.

◆ ReadFastArrayWithFactor() [1/2]

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

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 1544 of file TBufferFile.cxx.

◆ ReadFastArrayWithFactor() [2/2]

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

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 1454 of file TBufferFile.cxx.

◆ ReadFastArrayWithNbits() [1/2]

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

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 1558 of file TBufferFile.cxx.

◆ ReadFastArrayWithNbits() [2/2]

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

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 1468 of file TBufferFile.cxx.

◆ ReadFloat()

void TBufferFile::ReadFloat ( Float_t f)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 438 of file TBufferFile.h.

◆ ReadFloat16()

void TBufferFile::ReadFloat16 ( Float_t f,
TStreamerElement ele = nullptr 
)
overridevirtual

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

Implements TBuffer.

Definition at line 432 of file TBufferFile.cxx.

◆ ReadInt()

void TBufferFile::ReadInt ( Int_t i)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 399 of file TBufferFile.h.

◆ ReadLong()

void TBufferFile::ReadLong ( Long_t l)
overridevirtual

Read Long from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 172 of file TBufferFile.cxx.

◆ ReadLong64()

void TBufferFile::ReadLong64 ( Long64_t l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 426 of file TBufferFile.h.

◆ ReadObject()

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

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 2320 of file TBufferFile.cxx.

◆ ReadObjectAny()

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

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 2348 of file TBufferFile.cxx.

◆ ReadShort()

void TBufferFile::ReadShort ( Short_t s)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 387 of file TBufferFile.h.

◆ ReadStaticArray() [1/13]

Int_t TBufferFile::ReadStaticArray ( Bool_t b)
overridevirtual

Read array of bools from the I/O buffer.

Returns the number of bools read.

Implements TBuffer.

Definition at line 975 of file TBufferFile.cxx.

◆ ReadStaticArray() [2/13]

Int_t TBufferFile::ReadStaticArray ( Char_t c)
overridevirtual

Read array of characters from the I/O buffer.

Returns the number of characters read.

Implements TBuffer.

Definition at line 1002 of file TBufferFile.cxx.

◆ ReadStaticArray() [3/13]

Int_t TBufferFile::ReadStaticArray ( Double_t d)
overridevirtual

Read array of doubles from the I/O buffer.

Returns the number of doubles read.

Implements TBuffer.

Definition at line 1172 of file TBufferFile.cxx.

◆ ReadStaticArray() [4/13]

Int_t TBufferFile::ReadStaticArray ( Float_t f)
overridevirtual

Read array of floats from the I/O buffer.

Returns the number of floats read.

Implements TBuffer.

Definition at line 1140 of file TBufferFile.cxx.

◆ ReadStaticArray() [5/13]

Int_t TBufferFile::ReadStaticArray ( Int_t ii)
overridevirtual

Read array of ints from the I/O buffer.

Returns the number of ints read.

Implements TBuffer.

Definition at line 1056 of file TBufferFile.cxx.

◆ ReadStaticArray() [6/13]

Int_t TBufferFile::ReadStaticArray ( Long64_t ll)
overridevirtual

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

Returns the number of long longs read.

Implements TBuffer.

Definition at line 1113 of file TBufferFile.cxx.

◆ ReadStaticArray() [7/13]

Int_t TBufferFile::ReadStaticArray ( Long_t ll)
overridevirtual

Read array of longs from the I/O buffer.

Returns the number of longs read.

Implements TBuffer.

Definition at line 1088 of file TBufferFile.cxx.

◆ ReadStaticArray() [8/13]

Int_t TBufferFile::ReadStaticArray ( Short_t h)
overridevirtual

Read array of shorts from the I/O buffer.

Returns the number of shorts read.

Implements TBuffer.

Definition at line 1024 of file TBufferFile.cxx.

◆ ReadStaticArray() [9/13]

Int_t TBufferFile::ReadStaticArray ( UChar_t c)
inlineoverridevirtual

Implements TBuffer.

Definition at line 472 of file TBufferFile.h.

◆ ReadStaticArray() [10/13]

Int_t TBufferFile::ReadStaticArray ( UInt_t i)
inlineoverridevirtual

Implements TBuffer.

Definition at line 478 of file TBufferFile.h.

◆ ReadStaticArray() [11/13]

Int_t TBufferFile::ReadStaticArray ( ULong64_t l)
inlineoverridevirtual

Implements TBuffer.

Definition at line 484 of file TBufferFile.h.

◆ ReadStaticArray() [12/13]

Int_t TBufferFile::ReadStaticArray ( ULong_t l)
inlineoverridevirtual

Implements TBuffer.

Definition at line 481 of file TBufferFile.h.

◆ ReadStaticArray() [13/13]

Int_t TBufferFile::ReadStaticArray ( UShort_t h)
inlineoverridevirtual

Implements TBuffer.

Definition at line 475 of file TBufferFile.h.

◆ ReadStaticArrayDouble32()

Int_t TBufferFile::ReadStaticArrayDouble32 ( Double_t d,
TStreamerElement ele = nullptr 
)
overridevirtual

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 1221 of file TBufferFile.cxx.

◆ ReadStaticArrayFloat16()

Int_t TBufferFile::ReadStaticArrayFloat16 ( Float_t f,
TStreamerElement ele = nullptr 
)
overridevirtual

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 1200 of file TBufferFile.cxx.

◆ ReadStdString() [1/3]

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

Reimplemented from TBuffer.

Reimplemented in TBufferSQL.

Definition at line 292 of file TBuffer.h.

◆ ReadStdString() [2/3]

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

Read std::string from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL, and TBufferSQL.

Definition at line 229 of file TBufferFile.cxx.

◆ ReadStdString() [3/3]

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

Implements TBuffer.

Reimplemented in TBufferSQL, and TBufferSQL.

◆ ReadString()

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

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 3203 of file TBufferFile.cxx.

◆ ReadTString()

void TBufferFile::ReadTString ( TString s)
overridevirtual

Read TString from TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 185 of file TBufferFile.cxx.

◆ ReadUChar()

void TBufferFile::ReadUChar ( UChar_t c)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 381 of file TBufferFile.h.

◆ ReadUInt()

void TBufferFile::ReadUInt ( UInt_t i)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 405 of file TBufferFile.h.

◆ ReadULong()

void TBufferFile::ReadULong ( ULong_t l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 419 of file TBufferFile.h.

◆ ReadULong64()

void TBufferFile::ReadULong64 ( ULong64_t l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 432 of file TBufferFile.h.

◆ ReadUShort()

void TBufferFile::ReadUShort ( UShort_t s)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 393 of file TBufferFile.h.

◆ ReadVersion()

Version_t TBufferFile::ReadVersion ( UInt_t start = nullptr,
UInt_t bcnt = nullptr,
const TClass cl = nullptr 
)
overridevirtual

Read class version from I/O buffer.

Implements TBuffer.

Definition at line 2762 of file TBufferFile.cxx.

◆ ReadVersionForMemberWise()

Version_t TBufferFile::ReadVersionForMemberWise ( const TClass cl = nullptr)
overridevirtual

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 2911 of file TBufferFile.cxx.

◆ ReadVersionNoCheckSum()

Version_t TBufferFile::ReadVersionNoCheckSum ( UInt_t start = nullptr,
UInt_t bcnt = nullptr 
)
overridevirtual

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 2868 of file TBufferFile.cxx.

◆ ReadWithFactor() [1/2]

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

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 505 of file TBufferFile.cxx.

◆ ReadWithFactor() [2/2]

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

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 470 of file TBufferFile.cxx.

◆ ReadWithNbits() [1/2]

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

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 517 of file TBufferFile.cxx.

◆ ReadWithNbits() [2/2]

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

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 482 of file TBufferFile.cxx.

◆ SetByteCount()

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

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 318 of file TBufferFile.cxx.

◆ SetStreamerElementNumber()

void TBufferFile::SetStreamerElementNumber ( TStreamerElement ,
Int_t   
)
inlineoverridevirtual

Implements TBuffer.

Definition at line 91 of file TBufferFile.h.

◆ SkipObjectAny()

void TBufferFile::SkipObjectAny ( )
overridevirtual

Skip any kind of object from buffer.

Implements TBuffer.

Definition at line 2328 of file TBufferFile.cxx.

◆ SkipVersion()

void TBufferFile::SkipVersion ( const TClass cl = nullptr)
overridevirtual

Skip class version from I/O buffer.

Implements TBuffer.

Definition at line 2691 of file TBufferFile.cxx.

◆ StreamObject() [1/4]

void TBufferFile::StreamObject ( TObject obj)
overridevirtual

Stream an object inheriting from TObject using its streamer.

Implements TBuffer.

Definition at line 3068 of file TBufferFile.cxx.

◆ StreamObject() [2/4]

void TBufferFile::StreamObject ( void obj,
const char *  className,
const TClass onFileClass = nullptr 
)
overridevirtual

Stream an object given the name of its actual class.

Implements TBuffer.

Definition at line 3050 of file TBufferFile.cxx.

◆ StreamObject() [3/4]

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

Stream an object given its C++ typeinfo information.

Implements TBuffer.

Definition at line 3040 of file TBufferFile.cxx.

◆ StreamObject() [4/4]

void TBufferFile::StreamObject ( void obj,
const TClass cl,
const TClass onFileClass = nullptr 
)
overridevirtual

Stream an object given a pointer to its actual class.

Implements TBuffer.

Definition at line 3060 of file TBufferFile.cxx.

◆ WriteArray() [1/13]

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

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

Implements TBuffer.

Definition at line 1677 of file TBufferFile.cxx.

◆ WriteArray() [2/13]

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

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

Implements TBuffer.

Definition at line 1702 of file TBufferFile.cxx.

◆ WriteArray() [3/13]

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

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

Implements TBuffer.

Definition at line 1875 of file TBufferFile.cxx.

◆ WriteArray() [4/13]

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

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

Implements TBuffer.

Definition at line 1845 of file TBufferFile.cxx.

◆ WriteArray() [5/13]

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

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

Implements TBuffer.

Definition at line 1752 of file TBufferFile.cxx.

◆ WriteArray() [6/13]

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

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

Implements TBuffer.

Definition at line 1820 of file TBufferFile.cxx.

◆ WriteArray() [7/13]

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

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

Implements TBuffer.

Definition at line 1782 of file TBufferFile.cxx.

◆ WriteArray() [8/13]

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

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

Implements TBuffer.

Definition at line 1722 of file TBufferFile.cxx.

◆ WriteArray() [9/13]

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

Implements TBuffer.

Definition at line 504 of file TBufferFile.h.

◆ WriteArray() [10/13]

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

Implements TBuffer.

Definition at line 510 of file TBufferFile.h.

◆ WriteArray() [11/13]

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

Implements TBuffer.

Definition at line 513 of file TBufferFile.h.

◆ WriteArray() [12/13]

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

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 1802 of file TBufferFile.cxx.

◆ WriteArray() [13/13]

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

Implements TBuffer.

Definition at line 507 of file TBufferFile.h.

◆ WriteArrayDouble32()

void TBufferFile::WriteArrayDouble32 ( const Double_t d,
Int_t  n,
TStreamerElement ele = nullptr 
)
overridevirtual

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 1921 of file TBufferFile.cxx.

◆ WriteArrayFloat16()

void TBufferFile::WriteArrayFloat16 ( const Float_t f,
Int_t  n,
TStreamerElement ele = nullptr 
)
overridevirtual

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 1901 of file TBufferFile.cxx.

◆ WriteBool()

void TBufferFile::WriteBool ( Bool_t  b)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 272 of file TBufferFile.h.

◆ WriteBuf()

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

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

Implements TBuffer.

Definition at line 3185 of file TBufferFile.cxx.

◆ WriteChar()

void TBufferFile::WriteChar ( Char_t  c)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 279 of file TBufferFile.h.

◆ WriteCharP()

void TBufferFile::WriteCharP ( const Char_t c)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 363 of file TBufferFile.h.

◆ WriteCharStar()

void TBufferFile::WriteCharStar ( char *  s)
overridevirtual

Write char* into TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 301 of file TBufferFile.cxx.

◆ WriteClass()

void TBufferFile::WriteClass ( const TClass cl)
overridevirtual

Write class description to I/O buffer.

Implements TBuffer.

Definition at line 2653 of file TBufferFile.cxx.

◆ WriteClassBuffer()

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

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 3513 of file TBufferFile.cxx.

◆ WriteDouble()

void TBufferFile::WriteDouble ( Double_t  d)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 356 of file TBufferFile.h.

◆ WriteDouble32()

void TBufferFile::WriteDouble32 ( Double_t d,
TStreamerElement ele = nullptr 
)
overridevirtual

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 653 of file TBufferFile.cxx.

◆ WriteFastArray() [1/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1940 of file TBufferFile.cxx.

◆ WriteFastArray() [2/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1959 of file TBufferFile.cxx.

◆ WriteFastArray() [3/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2113 of file TBufferFile.cxx.

◆ WriteFastArray() [4/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2089 of file TBufferFile.cxx.

◆ WriteFastArray() [5/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2018 of file TBufferFile.cxx.

◆ WriteFastArray() [6/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2070 of file TBufferFile.cxx.

◆ WriteFastArray() [7/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 2042 of file TBufferFile.cxx.

◆ WriteFastArray() [8/15]

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1994 of file TBufferFile.cxx.

◆ WriteFastArray() [9/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 517 of file TBufferFile.h.

◆ WriteFastArray() [10/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 523 of file TBufferFile.h.

◆ WriteFastArray() [11/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 526 of file TBufferFile.h.

◆ WriteFastArray() [12/15]

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

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 2057 of file TBufferFile.cxx.

◆ WriteFastArray() [13/15]

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 520 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 = nullptr 
)
overridevirtual

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 2267 of file TBufferFile.cxx.

◆ WriteFastArray() [15/15]

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

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 2242 of file TBufferFile.cxx.

◆ WriteFastArrayDouble32()

void TBufferFile::WriteFastArrayDouble32 ( const Double_t d,
Int_t  n,
TStreamerElement ele = nullptr 
)
overridevirtual

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 2184 of file TBufferFile.cxx.

◆ WriteFastArrayFloat16()

void TBufferFile::WriteFastArrayFloat16 ( const Float_t f,
Int_t  n,
TStreamerElement ele = nullptr 
)
overridevirtual

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 2133 of file TBufferFile.cxx.

◆ WriteFastArrayString()

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

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

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 1973 of file TBufferFile.cxx.

◆ WriteFloat()

void TBufferFile::WriteFloat ( Float_t  f)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 349 of file TBufferFile.h.

◆ WriteFloat16()

void TBufferFile::WriteFloat16 ( Float_t f,
TStreamerElement ele = nullptr 
)
overridevirtual

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 589 of file TBufferFile.cxx.

◆ WriteInt()

void TBufferFile::WriteInt ( Int_t  i)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 307 of file TBufferFile.h.

◆ WriteLong()

void TBufferFile::WriteLong ( Long_t  l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 321 of file TBufferFile.h.

◆ WriteLong64()

void TBufferFile::WriteLong64 ( Long64_t  l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 335 of file TBufferFile.h.

◆ WriteObjectClass()

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

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 2490 of file TBufferFile.cxx.

◆ WriteShort()

void TBufferFile::WriteShort ( Short_t  s)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 293 of file TBufferFile.h.

◆ WriteStdString() [1/3]

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

Write std::string to TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL, and TBufferSQL.

Definition at line 260 of file TBufferFile.cxx.

◆ WriteStdString() [2/3]

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

Implements TBuffer.

Reimplemented in TBufferSQL, and TBufferSQL.

◆ WriteStdString() [3/3]

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

Reimplemented from TBuffer.

Reimplemented in TBufferSQL.

Definition at line 312 of file TBuffer.h.

◆ WriteString()

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

Write string to I/O buffer.

Writes string upto and including the terminating 0.

Implements TBuffer.

Definition at line 3230 of file TBufferFile.cxx.

◆ WriteTString()

void TBufferFile::WriteTString ( const TString s)
overridevirtual

Write TString to TBuffer.

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 210 of file TBufferFile.cxx.

◆ WriteUChar()

void TBufferFile::WriteUChar ( UChar_t  c)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 286 of file TBufferFile.h.

◆ WriteUInt()

void TBufferFile::WriteUInt ( UInt_t  i)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 314 of file TBufferFile.h.

◆ WriteULong()

void TBufferFile::WriteULong ( ULong_t  l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 328 of file TBufferFile.h.

◆ WriteULong64()

void TBufferFile::WriteULong64 ( ULong64_t  l)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 342 of file TBufferFile.h.

◆ WriteUShort()

void TBufferFile::WriteUShort ( UShort_t  s)
inlineoverridevirtual

Implements TBuffer.

Reimplemented in TBufferSQL.

Definition at line 300 of file TBufferFile.h.

◆ WriteVersion()

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

Write class version to I/O buffer.

Implements TBuffer.

Definition at line 2979 of file TBufferFile.cxx.

◆ WriteVersionMemberWise()

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

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

Implements TBuffer.

Definition at line 3009 of file TBufferFile.cxx.

Member Data Documentation

◆ fInfo

TStreamerInfo* TBufferFile::fInfo {nullptr}
protected

Pointer to TStreamerInfo object writing/reading the buffer.

Definition at line 52 of file TBufferFile.h.

◆ fInfoStack

InfoList_t TBufferFile::fInfoStack
protected

Stack of pointers to the TStreamerInfos.

Definition at line 53 of file TBufferFile.h.

Libraries for TBufferFile:

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