Logo ROOT  
Reference Guide
TMessage Class Reference

Definition at line 33 of file TMessage.h.

Public Member Functions

 TMessage (UInt_t what=kMESS_ANY, Int_t bufsiz=TBuffer::kInitialSize)
 Create a TMessage object for storing objects. More...
 
virtual ~TMessage ()
 Destructor. More...
 
char * CompBuffer () const
 
Int_t CompLength () const
 
Int_t Compress ()
 Compress the message. More...
 
void EnableSchemaEvolution (Bool_t enable=kTRUE)
 
void ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force) override
 Force writing the TStreamerInfo to the message. More...
 
void Forward ()
 Change a buffer that was received into one that can be send, i.e. More...
 
TClassGetClass () const
 
Int_t GetCompressionAlgorithm () const
 
Int_t GetCompressionLevel () const
 
Int_t GetCompressionSettings () const
 
TListGetStreamerInfos () const
 
void Reset () override
 Reset the message buffer so we can use (i.e. fill) it again. More...
 
void Reset (UInt_t what)
 
void SetCompressionAlgorithm (Int_t algorithm=ROOT::RCompressionSetting::EAlgorithm::kUseGlobal)
 Set compression algorithm. More...
 
void SetCompressionLevel (Int_t level=ROOT::RCompressionSetting::ELevel::kUseMin)
 Set compression level. More...
 
void SetCompressionSettings (Int_t settings=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault)
 Set compression settings. More...
 
void SetWhat (UInt_t what)
 Using this method one can change the message type a-posteriori In case you OR "what" with kMESS_ACK, the message will wait for an acknowledgment from the remote side. More...
 
void TagStreamerInfo (TVirtualStreamerInfo *info) override
 Remember that the StreamerInfo is being used in writing. More...
 
Int_t Uncompress ()
 Uncompress the message. More...
 
Bool_t UsesSchemaEvolution () const
 
UInt_t What () const
 
UShort_t WriteProcessID (TProcessID *pid) override
 Check if the ProcessID pid is already in the message. More...
 
- Public Member Functions inherited from TBufferFile
 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=nullptr)
 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) override
 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) override
 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) override
 Read one collection of objects from the buffer using the StreamerInfoLoopAction. More...
 
Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const char *classname) override
 Check byte count with current buffer position. More...
 
Int_t CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss) override
 Check byte count with current buffer position. More...
 
Bool_t CheckObject (const TObject *obj) override
 Check if the specified object is already in the buffer. More...
 
Bool_t CheckObject (const void *obj, const TClass *ptrClass) override
 Check if the specified object of the specified class is already in the buffer. More...
 
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. More...
 
TVirtualStreamerInfoGetInfo () override
 
void IncrementLevel (TVirtualStreamerInfo *info) override
 Increment level. More...
 
Int_t ReadArray (Bool_t *&b) override
 Read array of bools from the I/O buffer. More...
 
Int_t ReadArray (Char_t *&c) override
 Read array of characters from the I/O buffer. More...
 
Int_t ReadArray (Double_t *&d) override
 Read array of doubles from the I/O buffer. More...
 
Int_t ReadArray (Float_t *&f) override
 Read array of floats from the I/O buffer. More...
 
Int_t ReadArray (Int_t *&i) override
 Read array of ints from the I/O buffer. More...
 
Int_t ReadArray (Long64_t *&l) override
 Read array of long longs from the I/O buffer. More...
 
Int_t ReadArray (Long_t *&l) override
 Read array of longs from the I/O buffer. More...
 
Int_t ReadArray (Short_t *&h) override
 Read array of shorts from the I/O buffer. More...
 
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. More...
 
Int_t ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=nullptr) override
 Read array of floats (written as truncated float) from the I/O buffer. More...
 
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. More...
 
void ReadChar (Char_t &c) override
 
void ReadCharP (Char_t *c) override
 
void ReadCharStar (char *&s) override
 Read char* from TBuffer. More...
 
TClassReadClass (const TClass *cl=nullptr, UInt_t *objTag=nullptr) override
 Read class definition from I/O buffer. More...
 
Int_t ReadClassBuffer (const TClass *cl, void *pointer, const TClass *onfile_class) override
 Deserialize information from a buffer into an object. More...
 
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. More...
 
Int_t ReadClassEmulated (const TClass *cl, void *object, const TClass *onfile_class) override
 Read emulated class. More...
 
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(). More...
 
void ReadFastArray (Bool_t *b, Int_t n) override
 Read array of n bools from the I/O buffer. More...
 
void ReadFastArray (Char_t *c, Int_t n) override
 Read array of n characters from the I/O buffer. More...
 
void ReadFastArray (Double_t *d, Int_t n) override
 Read array of n doubles from the I/O buffer. More...
 
void ReadFastArray (Float_t *f, Int_t n) override
 Read array of n floats from the I/O buffer. More...
 
void ReadFastArray (Int_t *i, Int_t n) override
 Read array of n ints from the I/O buffer. More...
 
void ReadFastArray (Long64_t *l, Int_t n) override
 Read array of n long longs from the I/O buffer. More...
 
void ReadFastArray (Long_t *l, Int_t n) override
 Read array of n longs from the I/O buffer. More...
 
void ReadFastArray (Short_t *h, Int_t n) override
 Read array of n shorts from the I/O buffer. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
void ReadFastArrayString (Char_t *c, Int_t n) override
 Read array of n characters from the I/O buffer. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
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(). More...
 
void ReadInt (Int_t &i) override
 
void ReadLong (Long_t &l) override
 Read Long from TBuffer. More...
 
void ReadLong64 (Long64_t &l) override
 
TObjectReadObject (const TClass *cl) override
 Read object from I/O buffer. More...
 
voidReadObjectAny (const TClass *cast) override
 Read object from I/O buffer. More...
 
void ReadShort (Short_t &s) override
 
Int_t ReadStaticArray (Bool_t *b) override
 Read array of bools from the I/O buffer. More...
 
Int_t ReadStaticArray (Char_t *c) override
 Read array of characters from the I/O buffer. More...
 
Int_t ReadStaticArray (Double_t *d) override
 Read array of doubles from the I/O buffer. More...
 
Int_t ReadStaticArray (Float_t *f) override
 Read array of floats from the I/O buffer. More...
 
Int_t ReadStaticArray (Int_t *i) override
 Read array of ints from the I/O buffer. More...
 
Int_t ReadStaticArray (Long64_t *l) override
 Read array of long longs from the I/O buffer. More...
 
Int_t ReadStaticArray (Long_t *l) override
 Read array of longs from the I/O buffer. More...
 
Int_t ReadStaticArray (Short_t *h) override
 Read array of shorts from the I/O buffer. More...
 
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. More...
 
Int_t ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=nullptr) override
 Read array of floats (written as truncated float) from the I/O buffer. More...
 
virtual void ReadStdString (std::string &s)
 
void ReadStdString (std::string *s) override
 Read std::string from TBuffer. More...
 
virtual void ReadStdString (std::string *s)=0
 
char * ReadString (char *s, Int_t max) override
 Read string from I/O buffer. More...
 
void ReadTString (TString &s) override
 Read TString from TBuffer. More...
 
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. More...
 
Version_t ReadVersionForMemberWise (const TClass *cl=nullptr) override
 Read class version from I/O buffer. More...
 
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. More...
 
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(). More...
 
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(). More...
 
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(). More...
 
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(). More...
 
void SetByteCount (UInt_t cntpos, Bool_t packInVersion=kFALSE) override
 Set byte count at position cntpos in the buffer. More...
 
void SetStreamerElementNumber (TStreamerElement *, Int_t) override
 
void SkipObjectAny () override
 Skip any kind of object from buffer. More...
 
void SkipVersion (const TClass *cl=nullptr) override
 Skip class version from I/O buffer. More...
 
void StreamObject (TObject *obj) override
 Stream an object inheriting from TObject using its streamer. More...
 
void StreamObject (void *obj, const char *className, const TClass *onFileClass=nullptr) override
 Stream an object given the name of its actual class. More...
 
void StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=nullptr) override
 Stream an object given its C++ typeinfo information. More...
 
void StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=nullptr) override
 Stream an object given a pointer to its actual class. More...
 
void WriteArray (const Bool_t *b, Int_t n) override
 Write array of n bools into the I/O buffer. More...
 
void WriteArray (const Char_t *c, Int_t n) override
 Write array of n characters into the I/O buffer. More...
 
void WriteArray (const Double_t *d, Int_t n) override
 Write array of n doubles into the I/O buffer. More...
 
void WriteArray (const Float_t *f, Int_t n) override
 Write array of n floats into the I/O buffer. More...
 
void WriteArray (const Int_t *i, Int_t n) override
 Write array of n ints into the I/O buffer. More...
 
void WriteArray (const Long64_t *l, Int_t n) override
 Write array of n long longs into the I/O buffer. More...
 
void WriteArray (const Long_t *l, Int_t n) override
 Write array of n longs into the I/O buffer. More...
 
void WriteArray (const Short_t *h, Int_t n) override
 Write array of n shorts into the I/O buffer. More...
 
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. More...
 
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. More...
 
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. More...
 
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. More...
 
void WriteChar (Char_t c) override
 
void WriteCharP (const Char_t *c) override
 
void WriteCharStar (char *s) override
 Write char* into TBuffer. More...
 
void WriteClass (const TClass *cl) override
 Write class description to I/O buffer. More...
 
Int_t WriteClassBuffer (const TClass *cl, void *pointer) override
 Function called by the Streamer functions to serialize object at p to buffer b. More...
 
void WriteDouble (Double_t d) override
 
void WriteDouble32 (Double_t *d, TStreamerElement *ele=nullptr) override
 Write a Double32_t to the buffer. More...
 
void WriteFastArray (const Bool_t *b, Int_t n) override
 Write array of n bools into the I/O buffer. More...
 
void WriteFastArray (const Char_t *c, Int_t n) override
 Write array of n characters into the I/O buffer. More...
 
void WriteFastArray (const Double_t *d, Int_t n) override
 Write array of n doubles into the I/O buffer. More...
 
void WriteFastArray (const Float_t *f, Int_t n) override
 Write array of n floats into the I/O buffer. More...
 
void WriteFastArray (const Int_t *i, Int_t n) override
 Write array of n ints into the I/O buffer. More...
 
void WriteFastArray (const Long64_t *l, Int_t n) override
 Write array of n long longs into the I/O buffer. More...
 
void WriteFastArray (const Long_t *l, Int_t n) override
 Write array of n longs into the I/O buffer. More...
 
void WriteFastArray (const Short_t *h, Int_t n) override
 Write array of n shorts into the I/O buffer. More...
 
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. More...
 
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: More...
 
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'. More...
 
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. More...
 
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. More...
 
void WriteFastArrayString (const Char_t *c, Int_t n) override
 Write array of n characters into the I/O buffer. More...
 
void WriteFloat (Float_t f) override
 
void WriteFloat16 (Float_t *f, TStreamerElement *ele=nullptr) override
 Write a Float16_t to the buffer. More...
 
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. More...
 
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. More...
 
void WriteTString (const TString &s) override
 Write TString to TBuffer. More...
 
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. More...
 
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. More...
 
- Public Member Functions inherited from TBufferIO
virtual ~TBufferIO ()
 destructor More...
 
Bool_t CheckObject (const TObject *obj) override
 Check if the specified object is already in the buffer. More...
 
Bool_t CheckObject (const void *obj, const TClass *ptrClass) override
 Check if the specified object of the specified class is already in the buffer. More...
 
void ForceWriteInfoClones (TClonesArray *a) override
 Make sure TStreamerInfo is not optimized, otherwise it will not be possible to support schema evolution in read mode. More...
 
Int_t GetBufferDisplacement () const override
 
TProcessIDGetLastProcessID (TRefTable *reftable) const override
 Return the last TProcessID in the file. More...
 
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. More...
 
UShort_t GetPidOffset () const override
 
UInt_t GetTRefExecId () override
 Return the exec id stored in the current TStreamerInfo element. More...
 
Int_t GetVersionOwner () const override
 Return the version number of the owner file. More...
 
void InitMap () override
 Create the fMap container and initialize them with the null object. More...
 
void MapObject (const TObject *obj, UInt_t offset=1) override
 Add object to the fMap container. More...
 
void MapObject (const void *obj, const TClass *cl, UInt_t offset=1) override
 Add object to the fMap container. More...
 
Int_t ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers) override
 Interface to TStreamerInfo::ReadBufferClones. More...
 
TProcessIDReadProcessID (UShort_t pidf) override
 The TProcessID with number pidf is read from file. More...
 
void ResetMap () override
 Delete existing fMap and reset map counter. More...
 
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. More...
 
void SetReadParam (Int_t mapsize) override
 Set the initial size of the map used to store object and class references during reading. More...
 
void SetWriteParam (Int_t mapsize) override
 Set the initial size of the hashtable used to store object and class references during writing. More...
 
Int_t WriteClones (TClonesArray *a, Int_t nobjects) override
 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
 
void WriteObject (const TObject *obj, Bool_t cacheReuse=kTRUE) override
 Write object to I/O buffer. More...
 
Int_t WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE) override
 Write object to I/O buffer. More...
 
- Public Member Functions inherited from TBuffer
 TBuffer (EMode mode)
 Create an I/O buffer object. More...
 
 TBuffer (EMode mode, Int_t bufsiz)
 Create an I/O buffer object. More...
 
 TBuffer (EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0)
 Create an I/O buffer object. More...
 
virtual ~TBuffer ()
 Delete an I/O buffer object. More...
 
void AutoExpand (Int_t size_needed)
 Automatically calculate a new size and expand the buffer to fit at least size_needed. More...
 
char * Buffer () const
 
Int_t BufferSize () const
 
Bool_t ByteSwapBuffer (Long64_t n, EDataType type)
 Byte-swap N primitive-elements in the buffer. More...
 
void DetachBuffer ()
 
void Expand (Int_t newsize, Bool_t copy=kTRUE)
 Expand (or shrink) the I/O buffer to newsize bytes. More...
 
Int_t GetBufferVersion () const
 
char * GetCurrent () const
 
TObjectGetParent () const
 Return pointer to parent of this buffer. More...
 
ReAllocCharFun_t GetReAllocFunc () const
 Return the reallocation method currently used. More...
 
Bool_t IsReading () const
 
Bool_t IsWriting () const
 
Int_t Length () const
 
virtual TVirtualArrayPeekDataCache () const
 Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. More...
 
virtual TVirtualArrayPopDataCache ()
 Pop and Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. More...
 
virtual void PushDataCache (TVirtualArray *)
 Push a new data cache area onto the list of area to be used for temporarily store 'missing' data members. More...
 
virtual void ReadStdString (std::string &s)
 
void SetBuffer (void *buf, UInt_t bufsiz=0, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0)
 Sets a new buffer in an existing TBuffer object. More...
 
void SetBufferOffset (Int_t offset=0)
 
void SetParent (TObject *parent)
 Set parent owning this buffer. More...
 
void SetReadMode ()
 Set buffer in read mode. More...
 
void SetReAllocFunc (ReAllocCharFun_t reallocfunc=0)
 Set which memory reallocation method to use. More...
 
void SetWriteMode ()
 Set buffer in write mode. More...
 
template<class T >
Int_t WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE)
 
virtual void WriteStdString (std::string &s)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 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 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...
 

Static Public Member Functions

static void EnableSchemaEvolutionForAll (Bool_t enable=kTRUE)
 Static function enabling or disabling the automatic schema evolution. More...
 
static Bool_t UsesSchemaEvolutionForAll ()
 Static function returning status of global schema evolution. More...
 
- Static Public Member Functions inherited from TBufferIO
static Int_t GetGlobalReadParam ()
 Get default read map size. More...
 
static Int_t GetGlobalWriteParam ()
 Get default write map size. More...
 
static void SetGlobalReadParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading. More...
 
static void SetGlobalWriteParam (Int_t mapsize)
 Set the initial size of the map used to store object and class references during reading. More...
 
- Static Public Member Functions inherited from TBuffer
static TClassGetClass (const 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...
 

Protected Member Functions

 TMessage (void *buf, Int_t bufsize)
 Create a TMessage object for reading objects. More...
 
void SetLength () const
 Set the message length at the beginning of the message buffer. More...
 
- Protected Member Functions inherited from TBufferFile
 TBufferFile ()
 
 TBufferFile (const TBufferFile &)=delete
 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...
 
void CheckCount (UInt_t offset) override
 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 &)=delete
 not implemented More...
 
void WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse) override
 Write object to I/O buffer. More...
 
- Protected Member Functions inherited from TBufferIO
 TBufferIO ()
 
 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...
 
Long64_t GetObjectTag (const void *obj)
 Returns tag for specified object from objects map (if exists) Returns 0 if object not included into objects map. More...
 
- Protected Member Functions inherited from TBuffer
 TBuffer ()
 
 TBuffer (const TBuffer &)
 
void operator= (const TBuffer &)
 
Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
Int_t Write (const char *name, Int_t opt, Int_t bufs)
 Write this object to the current directory. More...
 
Int_t Write (const char *name, Int_t opt, Int_t bufs) const
 Write this object to the current directory. More...
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

Private Member Functions

 TMessage (const TMessage &)
 
void operator= (const TMessage &)
 
Bool_t TestBitNumber (UInt_t bitnumber) const
 

Private Attributes

TBits fBitsPIDs
 
char * fBufComp {nullptr}
 
char * fBufCompCur {nullptr}
 
TClassfClass {nullptr}
 
char * fCompPos {nullptr}
 
Int_t fCompress {0}
 
Bool_t fEvolution {kFALSE}
 
TListfInfos {nullptr}
 
UInt_t fWhat {0}
 

Static Private Attributes

static Bool_t fgEvolution = kFALSE
 

Friends

class TAuthenticate
 
class TPSocket
 
class TSocket
 
class TUDPSocket
 
class TXSocket
 

Additional Inherited Members

- Public Types inherited from TBufferFile
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)
}
 
- Protected Types inherited from TBufferFile
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
 
- Static Protected Member Functions inherited from TBufferIO
static R__ALWAYS_INLINE ULong_t Void_Hash (const void *ptr)
 Return hash value for provided object. More...
 
- Protected Attributes inherited from TBufferFile
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
 
- Static Protected Attributes inherited from TBufferIO
static Int_t fgMapSize = kMapSize
 Default map size for all TBuffer objects. More...
 

#include <TMessage.h>

Inheritance diagram for TMessage:
[legend]

Constructor & Destructor Documentation

◆ TMessage() [1/3]

TMessage::TMessage ( const TMessage )
private

◆ TMessage() [2/3]

TMessage::TMessage ( void buf,
Int_t  bufsize 
)
protected

Create a TMessage object for reading objects.

The objects will be read from buf. Use the What() method to get the message type.

Definition at line 71 of file TMessage.cxx.

◆ TMessage() [3/3]

TMessage::TMessage ( UInt_t  what = kMESS_ANY,
Int_t  bufsiz = TBuffer::kInitialSize 
)

Create a TMessage object for storing objects.

The "what" integer describes the type of message. Predefined ROOT system message types can be found in MessageTypes.h. Make sure your own message types are unique from the ROOT defined message types (i.e. 0 - 10000 are reserved by ROOT). In case you OR "what" with kMESS_ACK, the message will wait for an acknowledgment from the remote side. This makes the sending process synchronous. In case you OR "what" with kMESS_ZIP, the message will be compressed in TSocket using the zip algorithm (only if message is > 256 bytes).

Definition at line 46 of file TMessage.cxx.

◆ ~TMessage()

TMessage::~TMessage ( )
virtual

Destructor.

Definition at line 106 of file TMessage.cxx.

Member Function Documentation

◆ CompBuffer()

char* TMessage::CompBuffer ( ) const
inline

Definition at line 89 of file TMessage.h.

◆ CompLength()

Int_t TMessage::CompLength ( ) const
inline

Definition at line 90 of file TMessage.h.

◆ Compress()

Int_t TMessage::Compress ( )

Compress the message.

The message will only be compressed if the compression level > 0 and the if the message is > 256 bytes. Returns -1 in case of error (when compression fails or when the message increases in size in some pathological cases), otherwise returns 0.

Definition at line 306 of file TMessage.cxx.

◆ EnableSchemaEvolution()

void TMessage::EnableSchemaEvolution ( Bool_t  enable = kTRUE)
inline

Definition at line 78 of file TMessage.h.

◆ EnableSchemaEvolutionForAll()

void TMessage::EnableSchemaEvolutionForAll ( Bool_t  enable = kTRUE)
static

Static function enabling or disabling the automatic schema evolution.

By default schema evolution support is off.

Definition at line 116 of file TMessage.cxx.

◆ ForceWriteInfo()

void TMessage::ForceWriteInfo ( TVirtualStreamerInfo info,
Bool_t  force 
)
overridevirtual

Force writing the TStreamerInfo to the message.

Reimplemented from TBufferIO.

Definition at line 132 of file TMessage.cxx.

◆ Forward()

void TMessage::Forward ( )

Change a buffer that was received into one that can be send, i.e.

forward a just received message.

Definition at line 144 of file TMessage.cxx.

◆ GetClass()

TClass* TMessage::GetClass ( ) const
inline

Definition at line 71 of file TMessage.h.

◆ GetCompressionAlgorithm()

Int_t TMessage::GetCompressionAlgorithm ( ) const
inline

Definition at line 100 of file TMessage.h.

◆ GetCompressionLevel()

Int_t TMessage::GetCompressionLevel ( ) const
inline

Definition at line 106 of file TMessage.h.

◆ GetCompressionSettings()

Int_t TMessage::GetCompressionSettings ( ) const
inline

Definition at line 112 of file TMessage.h.

◆ GetStreamerInfos()

TList* TMessage::GetStreamerInfos ( ) const
inline

Definition at line 80 of file TMessage.h.

◆ operator=()

void TMessage::operator= ( const TMessage )
private

◆ Reset() [1/2]

void TMessage::Reset ( void  )
overridevirtual

Reset the message buffer so we can use (i.e. fill) it again.

Reimplemented from TBufferIO.

Definition at line 179 of file TMessage.cxx.

◆ Reset() [2/2]

void TMessage::Reset ( UInt_t  what)
inline

Definition at line 74 of file TMessage.h.

◆ SetCompressionAlgorithm()

void TMessage::SetCompressionAlgorithm ( Int_t  algorithm = ROOT::RCompressionSetting::EAlgorithm::kUseGlobal)

Set compression algorithm.

Definition at line 242 of file TMessage.cxx.

◆ SetCompressionLevel()

void TMessage::SetCompressionLevel ( Int_t  level = ROOT::RCompressionSetting::ELevel::kUseMin)

Set compression level.

Definition at line 264 of file TMessage.cxx.

◆ SetCompressionSettings()

void TMessage::SetCompressionSettings ( Int_t  settings = ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault)

Set compression settings.

Definition at line 288 of file TMessage.cxx.

◆ SetLength()

void TMessage::SetLength ( ) const
protected

Set the message length at the beginning of the message buffer.

This method is only called by TSocket::Send().

Definition at line 202 of file TMessage.cxx.

◆ SetWhat()

void TMessage::SetWhat ( UInt_t  what)

Using this method one can change the message type a-posteriori In case you OR "what" with kMESS_ACK, the message will wait for an acknowledgment from the remote side.

This makes the sending process synchronous.

Definition at line 222 of file TMessage.cxx.

◆ TagStreamerInfo()

void TMessage::TagStreamerInfo ( TVirtualStreamerInfo info)
overridevirtual

Remember that the StreamerInfo is being used in writing.

When support for schema evolution is enabled the list of TStreamerInfo used to stream this object is kept in fInfos. This information is used by TSocket::Send that sends this list through the socket. This list is in turn used by TSocket::Recv to store the TStreamerInfo objects in the relevant TClass in case the TClass does not know yet about a particular class version. This feature is implemented to support clients and servers with either different ROOT versions or different user classes versions.

Reimplemented from TBufferIO.

Definition at line 168 of file TMessage.cxx.

◆ TestBitNumber()

Bool_t TMessage::TestBitNumber ( UInt_t  bitnumber) const
inlineprivate

Definition at line 59 of file TMessage.h.

◆ Uncompress()

Int_t TMessage::Uncompress ( )

Uncompress the message.

The message will only be uncompressed when kMESS_ZIP is set. Returns -1 in case of error, 0 otherwise.

Definition at line 391 of file TMessage.cxx.

◆ UsesSchemaEvolution()

Bool_t TMessage::UsesSchemaEvolution ( ) const
inline

Definition at line 79 of file TMessage.h.

◆ UsesSchemaEvolutionForAll()

Bool_t TMessage::UsesSchemaEvolutionForAll ( )
static

Static function returning status of global schema evolution.

Definition at line 124 of file TMessage.cxx.

◆ What()

UInt_t TMessage::What ( ) const
inline

Definition at line 75 of file TMessage.h.

◆ WriteProcessID()

UShort_t TMessage::WriteProcessID ( TProcessID pid)
overridevirtual

Check if the ProcessID pid is already in the message.

If not, then:

  • mark bit 0 of fBitsPIDs to indicate that a ProcessID has been found
  • mark bit uid+1 where uid id the uid of the ProcessID

Reimplemented from TBufferIO.

Definition at line 440 of file TMessage.cxx.

Friends And Related Function Documentation

◆ TAuthenticate

friend class TAuthenticate
friend

Definition at line 35 of file TMessage.h.

◆ TPSocket

friend class TPSocket
friend

Definition at line 38 of file TMessage.h.

◆ TSocket

friend class TSocket
friend

Definition at line 36 of file TMessage.h.

◆ TUDPSocket

friend class TUDPSocket
friend

Definition at line 37 of file TMessage.h.

◆ TXSocket

friend class TXSocket
friend

Definition at line 39 of file TMessage.h.

Member Data Documentation

◆ fBitsPIDs

TBits TMessage::fBitsPIDs
private

Definition at line 43 of file TMessage.h.

◆ fBufComp

char* TMessage::fBufComp {nullptr}
private

Definition at line 47 of file TMessage.h.

◆ fBufCompCur

char* TMessage::fBufCompCur {nullptr}
private

Definition at line 48 of file TMessage.h.

◆ fClass

TClass* TMessage::fClass {nullptr}
private

Definition at line 45 of file TMessage.h.

◆ fCompPos

char* TMessage::fCompPos {nullptr}
private

Definition at line 49 of file TMessage.h.

◆ fCompress

Int_t TMessage::fCompress {0}
private

Definition at line 46 of file TMessage.h.

◆ fEvolution

Bool_t TMessage::fEvolution {kFALSE}
private

Definition at line 50 of file TMessage.h.

◆ fgEvolution

Bool_t TMessage::fgEvolution = kFALSE
staticprivate

Definition at line 52 of file TMessage.h.

◆ fInfos

TList* TMessage::fInfos {nullptr}
private

Definition at line 42 of file TMessage.h.

◆ fWhat

UInt_t TMessage::fWhat {0}
private

Definition at line 44 of file TMessage.h.

Libraries for TMessage:
[legend]

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