ROOT 6.18/05 Reference Guide |
Class for serializing object to and from JavaScript Object Notation (JSON) format.
It creates such object representation, which can be directly used in JavaScript ROOT (JSROOT) for drawing.
TBufferJSON implements TBuffer interface, therefore most of ROOT and user classes can be converted into JSON. There are certain limitations for classes with custom streamers, which should be equipped specially for this purposes (see TCanvas::Streamer() as example).
To perform conversion into JSON, one should use TBufferJSON::ToJSON method:
To reconstruct object from the JSON string, one should do:
JSON does not include stored class version, therefore schema evolution (reading of older class versions) is not supported. JSON should not be used as persistent storage for object data - only for live applications.
All STL containers by default converted into JSON Array. Vector of integers:
Will produce JSON code "[1, 4, 7]".
There are special handling for map classes like map
and multimap
. They will create Array of pair objects with "first" and "second" as data members. Code:
Will generate json string:
In special cases map container can be converted into JSON object. For that key parameter must be std::string
and compact parameter should be 5. Like in example:
Will produce JSON output:
Another possibility to enforce such conversion - add "JSON_object" into comment line of correspondent data member like:
Definition at line 29 of file TBufferJSON.h.
Public Types | |
enum | { kNoCompress = 0 , kNoIndent = 1 , kNoNewLine = 2 , kNoSpaces = 3 , kMapAsObject = 5 , kZeroSuppression = 10 , kSameSuppression = 20 , kSkipTypeInfo = 100 } |
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 | |
TBufferJSON (TBuffer::EMode mode=TBuffer::kWrite) | |
Creates buffer object to serialize data into json. More... | |
virtual | ~TBufferJSON () |
destroy buffer More... | |
virtual void | ClassBegin (const TClass *, Version_t=-1) |
Should be called in the beginning of custom class streamer. More... | |
virtual void | ClassEnd (const TClass *) |
Should be called at the end of custom streamer See TBufferJSON::ClassBegin for more details. More... | |
virtual void | ClassMember (const char *name, const char *typeName=nullptr, Int_t arrsize1=-1, Int_t arrsize2=-1) |
Method indicates name and typename of class member, which should be now streamed in custom streamer Following combinations are supported: More... | |
virtual void | DecrementLevel (TVirtualStreamerInfo *) |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and decrease level in json structure. More... | |
virtual TVirtualStreamerInfo * | GetInfo () |
Return current streamer info element. More... | |
virtual void | IncrementLevel (TVirtualStreamerInfo *) |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and indent new level in json structure. More... | |
Bool_t | IsSkipClassInfo (const TClass *cl) const |
Returns true if class info will be skipped from JSON. More... | |
virtual Int_t | ReadArray (Bool_t *&b) |
Read array of Bool_t from buffer. More... | |
virtual Int_t | ReadArray (Char_t *&c) |
Read array of Char_t from buffer. More... | |
virtual Int_t | ReadArray (Double_t *&d) |
Read array of Double_t from buffer. More... | |
virtual Int_t | ReadArray (Float_t *&f) |
Read array of Float_t from buffer. More... | |
virtual Int_t | ReadArray (Int_t *&i) |
Read array of Int_t from buffer. More... | |
virtual Int_t | ReadArray (Long64_t *&l) |
Read array of Long64_t from buffer. More... | |
virtual Int_t | ReadArray (Long_t *&l) |
Read array of Long_t from buffer. More... | |
virtual Int_t | ReadArray (Short_t *&h) |
Read array of Short_t from buffer. More... | |
virtual Int_t | ReadArray (UChar_t *&c) |
Read array of UChar_t from buffer. More... | |
virtual Int_t | ReadArray (UInt_t *&i) |
Read array of UInt_t from buffer. More... | |
virtual Int_t | ReadArray (ULong64_t *&l) |
Read array of ULong64_t from buffer. More... | |
virtual Int_t | ReadArray (ULong_t *&l) |
Read array of ULong_t from buffer. More... | |
virtual Int_t | ReadArray (UShort_t *&h) |
Read array of UShort_t from buffer. More... | |
virtual void | ReadBaseClass (void *start, TStreamerBase *elem) |
Read data of base class. More... | |
virtual void | ReadBool (Bool_t &b) |
Reads Bool_t value from buffer. More... | |
virtual void | ReadChar (Char_t &c) |
Reads Char_t value from buffer. More... | |
virtual void | ReadCharP (Char_t *c) |
Reads array of characters from buffer. More... | |
virtual void | ReadCharStar (char *&s) |
Reads a char* string. More... | |
virtual TClass * | ReadClass (const TClass *cl=nullptr, UInt_t *objTag=nullptr) |
suppressed function of TBuffer More... | |
virtual void | ReadDouble (Double_t &d) |
Reads Double_t value from buffer. More... | |
virtual void | ReadFastArray (Bool_t *b, Int_t n) |
read array of Bool_t from buffer More... | |
virtual void | ReadFastArray (Char_t *c, Int_t n) |
read array of Char_t from buffer More... | |
virtual void | ReadFastArray (Double_t *d, Int_t n) |
read array of Double_t from buffer More... | |
virtual void | ReadFastArray (Float_t *f, Int_t n) |
read array of Float_t from buffer More... | |
virtual void | ReadFastArray (Int_t *i, Int_t n) |
read array of Int_t from buffer More... | |
virtual void | ReadFastArray (Long64_t *l, Int_t n) |
read array of Long64_t from buffer More... | |
virtual void | ReadFastArray (Long_t *l, Int_t n) |
read array of Long_t from buffer More... | |
virtual void | ReadFastArray (Short_t *h, Int_t n) |
read array of Short_t from buffer More... | |
virtual void | ReadFastArray (UChar_t *c, Int_t n) |
read array of UChar_t from buffer More... | |
virtual void | ReadFastArray (UInt_t *i, Int_t n) |
read array of UInt_t from buffer More... | |
virtual void | ReadFastArray (ULong64_t *l, Int_t n) |
read array of ULong64_t from buffer More... | |
virtual void | ReadFastArray (ULong_t *l, Int_t n) |
read array of ULong_t from buffer More... | |
virtual void | ReadFastArray (UShort_t *h, Int_t n) |
read array of UShort_t from buffer More... | |
virtual void | ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr) |
redefined here to avoid warning message from gcc More... | |
virtual void | ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr) |
Read an array of 'n' objects from the I/O buffer. More... | |
virtual void | ReadFastArrayString (Char_t *c, Int_t n) |
read array of Char_t from buffer More... | |
virtual void | ReadFloat (Float_t &f) |
Reads Float_t value from buffer. More... | |
virtual void | ReadInt (Int_t &i) |
Reads Int_t value from buffer. More... | |
virtual void | ReadLong (Long_t &l) |
Reads Long_t value from buffer. More... | |
virtual void | ReadLong64 (Long64_t &l) |
Reads Long64_t value from buffer. More... | |
virtual void * | ReadObjectAny (const TClass *clCast) |
Read object from buffer. Only used from TBuffer. More... | |
virtual void | ReadShort (Short_t &s) |
Reads Short_t value from buffer. More... | |
virtual Int_t | ReadStaticArray (Bool_t *b) |
Read array of Bool_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Char_t *c) |
Read array of Char_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Double_t *d) |
Read array of Double_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Float_t *f) |
Read array of Float_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Int_t *i) |
Read array of Int_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Long64_t *l) |
Read array of Long64_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Long_t *l) |
Read array of Long_t from buffer. More... | |
virtual Int_t | ReadStaticArray (Short_t *h) |
Read array of Short_t from buffer. More... | |
virtual Int_t | ReadStaticArray (UChar_t *c) |
Read array of UChar_t from buffer. More... | |
virtual Int_t | ReadStaticArray (UInt_t *i) |
Read array of UInt_t from buffer. More... | |
virtual Int_t | ReadStaticArray (ULong64_t *l) |
Read array of ULong64_t from buffer. More... | |
virtual Int_t | ReadStaticArray (ULong_t *l) |
Read array of ULong_t from buffer. More... | |
virtual Int_t | ReadStaticArray (UShort_t *h) |
Read array of UShort_t from buffer. More... | |
virtual void | ReadStdString (std::string &s) |
virtual void | ReadStdString (std::string *s) |
Reads a std::string. More... | |
virtual void | ReadStdString (std::string *s)=0 |
virtual void | ReadTString (TString &s) |
Reads a TString. More... | |
virtual void | ReadUChar (UChar_t &c) |
Reads UChar_t value from buffer. More... | |
virtual void | ReadUInt (UInt_t &i) |
Reads UInt_t value from buffer. More... | |
virtual void | ReadULong (ULong_t &l) |
Reads ULong_t value from buffer. More... | |
virtual void | ReadULong64 (ULong64_t &l) |
Reads ULong64_t value from buffer. More... | |
virtual void | ReadUShort (UShort_t &s) |
Reads UShort_t value from buffer. More... | |
virtual Version_t | ReadVersion (UInt_t *start=nullptr, UInt_t *bcnt=nullptr, const TClass *cl=nullptr) |
read version value from buffer More... | |
void | SetCompact (int level) |
Set level of space/newline/array compression Lower digit of compact parameter define formatting rules. More... | |
void | SetSkipClassInfo (const TClass *cl) |
Specify class which typename will not be stored in JSON Several classes can be configured To exclude typeinfo for all classes, call TBufferJSON::SetTypenameTag("") More... | |
virtual void | SetStreamerElementNumber (TStreamerElement *elem, Int_t comp_type) |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and add/verify next element of json structure This calls allows separate data, correspondent to one class member, from another. More... | |
void | SetTypenameTag (const char *tag="_typename") |
Configures _typename tag in JSON structures By default "_typename" field in JSON structures used to store class information One can specify alternative tag like "$typename" or "xy", but such JSON can not be correctly used in JSROOT If empty string is provided, class information will not be stored. More... | |
void | SetTypeversionTag (const char *tag=nullptr) |
Configures _typeversion tag in JSON One can specify name of the JSON tag like "_typeversion" or "$tv" which will be used to store class version Such tag can be used to correctly recover objects from JSON If empty string is provided (default), class version will not be stored. More... | |
virtual void | SkipObjectAny () |
Skip any kind of object from buffer. More... | |
virtual void | StreamObject (TObject *obj) |
virtual void | StreamObject (void *obj, const char *className, const TClass *onFileClass=nullptr) |
stream object to/from buffer More... | |
virtual void | StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=nullptr) |
stream object to/from buffer More... | |
virtual void | StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=nullptr) |
stream object to/from buffer More... | |
virtual void | WriteArray (const Bool_t *b, Int_t n) |
Write array of Bool_t to buffer. More... | |
virtual void | WriteArray (const Char_t *c, Int_t n) |
Write array of Char_t to buffer. More... | |
virtual void | WriteArray (const Double_t *d, Int_t n) |
Write array of Double_t to buffer. More... | |
virtual void | WriteArray (const Float_t *f, Int_t n) |
Write array of Float_t to buffer. More... | |
virtual void | WriteArray (const Int_t *i, Int_t n) |
Write array of Int_ to buffer. More... | |
virtual void | WriteArray (const Long64_t *l, Int_t n) |
Write array of Long64_t to buffer. More... | |
virtual void | WriteArray (const Long_t *l, Int_t n) |
Write array of Long_t to buffer. More... | |
virtual void | WriteArray (const Short_t *h, Int_t n) |
Write array of Short_t to buffer. More... | |
virtual void | WriteArray (const UChar_t *c, Int_t n) |
Write array of UChar_t to buffer. More... | |
virtual void | WriteArray (const UInt_t *i, Int_t n) |
Write array of UInt_t to buffer. More... | |
virtual void | WriteArray (const ULong64_t *l, Int_t n) |
Write array of ULong64_t to buffer. More... | |
virtual void | WriteArray (const ULong_t *l, Int_t n) |
Write array of ULong_t to buffer. More... | |
virtual void | WriteArray (const UShort_t *h, Int_t n) |
Write array of UShort_t to buffer. More... | |
virtual void | WriteBool (Bool_t b) |
Writes Bool_t value to buffer. More... | |
virtual void | WriteChar (Char_t c) |
Writes Char_t value to buffer. More... | |
virtual void | WriteCharP (const Char_t *c) |
Writes array of characters to buffer. More... | |
virtual void | WriteCharStar (char *s) |
Writes a char*. More... | |
virtual void | WriteClass (const TClass *cl) |
suppressed function of TBuffer More... | |
virtual void | WriteDouble (Double_t d) |
Writes Double_t value to buffer. More... | |
virtual void | WriteFastArray (const Bool_t *b, Int_t n) |
Write array of Bool_t to buffer. More... | |
virtual void | WriteFastArray (const Char_t *c, Int_t n) |
Write array of Char_t to buffer. More... | |
virtual void | WriteFastArray (const Double_t *d, Int_t n) |
Write array of Double_t to buffer. More... | |
virtual void | WriteFastArray (const Float_t *f, Int_t n) |
Write array of Float_t to buffer. More... | |
virtual void | WriteFastArray (const Int_t *i, Int_t n) |
Write array of Int_t to buffer. More... | |
virtual void | WriteFastArray (const Long64_t *l, Int_t n) |
Write array of Long64_t to buffer. More... | |
virtual void | WriteFastArray (const Long_t *l, Int_t n) |
Write array of Long_t to buffer. More... | |
virtual void | WriteFastArray (const Short_t *h, Int_t n) |
Write array of Short_t to buffer. More... | |
virtual void | WriteFastArray (const UChar_t *c, Int_t n) |
Write array of UChar_t to buffer. More... | |
virtual void | WriteFastArray (const UInt_t *i, Int_t n) |
Write array of UInt_t to buffer. More... | |
virtual void | WriteFastArray (const ULong64_t *l, Int_t n) |
Write array of ULong64_t to buffer. More... | |
virtual void | WriteFastArray (const ULong_t *l, Int_t n) |
Write array of ULong_t to buffer. More... | |
virtual void | WriteFastArray (const UShort_t *h, Int_t n) |
Write array of UShort_t to buffer. More... | |
virtual Int_t | WriteFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr) |
Recall TBuffer function to avoid gcc warning message. More... | |
virtual void | WriteFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr) |
Recall TBuffer function to avoid gcc warning message. More... | |
virtual void | WriteFastArrayString (const Char_t *c, Int_t n) |
Write array of Char_t to buffer. More... | |
virtual void | WriteFloat (Float_t f) |
Writes Float_t value to buffer. More... | |
virtual void | WriteInt (Int_t i) |
Writes Int_t value to buffer. More... | |
virtual void | WriteLong (Long_t l) |
Writes Long_t value to buffer. More... | |
virtual void | WriteLong64 (Long64_t l) |
Writes Long64_t value to buffer. More... | |
virtual void | WriteShort (Short_t s) |
Writes Short_t value to buffer. More... | |
virtual void | WriteStdString (const std::string *s) |
Writes a std::string. More... | |
virtual void | WriteStdString (const std::string *s)=0 |
virtual void | WriteStdString (std::string &s) |
virtual void | WriteTString (const TString &s) |
Writes a TString. More... | |
virtual void | WriteUChar (UChar_t c) |
Writes UChar_t value to buffer. More... | |
virtual void | WriteUInt (UInt_t i) |
Writes UInt_t value to buffer. More... | |
virtual void | WriteULong (ULong_t l) |
Writes ULong_t value to buffer. More... | |
virtual void | WriteULong64 (ULong64_t l) |
Writes ULong64_t value to buffer. More... | |
virtual void | WriteUShort (UShort_t s) |
Writes UShort_t value to buffer. More... | |
virtual UInt_t | WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE) |
Ignored in TBufferJSON. More... | |
Public Member Functions inherited from TBufferText | |
virtual | ~TBufferText () |
destructor More... | |
virtual Int_t | ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object) |
Read one collection of objects from the buffer using the StreamerInfoLoopAction. More... | |
virtual Int_t | ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection) |
Read one collection of objects from the buffer using the StreamerInfoLoopAction. More... | |
virtual Int_t | ApplySequenceVecPtr (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection) |
Read one collection of objects from the buffer using the StreamerInfoLoopAction. More... | |
virtual Int_t | CheckByteCount (UInt_t, UInt_t, const char *) |
virtual Int_t | CheckByteCount (UInt_t, UInt_t, const TClass *) |
virtual Int_t | ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=nullptr) |
Read array of Double32_t from buffer. More... | |
virtual Int_t | ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=nullptr) |
Read array of Float16_t from buffer. More... | |
virtual void | ReadBaseClass (void *start, TStreamerBase *elem) |
Read data of base class. More... | |
virtual Int_t | ReadBuf (void *, Int_t) |
virtual Int_t | ReadClassBuffer (const TClass *, void *, const TClass *=nullptr) |
Deserialize information from a buffer into an object. More... | |
virtual Int_t | ReadClassBuffer (const TClass *, void *, Int_t, UInt_t, UInt_t, const TClass *=nullptr) |
Deserialize information from a buffer into an object. More... | |
virtual Int_t | ReadClassEmulated (const TClass *, void *, const TClass *=nullptr) |
virtual void | ReadDouble32 (Double_t *d, TStreamerElement *ele=nullptr) |
read a Double32_t from the buffer More... | |
virtual void | ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=nullptr) |
read array of Double32_t from buffer More... | |
virtual void | ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=nullptr) |
read array of Float16_t from buffer More... | |
virtual void | ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue) |
read array of Double32_t from buffer More... | |
virtual void | ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue) |
read array of Float16_t from buffer More... | |
virtual void | ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits) |
read array of Double32_t from buffer More... | |
virtual void | ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits) |
read array of Float16_t from buffer More... | |
virtual void | ReadFloat16 (Float_t *f, TStreamerElement *ele=nullptr) |
read a Float16_t from the buffer More... | |
virtual TObject * | ReadObject (const TClass *) |
virtual Int_t | ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=nullptr) |
Read array of Double32_t from buffer. More... | |
virtual Int_t | ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=nullptr) |
Read array of Float16_t from buffer. More... | |
virtual char * | ReadString (char *, Int_t) |
virtual Version_t | ReadVersionForMemberWise (const TClass *=nullptr) |
virtual Version_t | ReadVersionNoCheckSum (UInt_t *, UInt_t *) |
virtual void | ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue) |
Read a Double32_t from the buffer when the factor and minimun value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More... | |
virtual void | ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue) |
Read a Double32_t from the buffer when the factor and minimun value have been specified see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More... | |
virtual void | ReadWithNbits (Double_t *ptr, Int_t nbits) |
Read a Double32_t from the buffer when the number of bits is specified (explicitly or not) see comments about Double32_t encoding at TBufferFile::WriteDouble32(). More... | |
virtual void | ReadWithNbits (Float_t *ptr, Int_t nbits) |
Read a Float16_t from the buffer when the number of bits is specified (explicitly or not) see comments about Float16_t encoding at TBufferFile::WriteFloat16(). More... | |
virtual void | SetByteCount (UInt_t, Bool_t=kFALSE) |
virtual void | SkipVersion (const TClass *cl=nullptr) |
Skip class version from I/O buffer. More... | |
virtual void | StreamObject (TObject *obj) |
virtual void | StreamObject (TObject *obj)=0 |
virtual void | StreamObject (void *obj, const char *className, const TClass *onFileClass=0)=0 |
virtual void | StreamObject (void *obj, const char *className, const TClass *onFileClass=nullptr) |
stream object to/from buffer More... | |
virtual void | StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=0)=0 |
virtual void | StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=nullptr) |
stream object to/from buffer More... | |
virtual void | StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=0)=0 |
virtual void | WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr) |
Write array of Double32_t to buffer. More... | |
virtual void | WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=nullptr) |
Write array of Float16_t to buffer. More... | |
virtual void | WriteBaseClass (void *start, TStreamerBase *elem) |
Write data of base class. More... | |
virtual void | WriteBuf (const void *, Int_t) |
virtual Int_t | WriteClassBuffer (const TClass *cl, void *pointer) |
Function called by the Streamer functions to serialize object at p to buffer b. More... | |
virtual void | WriteDouble32 (Double_t *d, TStreamerElement *ele=nullptr) |
write a Double32_t to the buffer More... | |
virtual void | WriteFastArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr) |
Write array of Double32_t to buffer. More... | |
virtual void | WriteFastArrayFloat16 (const Float_t *d, Int_t n, TStreamerElement *ele=nullptr) |
Write array of Float16_t to buffer. More... | |
virtual void | WriteFloat16 (Float_t *f, TStreamerElement *ele=nullptr) |
write a Float16_t to the buffer More... | |
virtual void | WriteString (const char *) |
virtual UInt_t | WriteVersionMemberWise (const TClass *, Bool_t=kFALSE) |
Public Member Functions inherited from TBufferIO | |
virtual | ~TBufferIO () |
destructor More... | |
virtual Bool_t | CheckObject (const TObject *obj) |
Check if the specified object is already in the buffer. More... | |
virtual Bool_t | CheckObject (const void *obj, const TClass *ptrClass) |
Check if the specified object of the specified class is already in the buffer. More... | |
virtual void | ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force) |
force writing the TStreamerInfo to the file More... | |
virtual void | ForceWriteInfoClones (TClonesArray *a) |
Make sure TStreamerInfo is not optimized, otherwise it will not be possible to support schema evolution in read mode. More... | |
virtual Int_t | GetBufferDisplacement () const |
virtual TProcessID * | GetLastProcessID (TRefTable *reftable) const |
Return the last TProcessID in the file. More... | |
virtual Int_t | GetMapCount () const |
virtual void | GetMappedObject (UInt_t tag, void *&ptr, TClass *&ClassPtr) const |
Retrieve the object stored in the buffer's object map at 'tag' Set ptr and ClassPtr respectively to the address of the object and a pointer to its TClass. More... | |
virtual UShort_t | GetPidOffset () const |
virtual UInt_t | GetTRefExecId () |
Return the exec id stored in the current TStreamerInfo element. More... | |
virtual Int_t | GetVersionOwner () const |
Return the version number of the owner file. More... | |
virtual void | InitMap () |
Create the fMap container and initialize them with the null object. More... | |
virtual void | MapObject (const TObject *obj, UInt_t offset=1) |
Add object to the fMap container. More... | |
virtual void | MapObject (const void *obj, const TClass *cl, UInt_t offset=1) |
Add object to the fMap container. More... | |
virtual Int_t | ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers) |
Interface to TStreamerInfo::ReadBufferClones. More... | |
virtual TProcessID * | ReadProcessID (UShort_t pidf) |
The TProcessID with number pidf is read from file. More... | |
virtual void | Reset () |
Reset buffer object. Resets map and buffer offset. More... | |
virtual void | ResetMap () |
Delete existing fMap and reset map counter. More... | |
virtual void | SetBufferDisplacement () |
virtual void | SetBufferDisplacement (Int_t skipped) |
virtual void | SetPidOffset (UShort_t offset) |
This offset is used when a key (or basket) is transfered from one file to the other. More... | |
virtual void | SetReadParam (Int_t mapsize) |
Set the initial size of the map used to store object and class references during reading. More... | |
virtual void | SetWriteParam (Int_t mapsize) |
Set the initial size of the hashtable used to store object and class references during writing. More... | |
virtual void | TagStreamerInfo (TVirtualStreamerInfo *info) |
Mark the classindex of the current file as using this TStreamerInfo. More... | |
virtual Int_t | WriteClones (TClonesArray *a, Int_t nobjects) |
Interface to TStreamerInfo::WriteBufferClones. More... | |
template<class T > | |
Int_t | WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE) |
virtual void | WriteObject (const TObject *obj, Bool_t cacheReuse)=0 |
virtual void | WriteObject (const TObject *obj, Bool_t cacheReuse=kTRUE) |
Write object to I/O buffer. More... | |
virtual Int_t | WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE) |
Write object to I/O buffer. More... | |
virtual UShort_t | WriteProcessID (TProcessID *pid) |
Check if the ProcessID pid is already in the file. More... | |
Public Member Functions inherited from TBuffer | |
TBuffer (EMode mode) | |
Create an I/O buffer object. More... | |
TBuffer (EMode mode, Int_t bufsiz) | |
Create an I/O buffer object. More... | |
TBuffer (EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0) | |
Create an I/O buffer object. More... | |
virtual | ~TBuffer () |
Delete an I/O buffer object. More... | |
virtual Int_t | ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object)=0 |
virtual Int_t | ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection)=0 |
virtual Int_t | ApplySequenceVecPtr (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection)=0 |
void | AutoExpand (Int_t size_needed) |
Automatically calculate a new size and expand the buffer to fit at least size_needed. More... | |
char * | Buffer () const |
Int_t | BufferSize () const |
Bool_t | ByteSwapBuffer (Long64_t n, EDataType type) |
Byte-swap N primitive-elements in the buffer. More... | |
virtual Int_t | CheckByteCount (UInt_t startpos, UInt_t bcnt, const char *classname)=0 |
virtual Int_t | CheckByteCount (UInt_t startpos, UInt_t bcnt, const TClass *clss)=0 |
virtual Bool_t | CheckObject (const TObject *obj)=0 |
virtual Bool_t | CheckObject (const void *obj, const TClass *ptrClass)=0 |
virtual void | ClassBegin (const TClass *, Version_t=-1)=0 |
virtual void | ClassEnd (const TClass *)=0 |
virtual void | ClassMember (const char *, const char *=0, Int_t=-1, Int_t=-1)=0 |
virtual void | DecrementLevel (TVirtualStreamerInfo *)=0 |
void | DetachBuffer () |
void | Expand (Int_t newsize, Bool_t copy=kTRUE) |
Expand (or shrink) the I/O buffer to newsize bytes. More... | |
virtual void | ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force)=0 |
virtual void | ForceWriteInfoClones (TClonesArray *a)=0 |
virtual Int_t | GetBufferDisplacement () const =0 |
Int_t | GetBufferVersion () const |
char * | GetCurrent () const |
virtual TVirtualStreamerInfo * | GetInfo ()=0 |
virtual TProcessID * | GetLastProcessID (TRefTable *reftable) const =0 |
virtual Int_t | GetMapCount () const =0 |
virtual void | GetMappedObject (UInt_t tag, void *&ptr, TClass *&ClassPtr) const =0 |
TObject * | GetParent () const |
Return pointer to parent of this buffer. More... | |
virtual UShort_t | GetPidOffset () const =0 |
ReAllocCharFun_t | GetReAllocFunc () const |
Return the reallocation method currently used. More... | |
virtual UInt_t | GetTRefExecId ()=0 |
virtual Int_t | GetVersionOwner () const =0 |
virtual void | IncrementLevel (TVirtualStreamerInfo *info)=0 |
virtual void | InitMap ()=0 |
Bool_t | IsReading () const |
Bool_t | IsWriting () const |
Int_t | Length () const |
virtual void | MapObject (const TObject *obj, UInt_t offset=1)=0 |
virtual void | MapObject (const void *obj, const TClass *cl, UInt_t offset=1)=0 |
virtual TVirtualArray * | PeekDataCache () const |
Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. More... | |
virtual TVirtualArray * | PopDataCache () |
Pop and Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. More... | |
virtual void | PushDataCache (TVirtualArray *) |
Push a new data cache area onto the list of area to be used for temporarily store 'missing' data members. More... | |
virtual Int_t | ReadArray (Bool_t *&b)=0 |
virtual Int_t | ReadArray (Char_t *&c)=0 |
virtual Int_t | ReadArray (Double_t *&d)=0 |
virtual Int_t | ReadArray (Float_t *&f)=0 |
virtual Int_t | ReadArray (Int_t *&i)=0 |
virtual Int_t | ReadArray (Long64_t *&l)=0 |
virtual Int_t | ReadArray (Long_t *&l)=0 |
virtual Int_t | ReadArray (Short_t *&h)=0 |
virtual Int_t | ReadArray (UChar_t *&c)=0 |
virtual Int_t | ReadArray (UInt_t *&i)=0 |
virtual Int_t | ReadArray (ULong64_t *&l)=0 |
virtual Int_t | ReadArray (ULong_t *&l)=0 |
virtual Int_t | ReadArray (UShort_t *&h)=0 |
virtual Int_t | ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=0)=0 |
virtual Int_t | ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=0)=0 |
virtual void | ReadBool (Bool_t &b)=0 |
virtual Int_t | ReadBuf (void *buf, Int_t max)=0 |
virtual void | ReadChar (Char_t &c)=0 |
virtual void | ReadCharP (Char_t *c)=0 |
virtual void | ReadCharStar (char *&s)=0 |
virtual TClass * | ReadClass (const TClass *cl=0, UInt_t *objTag=0)=0 |
virtual Int_t | ReadClassBuffer (const TClass *cl, void *pointer, const TClass *onfile_class=0)=0 |
virtual Int_t | ReadClassBuffer (const TClass *cl, void *pointer, Int_t version, UInt_t start, UInt_t count, const TClass *onfile_class=0)=0 |
virtual Int_t | ReadClassEmulated (const TClass *cl, void *object, const TClass *onfile_class=0)=0 |
virtual Int_t | ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers)=0 |
virtual void | ReadDouble (Double_t &d)=0 |
virtual void | ReadDouble32 (Double_t *d, TStreamerElement *ele=0)=0 |
virtual void | ReadFastArray (Bool_t *b, Int_t n)=0 |
virtual void | ReadFastArray (Char_t *c, Int_t n)=0 |
virtual void | ReadFastArray (Double_t *d, Int_t n)=0 |
virtual void | ReadFastArray (Float_t *f, Int_t n)=0 |
virtual void | ReadFastArray (Int_t *i, Int_t n)=0 |
virtual void | ReadFastArray (Long64_t *l, Int_t n)=0 |
virtual void | ReadFastArray (Long_t *l, Int_t n)=0 |
virtual void | ReadFastArray (Short_t *h, Int_t n)=0 |
virtual void | ReadFastArray (UChar_t *c, Int_t n)=0 |
virtual void | ReadFastArray (UInt_t *i, Int_t n)=0 |
virtual void | ReadFastArray (ULong64_t *l, Int_t n)=0 |
virtual void | ReadFastArray (ULong_t *l, Int_t n)=0 |
virtual void | ReadFastArray (UShort_t *h, Int_t n)=0 |
virtual void | ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=0, const TClass *onFileClass=0)=0 |
virtual void | ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=0, const TClass *onFileClass=0)=0 |
virtual void | ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=0)=0 |
virtual void | ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=0)=0 |
virtual void | ReadFastArrayString (Char_t *c, Int_t n)=0 |
virtual void | ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue)=0 |
virtual void | ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue)=0 |
virtual void | ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits)=0 |
virtual void | ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits)=0 |
virtual void | ReadFloat (Float_t &f)=0 |
virtual void | ReadFloat16 (Float_t *f, TStreamerElement *ele=0)=0 |
virtual void | ReadInt (Int_t &i)=0 |
virtual void | ReadLong (Long_t &l)=0 |
virtual void | ReadLong64 (Long64_t &l)=0 |
virtual TObject * | ReadObject (const TClass *cl)=0 |
virtual void * | ReadObjectAny (const TClass *cast)=0 |
virtual TProcessID * | ReadProcessID (UShort_t pidf)=0 |
Return the current Process-ID. More... | |
virtual void | ReadShort (Short_t &s)=0 |
virtual Int_t | ReadStaticArray (Bool_t *b)=0 |
virtual Int_t | ReadStaticArray (Char_t *c)=0 |
virtual Int_t | ReadStaticArray (Double_t *d)=0 |
virtual Int_t | ReadStaticArray (Float_t *f)=0 |
virtual Int_t | ReadStaticArray (Int_t *i)=0 |
virtual Int_t | ReadStaticArray (Long64_t *l)=0 |
virtual Int_t | ReadStaticArray (Long_t *l)=0 |
virtual Int_t | ReadStaticArray (Short_t *h)=0 |
virtual Int_t | ReadStaticArray (UChar_t *c)=0 |
virtual Int_t | ReadStaticArray (UInt_t *i)=0 |
virtual Int_t | ReadStaticArray (ULong64_t *l)=0 |
virtual Int_t | ReadStaticArray (ULong_t *l)=0 |
virtual Int_t | ReadStaticArray (UShort_t *h)=0 |
virtual Int_t | ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=0)=0 |
virtual Int_t | ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=0)=0 |
virtual void | ReadStdString (std::string &s) |
virtual void | ReadStdString (std::string *s)=0 |
virtual char * | ReadString (char *s, Int_t max)=0 |
virtual void | ReadTString (TString &s)=0 |
virtual void | ReadUChar (UChar_t &c)=0 |
virtual void | ReadUInt (UInt_t &i)=0 |
virtual void | ReadULong (ULong_t &l)=0 |
virtual void | ReadULong64 (ULong64_t &l)=0 |
virtual void | ReadUShort (UShort_t &s)=0 |
virtual Version_t | ReadVersion (UInt_t *start=0, UInt_t *bcnt=0, const TClass *cl=0)=0 |
virtual Version_t | ReadVersionForMemberWise (const TClass *cl=0)=0 |
virtual Version_t | ReadVersionNoCheckSum (UInt_t *start=0, UInt_t *bcnt=0)=0 |
virtual void | ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue)=0 |
virtual void | ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue)=0 |
virtual void | ReadWithNbits (Double_t *ptr, Int_t nbits)=0 |
virtual void | ReadWithNbits (Float_t *ptr, Int_t nbits)=0 |
virtual void | Reset ()=0 |
virtual void | ResetMap ()=0 |
void | SetBuffer (void *buf, UInt_t bufsiz=0, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=0) |
Sets a new buffer in an existing TBuffer object. More... | |
virtual void | SetBufferDisplacement ()=0 |
virtual void | SetBufferDisplacement (Int_t skipped)=0 |
void | SetBufferOffset (Int_t offset=0) |
virtual void | SetByteCount (UInt_t cntpos, Bool_t packInVersion=kFALSE)=0 |
void | SetParent (TObject *parent) |
Set parent owning this buffer. More... | |
virtual void | SetPidOffset (UShort_t offset)=0 |
void | SetReadMode () |
Set buffer in read mode. More... | |
virtual void | SetReadParam (Int_t mapsize)=0 |
void | SetReAllocFunc (ReAllocCharFun_t reallocfunc=0) |
Set which memory reallocation method to use. More... | |
virtual void | SetStreamerElementNumber (TStreamerElement *elem, Int_t comp_type)=0 |
void | SetWriteMode () |
Set buffer in write mode. More... | |
virtual void | SetWriteParam (Int_t mapsize)=0 |
virtual void | SkipObjectAny ()=0 |
virtual void | SkipVersion (const TClass *cl=0)=0 |
virtual void | StreamObject (TObject *obj)=0 |
virtual void | StreamObject (void *obj, const char *className, const TClass *onFileClass=0)=0 |
virtual void | StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=0)=0 |
virtual void | StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=0)=0 |
virtual void | TagStreamerInfo (TVirtualStreamerInfo *info)=0 |
virtual void | WriteArray (const Bool_t *b, Int_t n)=0 |
virtual void | WriteArray (const Char_t *c, Int_t n)=0 |
virtual void | WriteArray (const Double_t *d, Int_t n)=0 |
virtual void | WriteArray (const Float_t *f, Int_t n)=0 |
virtual void | WriteArray (const Int_t *i, Int_t n)=0 |
virtual void | WriteArray (const Long64_t *l, Int_t n)=0 |
virtual void | WriteArray (const Long_t *l, Int_t n)=0 |
virtual void | WriteArray (const Short_t *h, Int_t n)=0 |
virtual void | WriteArray (const UChar_t *c, Int_t n)=0 |
virtual void | WriteArray (const UInt_t *i, Int_t n)=0 |
virtual void | WriteArray (const ULong64_t *l, Int_t n)=0 |
virtual void | WriteArray (const ULong_t *l, Int_t n)=0 |
virtual void | WriteArray (const UShort_t *h, Int_t n)=0 |
virtual void | WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=0)=0 |
virtual void | WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=0)=0 |
virtual void | WriteBool (Bool_t b)=0 |
virtual void | WriteBuf (const void *buf, Int_t max)=0 |
virtual void | WriteChar (Char_t c)=0 |
virtual void | WriteCharP (const Char_t *c)=0 |
virtual void | WriteCharStar (char *s)=0 |
virtual void | WriteClass (const TClass *cl)=0 |
virtual Int_t | WriteClassBuffer (const TClass *cl, void *pointer)=0 |
virtual Int_t | WriteClones (TClonesArray *a, Int_t nobjects)=0 |
virtual void | WriteDouble (Double_t d)=0 |
virtual void | WriteDouble32 (Double_t *d, TStreamerElement *ele=0)=0 |
virtual void | WriteFastArray (const Bool_t *b, Int_t n)=0 |
virtual void | WriteFastArray (const Char_t *c, Int_t n)=0 |
virtual void | WriteFastArray (const Double_t *d, Int_t n)=0 |
virtual void | WriteFastArray (const Float_t *f, Int_t n)=0 |
virtual void | WriteFastArray (const Int_t *i, Int_t n)=0 |
virtual void | WriteFastArray (const Long64_t *l, Int_t n)=0 |
virtual void | WriteFastArray (const Long_t *l, Int_t n)=0 |
virtual void | WriteFastArray (const Short_t *h, Int_t n)=0 |
virtual void | WriteFastArray (const UChar_t *c, Int_t n)=0 |
virtual void | WriteFastArray (const UInt_t *i, Int_t n)=0 |
virtual void | WriteFastArray (const ULong64_t *l, Int_t n)=0 |
virtual void | WriteFastArray (const ULong_t *l, Int_t n)=0 |
virtual void | WriteFastArray (const UShort_t *h, Int_t n)=0 |
virtual Int_t | WriteFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=0)=0 |
virtual void | WriteFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=0)=0 |
virtual void | WriteFastArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=0)=0 |
virtual void | WriteFastArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=0)=0 |
virtual void | WriteFastArrayString (const Char_t *c, Int_t n)=0 |
virtual void | WriteFloat (Float_t f)=0 |
virtual void | WriteFloat16 (Float_t *f, TStreamerElement *ele=0)=0 |
virtual void | WriteInt (Int_t i)=0 |
virtual void | WriteLong (Long_t l)=0 |
virtual void | WriteLong64 (Long64_t l)=0 |
template<class T > | |
Int_t | WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE) |
virtual void | WriteObject (const TObject *obj, Bool_t cacheReuse)=0 |
virtual Int_t | WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE)=0 |
virtual UShort_t | WriteProcessID (TProcessID *pid)=0 |
Always return 0 (current processID). More... | |
virtual void | WriteShort (Short_t s)=0 |
virtual void | WriteStdString (const std::string *s)=0 |
virtual void | WriteStdString (std::string &s) |
virtual void | WriteString (const char *s)=0 |
virtual void | WriteTString (const TString &s)=0 |
virtual void | WriteUChar (UChar_t c)=0 |
virtual void | WriteUInt (UInt_t i)=0 |
virtual void | WriteULong (ULong_t l)=0 |
virtual void | WriteULong64 (ULong64_t l)=0 |
virtual void | WriteUShort (UShort_t s)=0 |
virtual UInt_t | WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE)=0 |
virtual UInt_t | WriteVersionMemberWise (const TClass *cl, Bool_t useBcnt=kFALSE)=0 |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. More... | |
TObject (const TObject &object) | |
TObject copy ctor. More... | |
virtual | ~TObject () |
TObject destructor. More... | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. More... | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. More... | |
virtual void | Browse (TBrowser *b) |
Browse object. May be overridden for another default action. More... | |
ULong_t | CheckedHash () |
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More... | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. More... | |
virtual void | Clear (Option_t *="") |
virtual TObject * | Clone (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 TObject * | DrawClone (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 TObject * | FindObject (const char *name) const |
Must be redefined in derived classes. More... | |
virtual TObject * | FindObject (const TObject *obj) const |
Must be redefined in derived classes. More... | |
virtual Option_t * | GetDrawOption () 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_t * | GetOption () 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... | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. More... | |
virtual void | Paint (Option_t *option="") |
This method must be overridden if a class wants to paint itself. More... | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. More... | |
virtual void | Print (Option_t *option="") const |
This method must be overridden when a class wants to print itself. More... | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. More... | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove this object from a list. More... | |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. More... | |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
Save a primitive as a C++ statement(s) on output stream "out". More... | |
void | SetBit (UInt_t f) |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. More... | |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. More... | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. More... | |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. More... | |
R__ALWAYS_INLINE Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More... | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. More... | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. More... | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. More... | |
Static Public Member Functions | |
static TObject * | ConvertFromJSON (const char *str) |
Read TObject-based class from JSON, produced by ConvertToJSON() method. More... | |
static void * | ConvertFromJSONAny (const char *str, TClass **cl=nullptr) |
Read object from JSON, produced by ConvertToJSON() method. More... | |
static TString | ConvertToJSON (const TObject *obj, Int_t compact=0, const char *member_name=nullptr) |
Converts object, inherited from TObject class, to JSON string Lower digit of compact parameter define formatting rules. More... | |
static TString | ConvertToJSON (const void *obj, const TClass *cl, Int_t compact=0, const char *member_name=nullptr) |
Converts any type of object to JSON string One should provide pointer on object and its class name Lower digit of compact parameter define formatting rules. More... | |
static TString | ConvertToJSON (const void *obj, TDataMember *member, Int_t compact=0, Int_t arraylen=-1) |
Converts selected data member into json Parameter ptr specifies address in memory, where data member is located compact parameter defines compactness of produced JSON (from 0 to 3) arraylen (when specified) is array length for this data member, //[fN] case. More... | |
static Int_t | ExportToFile (const char *filename, const TObject *obj, const char *option=nullptr) |
Convert object into JSON and store in text file Returns size of the produce file Used in TObject::SaveAs() More... | |
static Int_t | ExportToFile (const char *filename, const void *obj, const TClass *cl, const char *option=nullptr) |
Convert object into JSON and store in text file Returns size of the produce file. More... | |
template<class T > | |
static std::unique_ptr< T > | FromJSON (const std::string &json) |
template<class T > | |
static Bool_t | FromJSON (T *&obj, const char *json) |
template<class T > | |
static TString | ToJSON (const T *obj, Int_t compact=0, const char *member_name=nullptr) |
Static Public Member Functions inherited from TBufferText | |
static void | CompactFloatString (char *buf, unsigned len) |
method compress float string, excluding exp and/or move float point More... | |
static const char * | ConvertDouble (Double_t v, char *buf, unsigned len, Bool_t not_optimize=kFALSE) |
convert float to string with configured format More... | |
static const char * | ConvertFloat (Float_t v, char *buf, unsigned len, Bool_t not_optimize=kFALSE) |
convert float to string with configured format More... | |
static const char * | GetDoubleFormat () |
return current printf format for double members, default "%.14e" More... | |
static const char * | GetFloatFormat () |
return current printf format for float members, default "%e" More... | |
static void | SetDoubleFormat (const char *fmt="%.14e") |
set printf format for double members, default "%.14e" use it after SetFloatFormat, which also overwrites format for doubles More... | |
static void | SetFloatFormat (const char *fmt="%e") |
set printf format for float/double members, default "%e" to change format only for doubles, use SetDoubleFormat More... | |
Static Public Member Functions inherited from TBufferIO | |
static Int_t | GetGlobalReadParam () |
Get default read map size. More... | |
static Int_t | GetGlobalWriteParam () |
Get default write map size. More... | |
static void | SetGlobalReadParam (Int_t mapsize) |
Set the initial size of the map used to store object and class references during reading. More... | |
static void | SetGlobalWriteParam (Int_t mapsize) |
Set the initial size of the map used to store object and class references during reading. More... | |
Static Public Member Functions inherited from TBuffer | |
static TClass * | GetClass (const char *className) |
Forward to TROOT::GetClass(). More... | |
static TClass * | GetClass (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 | |
void | AppendOutput (const char *line0, const char *line1=nullptr) |
Append two string to the output JSON, normally separate by line break. More... | |
void | JsonDisablePostprocessing () |
disable post-processing of the code More... | |
void | JsonPushValue () |
If value exists, push in the current stack for post-processing. More... | |
template<typename T > | |
R__ALWAYS_INLINE Int_t | JsonReadArray (T *value) |
Read static array from JSON - not used. More... | |
template<typename T > | |
R__ALWAYS_INLINE void | JsonReadBasic (T &value) |
Template function to read basic value from JSON. More... | |
void | JsonReadCollection (TCollection *obj, const TClass *objClass) |
read content of ROOT collection More... | |
template<typename T > | |
R__ALWAYS_INLINE void | JsonReadFastArray (T *arr, Int_t arrsize, bool asstring=false) |
Template method to read array from the JSON. More... | |
void * | JsonReadObject (void *obj, const TClass *objClass=nullptr, TClass **readClass=nullptr) |
Read object from current JSON node. More... | |
void | JsonReadTObjectMembers (TObject *obj, void *node=nullptr) |
Int_t | JsonSpecialClass (const TClass *cl) const |
return non-zero value when class has special handling in JSON it is TCollection (-130), TArray (100), TString (110), std::string (120) and STL containers (1..6) More... | |
void | JsonStartElement (const TStreamerElement *elem, const TClass *base_class) |
Start new class member in JSON structures. More... | |
TJSONStackObj * | JsonStartObjectWrite (const TClass *obj_class, TStreamerInfo *info=nullptr) |
Start object element with typeinfo. More... | |
template<typename T > | |
R__ALWAYS_INLINE void | JsonWriteArrayCompress (const T *vname, Int_t arrsize, const char *typname) |
void | JsonWriteBasic (Bool_t value) |
converts Bool_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Char_t value) |
converts Char_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Double_t value) |
converts Double_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Float_t value) |
converts Float_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Int_t value) |
converts Int_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Long64_t value) |
converts Long64_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Long_t value) |
converts Long_t to string and add to json value buffer More... | |
void | JsonWriteBasic (Short_t value) |
converts Short_t to string and add to json value buffer More... | |
void | JsonWriteBasic (UChar_t value) |
converts UChar_t to string and add to json value buffer More... | |
void | JsonWriteBasic (UInt_t value) |
converts UInt_t to string and add to json value buffer More... | |
void | JsonWriteBasic (ULong64_t value) |
converts ULong64_t to string and add to json value buffer More... | |
void | JsonWriteBasic (ULong_t value) |
converts ULong_t to string and add to json value buffer More... | |
void | JsonWriteBasic (UShort_t value) |
converts UShort_t to string and add to json value buffer More... | |
void | JsonWriteCollection (TCollection *obj, const TClass *objClass) |
store content of ROOT collection More... | |
void | JsonWriteConstChar (const char *value, Int_t len=-1, const char *=nullptr) |
writes string value, processing all kind of special characters More... | |
template<typename T > | |
R__ALWAYS_INLINE void | JsonWriteFastArray (const T *arr, Int_t arrsize, const char *typname, void(TBufferJSON::*method)(const T *, Int_t, const char *)) |
Template method to write array of arbitrary dimensions Different methods can be used for store last array dimension - either JsonWriteArrayCompress<T>() or JsonWriteConstChar() More... | |
TString | JsonWriteMember (const void *ptr, TDataMember *member, TClass *memberClass, Int_t arraylen) |
Convert single data member to JSON structures Returns string with converted member. More... | |
void | JsonWriteObject (const void *obj, const TClass *objClass, Bool_t check_map=kTRUE) |
Write object to buffer If object was written before, only pointer will be stored If check_map==kFALSE, object will be stored in any case and pointer will not be registered in the map. More... | |
void | PerformPostProcessing (TJSONStackObj *stack, const TClass *obj_cl=nullptr) |
Function is converts TObject and TString structures to more compact representation. More... | |
TJSONStackObj * | PopStack () |
remove one level from stack More... | |
TJSONStackObj * | PushStack (Int_t inclevel=0, void *readnode=nullptr) |
add new level to the structures stack More... | |
TJSONStackObj * | Stack () |
void | WorkWithClass (TStreamerInfo *info, const TClass *cl=nullptr) |
Prepares buffer to stream data of specified class. More... | |
void | WorkWithElement (TStreamerElement *elem, Int_t) |
This is call-back from streamer which indicates that class member will be streamed Name of element used in JSON. More... | |
virtual void | WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse) |
Write object to buffer. Only used from TBuffer. More... | |
Protected Member Functions inherited from TBufferText | |
TBufferText () | |
Default constructor. More... | |
TBufferText (TBuffer::EMode mode, TObject *parent=nullptr) | |
Normal constructor. More... | |
Protected Member Functions inherited from TBufferIO | |
TBufferIO ()=default | |
TBufferIO (TBuffer::EMode mode) | |
constructor More... | |
TBufferIO (TBuffer::EMode mode, Int_t bufsiz) | |
constructor More... | |
TBufferIO (TBuffer::EMode mode, Int_t bufsiz, void *buf, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=nullptr) | |
constructor More... | |
virtual void | CheckCount (UInt_t) |
Long64_t | GetObjectTag (const void *obj) |
Returns tag for specified object from objects map (if exists) Returns 0 if object not included into objects map. More... | |
virtual void | WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse)=0 |
Protected Member Functions inherited from TBuffer | |
TBuffer () | |
TBuffer (const TBuffer &) | |
void | operator= (const TBuffer &) |
Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. More... | |
Int_t | Write (const char *name, Int_t opt, Int_t bufs) |
Write this object to the current directory. More... | |
Int_t | Write (const char *name, Int_t opt, Int_t bufs) const |
Write this object to the current directory. More... | |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). More... | |
void | MakeZombie () |
Static Protected Member Functions | |
static void * | ConvertFromJSONChecked (const char *str, const TClass *expectedClass) |
Read objects from JSON, one can reuse existing object. More... | |
Static Protected Member Functions inherited from TBufferIO | |
static R__ALWAYS_INLINE ULong_t | Void_Hash (const void *ptr) |
Return hash value for provided object. More... | |
Protected Attributes | |
Int_t | fArrayCompact {0} |
! 0 - no array compression, 1 - exclude leading/trailing zeros, 2 - check value repetition More... | |
TString | fArraySepar |
! depending from compression level, ", " or "," More... | |
Int_t | fCompact {0} |
! 0 - no any compression, 1 - no spaces in the begin, 2 - no new lines, 3 - no spaces at all More... | |
unsigned | fJsonrCnt {0} |
! counter for all objects, used for referencing More... | |
Bool_t | fMapAsObject {kFALSE} |
! when true, std::map will be converted into JSON object More... | |
TString | fNumericLocale |
! stored value of setlocale(LC_NUMERIC), which should be recovered at the end More... | |
TString | fOutBuffer |
! main output buffer for json code More... | |
TString * | fOutput {nullptr} |
! current output buffer for json code More... | |
TString | fSemicolon |
! depending from compression level, " : " or ":" More... | |
TObjArray * | fSkipClasses {nullptr} |
! list of classes, which class info is not stored More... | |
std::deque< TJSONStackObj * > | fStack |
! hierarchy of currently streamed element More... | |
TString | fTypeNameTag |
! JSON member used for storing class name, when empty - no class name will be stored More... | |
TString | fTypeVersionTag |
! JSON member used to store class version, default empty More... | |
TString | fValue |
! buffer for current value More... | |
Protected Attributes inherited from TBufferIO | |
TExMap * | fClassMap {nullptr} |
Map containing object,class pairs for reading. More... | |
Int_t | fDisplacement {0} |
Value to be added to the map offsets. More... | |
TExMap * | fMap {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 |
TObject * | fParent |
ReAllocCharFun_t | fReAllocFunc |
Int_t | fVersion |
Additional Inherited Members | |
Protected Types inherited from TBufferIO | |
enum | { kNullTag = 0 } |
Protected Types inherited from TBuffer | |
typedef std::vector< TVirtualArray * > | CacheList_t |
Static Protected Attributes inherited from TBufferText | |
static const char * | fgDoubleFmt = "%.14e" |
! printf argument for doubles, either "%f" or "%e" or "%10f" and so on More... | |
static const char * | fgFloatFmt = "%e" |
! printf argument for floats, either "%f" or "%e" or "%10f" and so on More... | |
Static Protected Attributes inherited from TBufferIO | |
static Int_t | fgMapSize = kMapSize |
Default map size for all TBuffer objects. More... | |
#include <TBufferJSON.h>
anonymous enum |
Definition at line 33 of file TBufferJSON.h.
TBufferJSON::TBufferJSON | ( | TBuffer::EMode | mode = TBuffer::kWrite | ) |
Creates buffer object to serialize data into json.
Definition at line 475 of file TBufferJSON.cxx.
|
virtual |
destroy buffer
Definition at line 496 of file TBufferJSON.cxx.
|
protected |
Append two string to the output JSON, normally separate by line break.
Definition at line 1127 of file TBufferJSON.cxx.
Should be called in the beginning of custom class streamer.
Informs buffer data about class which will be streamed now.
ClassBegin(), ClassEnd() and ClassMember() should be used in custom class streamers to specify which kind of data are now streamed. Such information is used to correctly convert class data to JSON. Without that functions calls classes with custom streamers cannot be used with TBufferJSON
Implements TBuffer.
Definition at line 2128 of file TBufferJSON.cxx.
Should be called at the end of custom streamer See TBufferJSON::ClassBegin for more details.
Implements TBuffer.
Definition at line 2137 of file TBufferJSON.cxx.
|
virtual |
Method indicates name and typename of class member, which should be now streamed in custom streamer Following combinations are supported:
arrsize1 and arrsize2 arguments (when specified) indicate first and second dimension of array. Can be used for array of basic types. See ClassBegin() method for more details.
Implements TBuffer.
Definition at line 2179 of file TBufferJSON.cxx.
|
static |
Read TObject-based class from JSON, produced by ConvertToJSON() method.
If object does not inherit from TObject class, return 0.
Definition at line 893 of file TBufferJSON.cxx.
Read object from JSON, produced by ConvertToJSON() method.
In class pointer (if specified) read class is returned One must specify expected object class, if it is TArray or STL container
Definition at line 916 of file TBufferJSON.cxx.
|
staticprotected |
Read objects from JSON, one can reuse existing object.
Definition at line 946 of file TBufferJSON.cxx.
|
static |
Converts object, inherited from TObject class, to JSON string Lower digit of compact parameter define formatting rules.
Second digit of compact parameter defines algorithm for arrays compression
Maximal compression achieved when compact parameter equal to 23 When member_name specified, converts only this data member
Definition at line 524 of file TBufferJSON.cxx.
|
static |
Converts any type of object to JSON string One should provide pointer on object and its class name Lower digit of compact parameter define formatting rules.
Definition at line 643 of file TBufferJSON.cxx.
|
static |
Converts selected data member into json Parameter ptr specifies address in memory, where data member is located compact parameter defines compactness of produced JSON (from 0 to 3) arraylen (when specified) is array length for this data member, //[fN] case.
Definition at line 706 of file TBufferJSON.cxx.
|
virtual |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and decrease level in json structure.
Implements TBuffer.
Definition at line 1995 of file TBufferJSON.cxx.
|
static |
Convert object into JSON and store in text file Returns size of the produce file Used in TObject::SaveAs()
Definition at line 733 of file TBufferJSON.cxx.
|
static |
Convert object into JSON and store in text file Returns size of the produce file.
Definition at line 813 of file TBufferJSON.cxx.
|
inlinestatic |
Definition at line 85 of file TBufferJSON.h.
|
inlinestatic |
Definition at line 76 of file TBufferJSON.h.
|
virtual |
Return current streamer info element.
Implements TBuffer.
Definition at line 2026 of file TBufferJSON.cxx.
|
virtual |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and indent new level in json structure.
This call indicates, that TStreamerInfo functions starts streaming object data of correspondent class
Implements TBuffer.
Definition at line 1948 of file TBufferJSON.cxx.
Returns true if class info will be skipped from JSON.
Definition at line 620 of file TBufferJSON.cxx.
|
protected |
disable post-processing of the code
Definition at line 1241 of file TBufferJSON.cxx.
|
protected |
If value exists, push in the current stack for post-processing.
Definition at line 2467 of file TBufferJSON.cxx.
|
protected |
Read static array from JSON - not used.
Definition at line 2581 of file TBufferJSON.cxx.
|
protected |
Template function to read basic value from JSON.
Definition at line 3433 of file TBufferJSON.cxx.
|
protected |
read content of ROOT collection
Definition at line 1633 of file TBufferJSON.cxx.
|
protected |
Template method to read array from the JSON.
Definition at line 2695 of file TBufferJSON.cxx.
|
protected |
Read object from current JSON node.
Definition at line 1731 of file TBufferJSON.cxx.
Definition at line 1925 of file TBufferJSON.cxx.
return non-zero value when class has special handling in JSON it is TCollection (-130), TArray (100), TString (110), std::string (120) and STL containers (1..6)
Definition at line 1250 of file TBufferJSON.cxx.
|
protected |
Start new class member in JSON structures.
Definition at line 1183 of file TBufferJSON.cxx.
|
protected |
Start object element with typeinfo.
Definition at line 1149 of file TBufferJSON.cxx.
|
protected |
Definition at line 2957 of file TBufferJSON.cxx.
converts Bool_t to string and add to json value buffer
Definition at line 3846 of file TBufferJSON.cxx.
converts Char_t to string and add to json value buffer
Definition at line 3766 of file TBufferJSON.cxx.
converts Double_t to string and add to json value buffer
Definition at line 3830 of file TBufferJSON.cxx.
converts Float_t to string and add to json value buffer
Definition at line 3814 of file TBufferJSON.cxx.
converts Int_t to string and add to json value buffer
Definition at line 3786 of file TBufferJSON.cxx.
converts Long64_t to string and add to json value buffer
Definition at line 3806 of file TBufferJSON.cxx.
converts Long_t to string and add to json value buffer
Definition at line 3796 of file TBufferJSON.cxx.
converts Short_t to string and add to json value buffer
Definition at line 3776 of file TBufferJSON.cxx.
converts UChar_t to string and add to json value buffer
Definition at line 3854 of file TBufferJSON.cxx.
converts UInt_t to string and add to json value buffer
Definition at line 3874 of file TBufferJSON.cxx.
converts ULong64_t to string and add to json value buffer
Definition at line 3894 of file TBufferJSON.cxx.
converts ULong_t to string and add to json value buffer
Definition at line 3884 of file TBufferJSON.cxx.
converts UShort_t to string and add to json value buffer
Definition at line 3864 of file TBufferJSON.cxx.
|
protected |
store content of ROOT collection
Definition at line 1559 of file TBufferJSON.cxx.
|
protected |
writes string value, processing all kind of special characters
Definition at line 3902 of file TBufferJSON.cxx.
|
protected |
Template method to write array of arbitrary dimensions Different methods can be used for store last array dimension - either JsonWriteArrayCompress<T>() or JsonWriteConstChar()
Definition at line 3160 of file TBufferJSON.cxx.
|
protected |
Convert single data member to JSON structures Returns string with converted member.
Definition at line 976 of file TBufferJSON.cxx.
|
protected |
Write object to buffer If object was written before, only pointer will be stored If check_map==kFALSE, object will be stored in any case and pointer will not be registered in the map.
Definition at line 1288 of file TBufferJSON.cxx.
|
protected |
Function is converts TObject and TString structures to more compact representation.
Definition at line 2275 of file TBufferJSON.cxx.
|
protected |
remove one level from stack
Definition at line 1114 of file TBufferJSON.cxx.
add new level to the structures stack
Definition at line 1096 of file TBufferJSON.cxx.
Read array of Bool_t from buffer.
Implements TBuffer.
Definition at line 2476 of file TBufferJSON.cxx.
Read array of Char_t from buffer.
Implements TBuffer.
Definition at line 2484 of file TBufferJSON.cxx.
Read array of Double_t from buffer.
Implements TBuffer.
Definition at line 2572 of file TBufferJSON.cxx.
Read array of Float_t from buffer.
Implements TBuffer.
Definition at line 2564 of file TBufferJSON.cxx.
Read array of Int_t from buffer.
Implements TBuffer.
Definition at line 2516 of file TBufferJSON.cxx.
Read array of Long64_t from buffer.
Implements TBuffer.
Definition at line 2548 of file TBufferJSON.cxx.
Read array of Long_t from buffer.
Implements TBuffer.
Definition at line 2532 of file TBufferJSON.cxx.
Read array of Short_t from buffer.
Implements TBuffer.
Definition at line 2500 of file TBufferJSON.cxx.
Read array of UChar_t from buffer.
Implements TBuffer.
Definition at line 2492 of file TBufferJSON.cxx.
Read array of UInt_t from buffer.
Implements TBuffer.
Definition at line 2524 of file TBufferJSON.cxx.
Read array of ULong64_t from buffer.
Implements TBuffer.
Definition at line 2556 of file TBufferJSON.cxx.
Read array of ULong_t from buffer.
Implements TBuffer.
Definition at line 2540 of file TBufferJSON.cxx.
Read array of UShort_t from buffer.
Implements TBuffer.
Definition at line 2508 of file TBufferJSON.cxx.
|
virtual |
Read data of base class.
Reimplemented from TBufferText.
Definition at line 3943 of file TBufferJSON.cxx.
Reads Bool_t value from buffer.
Implements TBuffer.
Definition at line 3441 of file TBufferJSON.cxx.
Reads Char_t value from buffer.
Implements TBuffer.
Definition at line 3449 of file TBufferJSON.cxx.
Reads array of characters from buffer.
Implements TBuffer.
Definition at line 3559 of file TBufferJSON.cxx.
|
virtual |
Reads Double_t value from buffer.
Implements TBuffer.
Definition at line 3547 of file TBufferJSON.cxx.
read array of Bool_t from buffer
Implements TBuffer.
Definition at line 2756 of file TBufferJSON.cxx.
read array of Char_t from buffer
Implements TBuffer.
Definition at line 2764 of file TBufferJSON.cxx.
read array of Double_t from buffer
Implements TBuffer.
Definition at line 2860 of file TBufferJSON.cxx.
read array of Float_t from buffer
Implements TBuffer.
Definition at line 2852 of file TBufferJSON.cxx.
read array of Int_t from buffer
Implements TBuffer.
Definition at line 2804 of file TBufferJSON.cxx.
read array of Long64_t from buffer
Implements TBuffer.
Definition at line 2836 of file TBufferJSON.cxx.
read array of Long_t from buffer
Implements TBuffer.
Definition at line 2820 of file TBufferJSON.cxx.
read array of Short_t from buffer
Implements TBuffer.
Definition at line 2788 of file TBufferJSON.cxx.
read array of UChar_t from buffer
Implements TBuffer.
Definition at line 2780 of file TBufferJSON.cxx.
read array of UInt_t from buffer
Implements TBuffer.
Definition at line 2812 of file TBufferJSON.cxx.
read array of ULong64_t from buffer
Implements TBuffer.
Definition at line 2844 of file TBufferJSON.cxx.
read array of ULong_t from buffer
Implements TBuffer.
Definition at line 2828 of file TBufferJSON.cxx.
read array of UShort_t from buffer
Implements TBuffer.
Definition at line 2796 of file TBufferJSON.cxx.
|
virtual |
redefined here to avoid warning message from gcc
Implements TBuffer.
Definition at line 2911 of file TBufferJSON.cxx.
|
virtual |
Read an array of 'n' objects from the I/O buffer.
Stores the objects read starting at the address 'start'. The objects in the array are assume to be of class 'cl'. Copied code from TBufferFile
Implements TBuffer.
Definition at line 2871 of file TBufferJSON.cxx.
read array of Char_t from buffer
Implements TBuffer.
Definition at line 2772 of file TBufferJSON.cxx.
Reads Float_t value from buffer.
Implements TBuffer.
Definition at line 3535 of file TBufferJSON.cxx.
Reads Long_t value from buffer.
Implements TBuffer.
Definition at line 3503 of file TBufferJSON.cxx.
Reads Long64_t value from buffer.
Implements TBuffer.
Definition at line 3519 of file TBufferJSON.cxx.
Read object from buffer. Only used from TBuffer.
Implements TBuffer.
Definition at line 2440 of file TBufferJSON.cxx.
Reads Short_t value from buffer.
Implements TBuffer.
Definition at line 3468 of file TBufferJSON.cxx.
Read array of Bool_t from buffer.
Implements TBuffer.
Definition at line 2590 of file TBufferJSON.cxx.
Read array of Char_t from buffer.
Implements TBuffer.
Definition at line 2598 of file TBufferJSON.cxx.
Read array of Double_t from buffer.
Implements TBuffer.
Definition at line 2686 of file TBufferJSON.cxx.
Read array of Float_t from buffer.
Implements TBuffer.
Definition at line 2678 of file TBufferJSON.cxx.
Read array of Int_t from buffer.
Implements TBuffer.
Definition at line 2630 of file TBufferJSON.cxx.
Read array of Long64_t from buffer.
Implements TBuffer.
Definition at line 2662 of file TBufferJSON.cxx.
Read array of Long_t from buffer.
Implements TBuffer.
Definition at line 2646 of file TBufferJSON.cxx.
Read array of Short_t from buffer.
Implements TBuffer.
Definition at line 2614 of file TBufferJSON.cxx.
Read array of UChar_t from buffer.
Implements TBuffer.
Definition at line 2606 of file TBufferJSON.cxx.
Read array of UInt_t from buffer.
Implements TBuffer.
Definition at line 2638 of file TBufferJSON.cxx.
Read array of ULong64_t from buffer.
Implements TBuffer.
Definition at line 2670 of file TBufferJSON.cxx.
Read array of ULong_t from buffer.
Implements TBuffer.
Definition at line 2654 of file TBufferJSON.cxx.
Read array of UShort_t from buffer.
Implements TBuffer.
Definition at line 2622 of file TBufferJSON.cxx.
|
inlinevirtual |
|
virtual |
Reads UChar_t value from buffer.
Implements TBuffer.
Definition at line 3460 of file TBufferJSON.cxx.
Reads UInt_t value from buffer.
Implements TBuffer.
Definition at line 3495 of file TBufferJSON.cxx.
Reads ULong_t value from buffer.
Implements TBuffer.
Definition at line 3511 of file TBufferJSON.cxx.
Reads ULong64_t value from buffer.
Implements TBuffer.
Definition at line 3527 of file TBufferJSON.cxx.
Reads UShort_t value from buffer.
Implements TBuffer.
Definition at line 3476 of file TBufferJSON.cxx.
void TBufferJSON::SetCompact | ( | int | level | ) |
Set level of space/newline/array compression Lower digit of compact parameter define formatting rules.
Second digit of compact parameter defines algorithm for arrays compression
Third digit defines usage of typeinfo
Definition at line 556 of file TBufferJSON.cxx.
Specify class which typename will not be stored in JSON Several classes can be configured To exclude typeinfo for all classes, call TBufferJSON::SetTypenameTag("")
Definition at line 607 of file TBufferJSON.cxx.
|
virtual |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and add/verify next element of json structure This calls allows separate data, correspondent to one class member, from another.
Implements TBuffer.
Definition at line 2036 of file TBufferJSON.cxx.
void TBufferJSON::SetTypenameTag | ( | const char * | tag = "_typename" | ) |
Configures _typename tag in JSON structures By default "_typename" field in JSON structures used to store class information One can specify alternative tag like "$typename" or "xy", but such JSON can not be correctly used in JSROOT If empty string is provided, class information will not be stored.
Definition at line 580 of file TBufferJSON.cxx.
void TBufferJSON::SetTypeversionTag | ( | const char * | tag = nullptr | ) |
Configures _typeversion tag in JSON One can specify name of the JSON tag like "_typeversion" or "$tv" which will be used to store class version Such tag can be used to correctly recover objects from JSON If empty string is provided (default), class version will not be stored.
Definition at line 594 of file TBufferJSON.cxx.
|
virtual |
Skip any kind of object from buffer.
Implements TBuffer.
Definition at line 2451 of file TBufferJSON.cxx.
|
inlineprotected |
Definition at line 252 of file TBufferJSON.h.
Reimplemented from TBufferText.
Definition at line 34 of file TBufferText.cxx.
|
virtual |
stream object to/from buffer
Reimplemented from TBufferText.
Definition at line 33 of file TBufferText.cxx.
|
virtual |
stream object to/from buffer
Reimplemented from TBufferText.
Definition at line 32 of file TBufferText.cxx.
|
inlinestatic |
Definition at line 70 of file TBufferJSON.h.
|
protected |
Prepares buffer to stream data of specified class.
Definition at line 1959 of file TBufferJSON.cxx.
|
protected |
This is call-back from streamer which indicates that class member will be streamed Name of element used in JSON.
Definition at line 2049 of file TBufferJSON.cxx.
Write array of Bool_t to buffer.
Implements TBuffer.
Definition at line 3040 of file TBufferJSON.cxx.
Write array of Char_t to buffer.
Implements TBuffer.
Definition at line 3049 of file TBufferJSON.cxx.
Write array of Double_t to buffer.
Implements TBuffer.
Definition at line 3148 of file TBufferJSON.cxx.
Write array of Float_t to buffer.
Implements TBuffer.
Definition at line 3139 of file TBufferJSON.cxx.
Write array of Long64_t to buffer.
Implements TBuffer.
Definition at line 3121 of file TBufferJSON.cxx.
Write array of Long_t to buffer.
Implements TBuffer.
Definition at line 3103 of file TBufferJSON.cxx.
Write array of Short_t to buffer.
Implements TBuffer.
Definition at line 3067 of file TBufferJSON.cxx.
Write array of UChar_t to buffer.
Implements TBuffer.
Definition at line 3058 of file TBufferJSON.cxx.
Write array of UInt_t to buffer.
Implements TBuffer.
Definition at line 3094 of file TBufferJSON.cxx.
Write array of ULong64_t to buffer.
Implements TBuffer.
Definition at line 3130 of file TBufferJSON.cxx.
Write array of ULong_t to buffer.
Implements TBuffer.
Definition at line 3112 of file TBufferJSON.cxx.
Write array of UShort_t to buffer.
Implements TBuffer.
Definition at line 3076 of file TBufferJSON.cxx.
Writes array of characters to buffer.
Implements TBuffer.
Definition at line 3723 of file TBufferJSON.cxx.
|
virtual |
Writes Double_t value to buffer.
Implements TBuffer.
Definition at line 3714 of file TBufferJSON.cxx.
Write array of Bool_t to buffer.
Implements TBuffer.
Definition at line 3197 of file TBufferJSON.cxx.
Write array of Char_t to buffer.
Implements TBuffer.
Definition at line 3205 of file TBufferJSON.cxx.
Write array of Double_t to buffer.
Implements TBuffer.
Definition at line 3301 of file TBufferJSON.cxx.
Write array of Float_t to buffer.
Implements TBuffer.
Definition at line 3293 of file TBufferJSON.cxx.
Write array of Int_t to buffer.
Implements TBuffer.
Definition at line 3245 of file TBufferJSON.cxx.
Write array of Long64_t to buffer.
Implements TBuffer.
Definition at line 3277 of file TBufferJSON.cxx.
Write array of Long_t to buffer.
Implements TBuffer.
Definition at line 3261 of file TBufferJSON.cxx.
Write array of Short_t to buffer.
Implements TBuffer.
Definition at line 3229 of file TBufferJSON.cxx.
Write array of UChar_t to buffer.
Implements TBuffer.
Definition at line 3221 of file TBufferJSON.cxx.
Write array of UInt_t to buffer.
Implements TBuffer.
Definition at line 3253 of file TBufferJSON.cxx.
Write array of ULong64_t to buffer.
Implements TBuffer.
Definition at line 3285 of file TBufferJSON.cxx.
Write array of ULong_t to buffer.
Implements TBuffer.
Definition at line 3269 of file TBufferJSON.cxx.
Write array of UShort_t to buffer.
Implements TBuffer.
Definition at line 3237 of file TBufferJSON.cxx.
|
virtual |
Recall TBuffer function to avoid gcc warning message.
Implements TBuffer.
Definition at line 3362 of file TBufferJSON.cxx.
|
virtual |
Recall TBuffer function to avoid gcc warning message.
Implements TBuffer.
Definition at line 3309 of file TBufferJSON.cxx.
Write array of Char_t to buffer.
Implements TBuffer.
Definition at line 3213 of file TBufferJSON.cxx.
Writes Float_t value to buffer.
Implements TBuffer.
Definition at line 3705 of file TBufferJSON.cxx.
Writes Long64_t value to buffer.
Implements TBuffer.
Definition at line 3687 of file TBufferJSON.cxx.
|
protectedvirtual |
Write object to buffer. Only used from TBuffer.
Implements TBufferIO.
Definition at line 2456 of file TBufferJSON.cxx.
Writes Short_t value to buffer.
Implements TBuffer.
Definition at line 3633 of file TBufferJSON.cxx.
|
virtual |
|
inlinevirtual |
Writes UChar_t value to buffer.
Implements TBuffer.
Definition at line 3624 of file TBufferJSON.cxx.
Writes ULong_t value to buffer.
Implements TBuffer.
Definition at line 3678 of file TBufferJSON.cxx.
Writes ULong64_t value to buffer.
Implements TBuffer.
Definition at line 3696 of file TBufferJSON.cxx.
Writes UShort_t value to buffer.
Implements TBuffer.
Definition at line 3642 of file TBufferJSON.cxx.
|
protected |
! 0 - no array compression, 1 - exclude leading/trailing zeros, 2 - check value repetition
Definition at line 320 of file TBufferJSON.h.
|
protected |
! depending from compression level, ", " or ","
Definition at line 321 of file TBufferJSON.h.
|
protected |
! 0 - no any compression, 1 - no spaces in the begin, 2 - no new lines, 3 - no spaces at all
Definition at line 317 of file TBufferJSON.h.
|
protected |
! counter for all objects, used for referencing
Definition at line 315 of file TBufferJSON.h.
! when true, std::map will be converted into JSON object
Definition at line 318 of file TBufferJSON.h.
|
protected |
! stored value of setlocale(LC_NUMERIC), which should be recovered at the end
Definition at line 322 of file TBufferJSON.h.
|
protected |
! main output buffer for json code
Definition at line 312 of file TBufferJSON.h.
|
protected |
! current output buffer for json code
Definition at line 313 of file TBufferJSON.h.
|
protected |
! depending from compression level, " : " or ":"
Definition at line 319 of file TBufferJSON.h.
|
protected |
! list of classes, which class info is not stored
Definition at line 325 of file TBufferJSON.h.
|
protected |
! hierarchy of currently streamed element
Definition at line 316 of file TBufferJSON.h.
|
protected |
! JSON member used for storing class name, when empty - no class name will be stored
Definition at line 323 of file TBufferJSON.h.
|
protected |
! JSON member used to store class version, default empty
Definition at line 324 of file TBufferJSON.h.
|
protected |
! buffer for current value
Definition at line 314 of file TBufferJSON.h.