ROOT logo
ROOT » NET » NET » TMessage

class TMessage: public TBufferFile


TMessage

Message buffer class used for serializing objects and sending them
over a network. This class inherits from TBuffer the basic I/O
serializer.


Function Members (Methods)

public:
TMessage(UInt_t what = kMESS_ANY, Int_t bufsiz = TBuffer::kInitialSize)
virtual~TMessage()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
char*TBuffer::Buffer() const
Int_tTBuffer::BufferSize() const
virtual Int_tTBufferFile::CheckByteCount(UInt_t startpos, UInt_t bcnt, const TClass* clss)
virtual Int_tTBufferFile::CheckByteCount(UInt_t startpos, UInt_t bcnt, const char* classname)
virtual Bool_tTBufferFile::CheckObject(const TObject* obj)
virtual Bool_tTBufferFile::CheckObject(const void* obj, const TClass* ptrClass)
static TClass*Class()
virtual voidTBufferFile::ClassBegin(const TClass*, Version_t = -1)
virtual voidTBufferFile::ClassEnd(const TClass*)
virtual voidTBufferFile::ClassMember(const char*, const char* = 0, Int_t = -1, Int_t = -1)
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
char*CompBuffer() const
Int_tCompLength() const
Int_tCompress()
virtual voidTObject::Copy(TObject& object) const
virtual voidTBufferFile::DecrementLevel(TVirtualStreamerInfo*)
virtual voidTObject::Delete(Option_t* option = "")MENU
voidTBuffer::DetachBuffer()
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
voidEnableSchemaEvolution(Bool_t enable = kTRUE)
static voidEnableSchemaEvolutionForAll(Bool_t enable = kTRUE)
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
voidTBuffer::Expand(Int_t newsize)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidForceWriteInfo(TVirtualStreamerInfo* info, Bool_t force)
virtual voidTBufferFile::ForceWriteInfoClones(TClonesArray* a)
voidForward()
virtual Int_tTBufferFile::GetBufferDisplacement() const
Int_tTBuffer::GetBufferVersion() const
TClass*GetClass() const
Int_tGetCompressionLevel() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
static Int_tTBufferFile::GetGlobalReadParam()
static Int_tTBufferFile::GetGlobalWriteParam()
virtual const char*TObject::GetIconName() const
virtual TVirtualStreamerInfo*TBufferFile::GetInfo()
virtual TProcessID*TBufferFile::GetLastProcessID(TRefTable* reftable) const
virtual Int_tTBufferFile::GetMapCount() const
virtual voidTBufferFile::GetMappedObject(UInt_t tag, void*& ptr, TClass*& ClassPtr) const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
TObject*TBuffer::GetParent() const
virtual UShort_tTBufferFile::GetPidOffset() const
ReAllocCharFun_tTBuffer::GetReAllocFunc() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTBufferFile::GetTRefExecId()
virtual UInt_tTObject::GetUniqueID() const
virtual Int_tTBufferFile::GetVersionOwner() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTBufferFile::IncrementLevel(TVirtualStreamerInfo* info)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTBufferFile::InitMap()
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
Bool_tTBuffer::IsReading() const
virtual Bool_tTObject::IsSortable() const
Bool_tTBuffer::IsWriting() const
Bool_tTObject::IsZombie() const
Int_tTBuffer::Length() const
virtual voidTObject::ls(Option_t* option = "") const
virtual voidTBufferFile::MapObject(const TObject* obj, UInt_t offset = 1)
virtual voidTBufferFile::MapObject(const void* obj, const TClass* cl, UInt_t offset = 1)
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual TVirtualArray*TBufferFile::PeekDataCache() const
virtual voidTObject::Pop()
virtual TVirtualArray*TBufferFile::PopDataCache()
virtual voidTObject::Print(Option_t* option = "") const
virtual voidTBufferFile::PushDataCache(TVirtualArray*)
virtual Int_tTBufferFile::ReadArray(Bool_t*& b)
virtual Int_tTBufferFile::ReadArray(Char_t*& c)
virtual Int_tTBufferFile::ReadArray(UChar_t*& c)
virtual Int_tTBufferFile::ReadArray(Short_t*& h)
virtual Int_tTBufferFile::ReadArray(UShort_t*& h)
virtual Int_tTBufferFile::ReadArray(Int_t*& i)
virtual Int_tTBufferFile::ReadArray(UInt_t*& i)
virtual Int_tTBufferFile::ReadArray(Long_t*& l)
virtual Int_tTBufferFile::ReadArray(ULong_t*& l)
virtual Int_tTBufferFile::ReadArray(Long64_t*& l)
virtual Int_tTBufferFile::ReadArray(ULong64_t*& ll)
virtual Int_tTBufferFile::ReadArray(Float_t*& f)
virtual Int_tTBufferFile::ReadArray(Double_t*& d)
virtual Int_tTBufferFile::ReadArrayDouble32(Double_t*& d, TStreamerElement* ele = 0)
virtual Int_tTBufferFile::ReadArrayFloat16(Float_t*& f, TStreamerElement* ele = 0)
virtual voidTBufferFile::ReadBool(Bool_t& b)
virtual Int_tTBufferFile::ReadBuf(void* buf, Int_t max)
virtual voidTBufferFile::ReadChar(Char_t& c)
virtual voidTBufferFile::ReadCharP(Char_t* c)
virtual TClass*TBufferFile::ReadClass(const TClass* cl = 0, UInt_t* objTag = 0)
virtual Int_tTBufferFile::ReadClassBuffer(const TClass* cl, void* pointer, const TClass* onfile_class)
virtual Int_tTBufferFile::ReadClassBuffer(const TClass* cl, void* pointer, Int_t version, UInt_t start, UInt_t count, const TClass* onfile_class)
virtual Int_tTBufferFile::ReadClassEmulated(const TClass* cl, void* object, const TClass* onfile_class)
virtual Int_tTBufferFile::ReadClones(TClonesArray* a, Int_t nobjects, Version_t objvers)
virtual voidTBufferFile::ReadDouble(Double_t& d)
virtual voidTBufferFile::ReadDouble32(Double_t* d, TStreamerElement* ele = 0)
virtual voidTBufferFile::ReadFastArray(Bool_t* b, Int_t n)
virtual voidTBufferFile::ReadFastArray(Char_t* c, Int_t n)
virtual voidTBufferFile::ReadFastArray(UChar_t* c, Int_t n)
virtual voidTBufferFile::ReadFastArray(Short_t* h, Int_t n)
virtual voidTBufferFile::ReadFastArray(UShort_t* h, Int_t n)
virtual voidTBufferFile::ReadFastArray(Int_t* i, Int_t n)
virtual voidTBufferFile::ReadFastArray(UInt_t* i, Int_t n)
virtual voidTBufferFile::ReadFastArray(Long_t* l, Int_t n)
virtual voidTBufferFile::ReadFastArray(ULong_t* l, Int_t n)
virtual voidTBufferFile::ReadFastArray(Long64_t* l, Int_t n)
virtual voidTBufferFile::ReadFastArray(ULong64_t* ll, Int_t n)
virtual voidTBufferFile::ReadFastArray(Float_t* f, Int_t n)
virtual voidTBufferFile::ReadFastArray(Double_t* d, Int_t n)
virtual voidTBufferFile::ReadFastArray(void* start, const TClass* cl, Int_t n = 1, TMemberStreamer* s = 0, const TClass* onFileClass = 0)
virtual voidTBufferFile::ReadFastArray(void** startp, const TClass* cl, Int_t n = 1, Bool_t isPreAlloc = kFALSE, TMemberStreamer* s = 0, const TClass* onFileClass = 0)
virtual voidTBufferFile::ReadFastArrayDouble32(Double_t* d, Int_t n, TStreamerElement* ele = 0)
virtual voidTBufferFile::ReadFastArrayFloat16(Float_t* f, Int_t n, TStreamerElement* ele = 0)
virtual voidTBufferFile::ReadFastArrayString(Char_t* c, Int_t n)
virtual voidTBufferFile::ReadFloat(Float_t& f)
virtual voidTBufferFile::ReadFloat16(Float_t* f, TStreamerElement* ele = 0)
virtual voidTBufferFile::ReadInt(Int_t& i)
virtual voidTBufferFile::ReadLong(Long_t& l)
virtual voidTBufferFile::ReadLong64(Long64_t& ll)
virtual TObject*TBufferFile::ReadObject(const TClass* cl)
virtual void*TBufferFile::ReadObjectAny(const TClass* cast)
virtual TProcessID*TBufferFile::ReadProcessID(UShort_t pidf)
virtual voidTBufferFile::ReadShort(Short_t& h)
virtual Int_tTBufferFile::ReadStaticArray(Bool_t* b)
virtual Int_tTBufferFile::ReadStaticArray(Char_t* c)
virtual Int_tTBufferFile::ReadStaticArray(UChar_t* c)
virtual Int_tTBufferFile::ReadStaticArray(Short_t* h)
virtual Int_tTBufferFile::ReadStaticArray(UShort_t* h)
virtual Int_tTBufferFile::ReadStaticArray(Int_t* i)
virtual Int_tTBufferFile::ReadStaticArray(UInt_t* i)
virtual Int_tTBufferFile::ReadStaticArray(Long_t* l)
virtual Int_tTBufferFile::ReadStaticArray(ULong_t* l)
virtual Int_tTBufferFile::ReadStaticArray(Long64_t* l)
virtual Int_tTBufferFile::ReadStaticArray(ULong64_t* ll)
virtual Int_tTBufferFile::ReadStaticArray(Float_t* f)
virtual Int_tTBufferFile::ReadStaticArray(Double_t* d)
virtual Int_tTBufferFile::ReadStaticArrayDouble32(Double_t* d, TStreamerElement* ele = 0)
virtual Int_tTBufferFile::ReadStaticArrayFloat16(Float_t* f, TStreamerElement* ele = 0)
virtual char*TBufferFile::ReadString(char* s, Int_t max)
virtual voidTBufferFile::ReadTString(TString& s)
virtual voidTBufferFile::ReadUChar(UChar_t& c)
virtual voidTBufferFile::ReadUInt(UInt_t& i)
virtual voidTBufferFile::ReadULong(ULong_t& ll)
virtual voidTBufferFile::ReadULong64(ULong64_t& ll)
virtual voidTBufferFile::ReadUShort(UShort_t& h)
virtual Version_tTBufferFile::ReadVersion(UInt_t* start = 0, UInt_t* bcnt = 0, const TClass* cl = 0)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidReset()
voidReset(UInt_t what)
voidTObject::ResetBit(UInt_t f)
virtual voidTBufferFile::ResetMap()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidTBuffer::SetBuffer(void* buf, UInt_t bufsiz = 0, Bool_t adopt = kTRUE, ReAllocCharFun_t reallocfunc = 0)
virtual voidTBufferFile::SetBufferDisplacement()
virtual voidTBufferFile::SetBufferDisplacement(Int_t skipped)
voidTBuffer::SetBufferOffset(Int_t offset = 0)
virtual voidTBufferFile::SetByteCount(UInt_t cntpos, Bool_t packInVersion = kFALSE)
voidSetCompressionLevel(Int_t level = 1)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTBufferFile::SetGlobalReadParam(Int_t mapsize)
static voidTBufferFile::SetGlobalWriteParam(Int_t mapsize)
static voidTObject::SetObjectStat(Bool_t stat)
voidTBuffer::SetParent(TObject* parent)
virtual voidTBufferFile::SetPidOffset(UShort_t offset)
voidTBuffer::SetReadMode()
virtual voidTBufferFile::SetReadParam(Int_t mapsize)
voidTBuffer::SetReAllocFunc(ReAllocCharFun_t reallocfunc = 0)
virtual voidTBufferFile::SetStreamerElementNumber(Int_t)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetWhat(UInt_t what)
voidTBuffer::SetWriteMode()
virtual voidTBufferFile::SetWriteParam(Int_t mapsize)
virtual voidShowMembers(TMemberInspector& insp)
virtual voidTBufferFile::SkipObjectAny()
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTBufferFile::StreamObject(TObject* obj)
virtual voidTBufferFile::StreamObject(void* obj, const type_info& typeinfo, const TClass* onFileClass = 0)
virtual voidTBufferFile::StreamObject(void* obj, const char* className, const TClass* onFileClass = 0)
virtual voidTBufferFile::StreamObject(void* obj, const TClass* cl, const TClass* onFileClass = 0)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidTagStreamerInfo(TVirtualStreamerInfo* info)
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
Int_tUncompress()
virtual voidTObject::UseCurrentStyle()
Bool_tUsesSchemaEvolution() const
static Bool_tUsesSchemaEvolutionForAll()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
UInt_tWhat() const
virtual voidTBufferFile::WriteArray(const Bool_t* b, Int_t n)
virtual voidTBufferFile::WriteArray(const Char_t* c, Int_t n)
virtual voidTBufferFile::WriteArray(const UChar_t* c, Int_t n)
virtual voidTBufferFile::WriteArray(const Short_t* h, Int_t n)
virtual voidTBufferFile::WriteArray(const UShort_t* h, Int_t n)
virtual voidTBufferFile::WriteArray(const Int_t* i, Int_t n)
virtual voidTBufferFile::WriteArray(const UInt_t* i, Int_t n)
virtual voidTBufferFile::WriteArray(const Long_t* l, Int_t n)
virtual voidTBufferFile::WriteArray(const ULong_t* l, Int_t n)
virtual voidTBufferFile::WriteArray(const Long64_t* l, Int_t n)
virtual voidTBufferFile::WriteArray(const ULong64_t* ll, Int_t n)
virtual voidTBufferFile::WriteArray(const Float_t* f, Int_t n)
virtual voidTBufferFile::WriteArray(const Double_t* d, Int_t n)
virtual voidTBufferFile::WriteArrayDouble32(const Double_t* d, Int_t n, TStreamerElement* ele = 0)
virtual voidTBufferFile::WriteArrayFloat16(const Float_t* f, Int_t n, TStreamerElement* ele = 0)
virtual voidTBufferFile::WriteBool(Bool_t b)
virtual voidTBufferFile::WriteBuf(const void* buf, Int_t max)
virtual voidTBufferFile::WriteChar(Char_t c)
virtual voidTBufferFile::WriteCharP(const Char_t* c)
virtual voidTBufferFile::WriteClass(const TClass* cl)
virtual Int_tTBufferFile::WriteClassBuffer(const TClass* cl, void* pointer)
virtual Int_tTBufferFile::WriteClones(TClonesArray* a, Int_t nobjects)
virtual voidTBufferFile::WriteDouble(Double_t d)
virtual voidTBufferFile::WriteDouble32(Double_t* d, TStreamerElement* ele = 0)
virtual voidTBufferFile::WriteFastArray(const Bool_t* b, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Char_t* c, Int_t n)
virtual voidTBufferFile::WriteFastArray(const UChar_t* c, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Short_t* h, Int_t n)
virtual voidTBufferFile::WriteFastArray(const UShort_t* h, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Int_t* i, Int_t n)
virtual voidTBufferFile::WriteFastArray(const UInt_t* i, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Long_t* l, Int_t n)
virtual voidTBufferFile::WriteFastArray(const ULong_t* l, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Long64_t* l, Int_t n)
virtual voidTBufferFile::WriteFastArray(const ULong64_t* ll, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Float_t* f, Int_t n)
virtual voidTBufferFile::WriteFastArray(const Double_t* d, Int_t n)
virtual voidTBufferFile::WriteFastArray(void* start, const TClass* cl, Int_t n = 1, TMemberStreamer* s = 0)
virtual Int_tTBufferFile::WriteFastArray(void** startp, const TClass* cl, Int_t n = 1, Bool_t isPreAlloc = kFALSE, TMemberStreamer* s = 0)
virtual voidTBufferFile::WriteFastArrayDouble32(const Double_t* d, Int_t n, TStreamerElement* ele = 0)
virtual voidTBufferFile::WriteFastArrayFloat16(const Float_t* f, Int_t n, TStreamerElement* ele = 0)
virtual voidTBufferFile::WriteFastArrayString(const Char_t* c, Int_t n)
virtual voidTBufferFile::WriteFloat(Float_t f)
virtual voidTBufferFile::WriteFloat16(Float_t* f, TStreamerElement* ele = 0)
virtual voidTBufferFile::WriteInt(Int_t i)
virtual voidTBufferFile::WriteLong(Long_t l)
virtual voidTBufferFile::WriteLong64(Long64_t ll)
virtual voidWriteObject(const TObject* obj)
virtual Int_tTBufferFile::WriteObjectAny(const void* obj, const TClass* ptrClass)
virtual UShort_tWriteProcessID(TProcessID* pid)
virtual voidTBufferFile::WriteShort(Short_t h)
virtual voidTBufferFile::WriteString(const char* s)
virtual voidTBufferFile::WriteTString(const TString& s)
virtual voidTBufferFile::WriteUChar(UChar_t c)
virtual voidTBufferFile::WriteUInt(UInt_t i)
virtual voidTBufferFile::WriteULong(ULong_t l)
virtual voidTBufferFile::WriteULong64(ULong64_t ll)
virtual voidTBufferFile::WriteUShort(UShort_t h)
virtual UInt_tTBufferFile::WriteVersion(const TClass* cl, Bool_t useBcnt = kFALSE)
virtual UInt_tTBufferFile::WriteVersionMemberWise(const TClass* cl, Bool_t useBcnt = kFALSE)
protected:
TMessage(void* buf, Int_t bufsize)
Int_tTBufferFile::CheckByteCount(UInt_t startpos, UInt_t bcnt, const TClass* clss, const char* classname)
voidTBufferFile::CheckCount(UInt_t offset)
UInt_tTBufferFile::CheckObject(UInt_t offset, const TClass* cl, Bool_t readClass = kFALSE)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
virtual Int_tTBuffer::Read(const char* name)
voidSetLength() const
virtual Int_tTBuffer::Write(const char* name, Int_t opt, Int_t bufs)
virtual Int_tTBuffer::Write(const char* name, Int_t opt, Int_t bufs) const
virtual voidTBufferFile::WriteObjectClass(const void* actualObjStart, const TClass* actualClass)
private:
TMessage(const TMessage&)
voidoperator=(const TMessage&)
Bool_tTestBitNumber(UInt_t bitnumber) const

Data Members

protected:
char*TBuffer::fBufCurCurrent position in buffer
char*TBuffer::fBufMaxEnd of buffer
Int_tTBuffer::fBufSizeSize of buffer
char*TBuffer::fBufferBuffer used to store objects
vector<TVirtualArray*>TBufferFile::fCacheStackStack of pointers to the cache where to temporarily store the value of 'missing' data members
TExMap*TBufferFile::fClassMapMap containing object,class pairs for reading
Int_tTBufferFile::fDisplacementValue to be added to the map offsets
TStreamerInfo*TBufferFile::fInfoPointer to TStreamerInfo object writing/reading the buffer
vector<TStreamerInfo*>TBufferFile::fInfoStackStack of pointers to the TStreamerInfos
TExMap*TBufferFile::fMapMap containing object,offset pairs for reading/writing
Int_tTBufferFile::fMapCountNumber of objects or classes in map
Int_tTBufferFile::fMapSizeDefault size of map
Bool_tTBuffer::fModeRead or write mode
TObject*TBuffer::fParentPointer to parent object owning this buffer
UShort_tTBufferFile::fPidOffsetOffset to be added to the pid index in this key/buffer.
ReAllocCharFun_tTBuffer::fReAllocFunc! Realloc function to be used when extending the buffer.
Int_tTBuffer::fVersionBuffer format version
static Int_tTBufferFile::fgMapSizeDefault map size for all TBuffer objects
private:
TBitsfBitsPIDsArray of bits to mark the TProcessIDs uids written to the message
char*fBufCompCompressed buffer
char*fBufCompCurCurrent position in compressed buffer
TClass*fClassIf message is kMESS_OBJECT pointer to object's class
char*fCompPosPosition of fBufCur when message was compressed
Int_tfCompressCompression level from 0 (not compressed) to 9 (max compression)
Bool_tfEvolutionTrue if support for schema evolution required
TList*fInfosArray of TStreamerInfo used in WriteObject
UInt_tfWhatMessage type
static Bool_tfgEvolutionTrue if global support for schema evolution required

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

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. Predifined 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 acknowledgement 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).
TMessage(void* buf, Int_t bufsize)
 Create a TMessage object for reading objects. The objects will be
 read from buf. Use the What() method to get the message type.
~TMessage()
 Clean up compression buffer.
void EnableSchemaEvolutionForAll(Bool_t enable = kTRUE)
 Static function enabling or disabling the automatic schema evolution.
 By default schema evolution support is off.
Bool_t UsesSchemaEvolutionForAll()
 Static function returning status of global schema evolution.
void ForceWriteInfo(TVirtualStreamerInfo* info, Bool_t force)
 Force writing the TStreamerInfo to the message.
void Forward()
 Change a buffer that was received into one that can be send, i.e.
 forward a just received message.
void TagStreamerInfo(TVirtualStreamerInfo* info)
 Remember that the StreamerInfo is being used in writing.
void Reset()
 Reset the message buffer so we can use (i.e. fill) it again.
void SetLength() const
 Set the message length at the beginning of the message buffer.
 This method is only called by TSocket::Send().
void SetWhat(UInt_t what)
 Using this method one can change the message type a-posteriory.
 In case you OR "what" with kMESS_ACK, the message will wait for
 an acknowledgement from the remote side. This makes the sending
 process synchronous.
void SetCompressionLevel(Int_t level = 1)
 Set the message compression level. Can be between 0 and 9 with 0
 being no compression and 9 maximum compression. In general the default
 level of 1 is the best compromise between achieved compression and
 cpu time. Compression will only happen when the message is > 256 bytes.
Int_t 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.
Int_t Uncompress()
 Uncompress the message. The message will only be uncompressed when
 kMESS_ZIP is set. Returns -1 in case of error, 0 otherwise.
void WriteObject(const TObject* obj)
 Write object to message buffer.
 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.
UShort_t WriteProcessID(TProcessID* pid)
 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
TMessage(const TMessage& )
 TMessage objects cannot be copied or assigned
void operator=(const TMessage& )
Bool_t TestBitNumber(UInt_t bitnumber) const
 used by friend TSocket
{ return fBitsPIDs.TestBitNumber(bitnumber); }
TClass * GetClass() const
{ return fClass;}
void Reset()
UInt_t What() const
{ return fWhat; }
void EnableSchemaEvolution(Bool_t enable = kTRUE)
{ fEvolution = enable; }
Bool_t UsesSchemaEvolution() const
{ return fEvolution; }
Int_t GetCompressionLevel() const
{ return fCompress; }
char * CompBuffer() const
{ return fBufComp; }
Int_t CompLength() const
{ return (Int_t)(fBufCompCur - fBufComp); }