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]".
IMPORTANT: Before using any of map classes in I/O, one should create dictionary for it with the command like:
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 30 of file TBufferJSON.h.
Public Types | |
| enum | { kSingleKey = (1ULL << (0)) , kOverwrite = (1ULL << (1)) , kWriteDelete = (1ULL << (2)) } |
| enum | { kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 , kBitMask = 0x00ffffff } |
| enum | { kInitialSize = 1024 , kMinimalSize = 128 } |
| enum | { kMapSize = 503 } |
| enum | { kNoCompress = 0 , kNoIndent = 1 , kNoNewLine = 2 , kNoSpaces = 3 , kMapAsObject = 5 , kZeroSuppression = 10 , kSameSuppression = 20 , kBase64 = 30 , kSkipTypeInfo = 100 , kStoreInfNaN = 1000 } |
| enum | EDeprecatedStatusBits { kObjInCanvas = (1ULL << (3)) } |
| enum | EMode { kRead = 0 , kWrite = 1 } |
| enum | EStatusBits { kNotDecompressed = (1ULL << (15)) , kTextBasedStreaming = (1ULL << (18)) , kUser1 = (1ULL << (21)) , kUser2 = (1ULL << (22)) , kUser3 = (1ULL << (23)) } |
Public Member Functions | |
| TBufferJSON (TBuffer::EMode mode=TBuffer::kWrite) | |
| Creates buffer object to serialize data into json. | |
| ~TBufferJSON () override | |
| destroy buffer | |
| void | AbstractMethod (const char *method) const |
| Call this function within a function that you don't want to define as purely virtual, in order not to force all users deriving from that class to implement that maybe (on their side) unused function; but at the same time, emit a run-time warning if they try to call it, telling that it is not implemented in the derived class: action must thus be taken on the user side to override it. | |
| virtual void | AppendPad (Option_t *option="") |
| Append graphics object to current pad. | |
| Int_t | ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *object) final |
| Read one collection of objects from the buffer using the StreamerInfoLoopAction. | |
| Int_t | ApplySequence (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection) final |
| Read one collection of objects from the buffer using the StreamerInfoLoopAction. | |
| Int_t | ApplySequenceVecPtr (const TStreamerInfoActions::TActionSequence &sequence, void *start_collection, void *end_collection) final |
| Read one collection of objects from the buffer using the StreamerInfoLoopAction. | |
| void | AutoExpand (Int_t size_needed) |
| Automatically calculate a new size and expand the buffer to fit at least size_needed. | |
| virtual void | Browse (TBrowser *b) |
| Browse object. May be overridden for another default action. | |
| char * | Buffer () const |
| Int_t | BufferSize () const |
| Bool_t | ByteSwapBuffer (Long64_t n, EDataType type) |
| Byte-swap N primitive-elements in the buffer. | |
| Int_t | CheckByteCount (UInt_t, UInt_t, const char *) final |
| Int_t | CheckByteCount (UInt_t, UInt_t, const TClass *) final |
| 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. | |
| Bool_t | CheckObject (const TObject *obj) override |
| Check if the specified object is already in the buffer. | |
| Bool_t | CheckObject (const void *obj, const TClass *ptrClass) override |
| Check if the specified object of the specified class is already in the buffer. | |
| void | ClassBegin (const TClass *, Version_t=-1) final |
| Should be called in the beginning of custom class streamer. | |
| void | ClassEnd (const TClass *) final |
| Should be called at the end of custom streamer See TBufferJSON::ClassBegin for more details. | |
| void | ClassMember (const char *name, const char *typeName=nullptr, Int_t arrsize1=-1, Int_t arrsize2=-1) final |
| Method indicates name and typename of class member, which should be now streamed in custom streamer Following combinations are supported: | |
| virtual const char * | ClassName () const |
| Returns name of class to which the object belongs. | |
| virtual void | Clear (Option_t *="") |
| virtual TObject * | Clone (const char *newname="") const |
| Make a clone of an object using the Streamer facility. | |
| virtual Int_t | Compare (const TObject *obj) const |
| Compare abstract method. | |
| virtual void | Copy (TObject &object) const |
| Copy this to obj. | |
| void | DecrementLevel (TVirtualStreamerInfo *) final |
| Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and decrease level in json structure. | |
| virtual void | Delete (Option_t *option="") |
| Delete this object. | |
| void | DetachBuffer () |
| virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
| Computes distance from point (px,py) to the object. | |
| virtual void | Draw (Option_t *option="") |
| Default Draw method for all objects. | |
| virtual void | DrawClass () const |
| Draw class inheritance tree of the class to which this object belongs. | |
| virtual TObject * | DrawClone (Option_t *option="") const |
| Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1). | |
| virtual void | Dump () const |
| Dump contents of object on stdout. | |
| virtual void | Error (const char *method, const char *msgfmt,...) const |
| Issue error message. | |
| virtual void | Execute (const char *method, const char *params, Int_t *error=nullptr) |
| Execute method on this object with the given parameter string, e.g. | |
| virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr) |
| Execute method on this object with parameters stored in the TObjArray. | |
| virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
| Execute action corresponding to an event at (px,py). | |
| void | Expand (Int_t newsize, Bool_t copy=kTRUE) |
| Expand (or shrink) the I/O buffer to newsize bytes. | |
| virtual void | Fatal (const char *method, const char *msgfmt,...) const |
| Issue fatal error message. | |
| virtual TObject * | FindObject (const char *name) const |
| Must be redefined in derived classes. | |
| virtual TObject * | FindObject (const TObject *obj) const |
| Must be redefined in derived classes. | |
| void | ForceWriteInfo (TVirtualStreamerInfo *info, Bool_t force) override |
| force writing the TStreamerInfo to the file | |
| void | ForceWriteInfoClones (TClonesArray *a) override |
| Make sure TStreamerInfo is not optimized, otherwise it will not be possible to support schema evolution in read mode. | |
| Int_t | GetBufferDisplacement () const override |
| Int_t | GetBufferVersion () const |
| char * | GetCurrent () const |
| virtual Option_t * | GetDrawOption () const |
| Get option used by the graphics system to draw this object. | |
| virtual const char * | GetIconName () const |
| Returns mime type name of object. | |
| TVirtualStreamerInfo * | GetInfo () final |
| Return current streamer info element. | |
| TProcessID * | GetLastProcessID (TRefTable *reftable) const override |
| Return the last TProcessID in the file. | |
| Int_t | GetMapCount () const override |
| void | GetMappedObject (UInt_t tag, void *&ptr, TClass *&ClassPtr) const override |
| Retrieve the object stored in the buffer's object map at 'tag' Set ptr and ClassPtr respectively to the address of the object and a pointer to its TClass. | |
| virtual const char * | GetName () const |
| Returns name of object. | |
| virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
| Returns string containing info about the object at position (px,py). | |
| virtual Option_t * | GetOption () const |
| TObject * | GetParent () const |
| Return pointer to parent of this buffer. | |
| UShort_t | GetPidOffset () const override |
| ReAllocCharFun_t | GetReAllocFunc () const |
| Return the reallocation method currently used. | |
| virtual const char * | GetTitle () const |
| Returns title of object. | |
| UInt_t | GetTRefExecId () override |
| Return the exec id stored in the current TStreamerInfo element. | |
| virtual UInt_t | GetUniqueID () const |
| Return the unique object id. | |
| Int_t | GetVersionOwner () const override |
| Return the version number of the owner file. | |
| virtual Bool_t | HandleTimer (TTimer *timer) |
| Execute action in response of a timer timing out. | |
| virtual ULong_t | Hash () const |
| Return hash value for this object. | |
| Bool_t | HasInconsistentHash () const |
| Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. | |
| void | IncrementLevel (TVirtualStreamerInfo *) final |
| Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and indent new level in json structure. | |
| virtual void | Info (const char *method, const char *msgfmt,...) const |
| Issue info message. | |
| virtual Bool_t | InheritsFrom (const char *classname) const |
| Returns kTRUE if object inherits from class "classname". | |
| virtual Bool_t | InheritsFrom (const TClass *cl) const |
| Returns kTRUE if object inherits from TClass cl. | |
| void | InitMap () override |
| Create the fMap container and initialize them with the null object. | |
| virtual void | Inspect () const |
| Dump contents of this object in a graphics canvas. | |
| void | InvertBit (UInt_t f) |
| TClass * | IsA () const override |
| Bool_t | IsDestructed () const |
| IsDestructed. | |
| virtual Bool_t | IsEqual (const TObject *obj) const |
| Default equal comparison (objects are equal if they have the same address in memory). | |
| virtual Bool_t | IsFolder () const |
| Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). | |
| Bool_t | IsOnHeap () const |
| Bool_t | IsReading () const |
| Bool_t | IsSkipClassInfo (const TClass *cl) const |
| Returns true if class info will be skipped from JSON. | |
| virtual Bool_t | IsSortable () const |
| Bool_t | IsWriting () const |
| Bool_t | IsZombie () const |
| Int_t | Length () const |
| virtual void | ls (Option_t *option="") const |
| The ls function lists the contents of a class on stdout. | |
| void | MapObject (const TObject *obj, UInt_t offset=1) override |
| Add object to the fMap container. | |
| void | MapObject (const void *obj, const TClass *cl, UInt_t offset=1) override |
| Add object to the fMap container. | |
| void | MayNotUse (const char *method) const |
| Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). | |
| virtual Bool_t | Notify () |
| This method must be overridden to handle object notification (the base implementation is no-op). | |
| void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
| Use this method to declare a method obsolete. | |
| void | operator delete (void *, size_t) |
| Operator delete for sized deallocation. | |
| void | operator delete (void *ptr) |
| Operator delete. | |
| void | operator delete (void *ptr, void *vp) |
| Only called by placement new when throwing an exception. | |
| void | operator delete[] (void *, size_t) |
| Operator delete [] for sized deallocation. | |
| void | operator delete[] (void *ptr) |
| Operator delete []. | |
| void | operator delete[] (void *ptr, void *vp) |
| Only called by placement new[] when throwing an exception. | |
| 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) |
| virtual void | Paint (Option_t *option="") |
| This method must be overridden if a class wants to paint itself. | |
| virtual TVirtualArray * | PeekDataCache () const |
| Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members. | |
| virtual void | Pop () |
| Pop on object drawn in a pad to the top of the display list. | |
| 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. | |
| virtual void | Print (Option_t *option="") const |
| This method must be overridden when a class wants to print itself. | |
| virtual void | PushDataCache (TVirtualArray *) |
| Push a new data cache area onto the list of area to be used for temporarily store 'missing' data members. | |
| Int_t | ReadArray (Bool_t *&b) final |
| Read array of Bool_t from buffer. | |
| Int_t | ReadArray (Char_t *&c) final |
| Read array of Char_t from buffer. | |
| Int_t | ReadArray (Double_t *&d) final |
| Read array of Double_t from buffer. | |
| Int_t | ReadArray (Float_t *&f) final |
| Read array of Float_t from buffer. | |
| Int_t | ReadArray (Int_t *&i) final |
| Read array of Int_t from buffer. | |
| Int_t | ReadArray (Long64_t *&l) final |
| Read array of Long64_t from buffer. | |
| Int_t | ReadArray (Long_t *&l) final |
| Read array of Long_t from buffer. | |
| Int_t | ReadArray (Short_t *&h) final |
| Read array of Short_t from buffer. | |
| Int_t | ReadArray (UChar_t *&c) final |
| Read array of UChar_t from buffer. | |
| Int_t | ReadArray (UInt_t *&i) final |
| Read array of UInt_t from buffer. | |
| Int_t | ReadArray (ULong64_t *&l) final |
| Read array of ULong64_t from buffer. | |
| Int_t | ReadArray (ULong_t *&l) final |
| Read array of ULong_t from buffer. | |
| Int_t | ReadArray (UShort_t *&h) final |
| Read array of UShort_t from buffer. | |
| Int_t | ReadArrayDouble32 (Double_t *&d, TStreamerElement *ele=nullptr) override |
| Read array of Double32_t from buffer. | |
| Int_t | ReadArrayFloat16 (Float_t *&f, TStreamerElement *ele=nullptr) override |
| Read array of Float16_t from buffer. | |
| void | ReadBaseClass (void *start, TStreamerBase *elem) final |
| Read data of base class. | |
| void | ReadBool (Bool_t &b) final |
| Reads Bool_t value from buffer. | |
| Int_t | ReadBuf (void *, Int_t) final |
| void | ReadChar (Char_t &c) final |
| Reads Char_t value from buffer. | |
| void | ReadCharP (Char_t *c) final |
| Reads array of characters from buffer. | |
| void | ReadCharStar (char *&s) final |
| Reads a char* string. | |
| TClass * | ReadClass (const TClass *cl=nullptr, UInt_t *objTag=nullptr) final |
| suppressed function of TBuffer | |
| Int_t | ReadClassBuffer (const TClass *, void *, const TClass *=nullptr) override |
| Deserialize information from a buffer into an object. | |
| Int_t | ReadClassBuffer (const TClass *, void *, Int_t, UInt_t, UInt_t, const TClass *=nullptr) override |
| Deserialize information from a buffer into an object. | |
| Int_t | ReadClassEmulated (const TClass *, void *, const TClass *=nullptr) final |
| Int_t | ReadClones (TClonesArray *a, Int_t nobjects, Version_t objvers) override |
| Interface to TStreamerInfo::ReadBufferClones. | |
| void | ReadDouble (Double_t &d) final |
| Reads Double_t value from buffer. | |
| void | ReadDouble32 (Double_t *d, TStreamerElement *ele=nullptr) final |
| read a Double32_t from the buffer | |
| void | ReadFastArray (Bool_t *b, Int_t n) final |
| read array of Bool_t from buffer | |
| void | ReadFastArray (Char_t *c, Int_t n) final |
| read array of Char_t from buffer | |
| void | ReadFastArray (Double_t *d, Int_t n) final |
| read array of Double_t from buffer | |
| void | ReadFastArray (Float_t *f, Int_t n) final |
| read array of Float_t from buffer | |
| void | ReadFastArray (Int_t *i, Int_t n) final |
| read array of Int_t from buffer | |
| void | ReadFastArray (Long64_t *l, Int_t n) final |
| read array of Long64_t from buffer | |
| void | ReadFastArray (Long_t *l, Int_t n) final |
| read array of Long_t from buffer | |
| void | ReadFastArray (Short_t *h, Int_t n) final |
| read array of Short_t from buffer | |
| void | ReadFastArray (UChar_t *c, Int_t n) final |
| read array of UChar_t from buffer | |
| void | ReadFastArray (UInt_t *i, Int_t n) final |
| read array of UInt_t from buffer | |
| void | ReadFastArray (ULong64_t *l, Int_t n) final |
| read array of ULong64_t from buffer | |
| void | ReadFastArray (ULong_t *l, Int_t n) final |
| read array of ULong_t from buffer | |
| void | ReadFastArray (UShort_t *h, Int_t n) final |
| read array of UShort_t from buffer | |
| void | ReadFastArray (void **startp, const TClass *cl, Int_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr) final |
| redefined here to avoid warning message from gcc | |
| void | ReadFastArray (void *start, const TClass *cl, Int_t n=1, TMemberStreamer *s=nullptr, const TClass *onFileClass=nullptr) final |
| Read an array of 'n' objects from the I/O buffer. | |
| void | ReadFastArrayDouble32 (Double_t *d, Int_t n, TStreamerElement *ele=nullptr) final |
| read array of Double32_t from buffer | |
| void | ReadFastArrayFloat16 (Float_t *f, Int_t n, TStreamerElement *ele=nullptr) final |
| read array of Float16_t from buffer | |
| void | ReadFastArrayString (Char_t *c, Int_t n) final |
| read array of Char_t from buffer | |
| void | ReadFastArrayWithFactor (Double_t *ptr, Int_t n, Double_t factor, Double_t minvalue) final |
| read array of Double32_t from buffer | |
| void | ReadFastArrayWithFactor (Float_t *ptr, Int_t n, Double_t factor, Double_t minvalue) final |
| read array of Float16_t from buffer | |
| void | ReadFastArrayWithNbits (Double_t *ptr, Int_t n, Int_t nbits) final |
| read array of Double32_t from buffer | |
| void | ReadFastArrayWithNbits (Float_t *ptr, Int_t n, Int_t nbits) final |
| read array of Float16_t from buffer | |
| void | ReadFloat (Float_t &f) final |
| Reads Float_t value from buffer. | |
| void | ReadFloat16 (Float_t *f, TStreamerElement *ele=nullptr) final |
| read a Float16_t from the buffer | |
| void | ReadInt (Int_t &i) final |
| Reads Int_t value from buffer. | |
| void | ReadLong (Long_t &l) final |
| Reads Long_t value from buffer. | |
| void | ReadLong64 (Long64_t &l) final |
| Reads Long64_t value from buffer. | |
| TObject * | ReadObject (const TClass *) final |
| void * | ReadObjectAny (const TClass *clCast) final |
| Read object from buffer. Only used from TBuffer. | |
| TProcessID * | ReadProcessID (UShort_t pidf) override |
| The TProcessID with number pidf is read from file. | |
| void | ReadShort (Short_t &s) final |
| Reads Short_t value from buffer. | |
| Int_t | ReadStaticArray (Bool_t *b) final |
| Read array of Bool_t from buffer. | |
| Int_t | ReadStaticArray (Char_t *c) final |
| Read array of Char_t from buffer. | |
| Int_t | ReadStaticArray (Double_t *d) final |
| Read array of Double_t from buffer. | |
| Int_t | ReadStaticArray (Float_t *f) final |
| Read array of Float_t from buffer. | |
| Int_t | ReadStaticArray (Int_t *i) final |
| Read array of Int_t from buffer. | |
| Int_t | ReadStaticArray (Long64_t *l) final |
| Read array of Long64_t from buffer. | |
| Int_t | ReadStaticArray (Long_t *l) final |
| Read array of Long_t from buffer. | |
| Int_t | ReadStaticArray (Short_t *h) final |
| Read array of Short_t from buffer. | |
| Int_t | ReadStaticArray (UChar_t *c) final |
| Read array of UChar_t from buffer. | |
| Int_t | ReadStaticArray (UInt_t *i) final |
| Read array of UInt_t from buffer. | |
| Int_t | ReadStaticArray (ULong64_t *l) final |
| Read array of ULong64_t from buffer. | |
| Int_t | ReadStaticArray (ULong_t *l) final |
| Read array of ULong_t from buffer. | |
| Int_t | ReadStaticArray (UShort_t *h) final |
| Read array of UShort_t from buffer. | |
| Int_t | ReadStaticArrayDouble32 (Double_t *d, TStreamerElement *ele=nullptr) final |
| Read array of Double32_t from buffer. | |
| Int_t | ReadStaticArrayFloat16 (Float_t *f, TStreamerElement *ele=nullptr) final |
| Read array of Float16_t from buffer. | |
| virtual void | ReadStdString (std::string &s) |
| void | ReadStdString (std::string *s) final |
| Reads a std::string. | |
| char * | ReadString (char *, Int_t) final |
| void | ReadTString (TString &s) final |
| Reads a TString. | |
| void | ReadUChar (UChar_t &c) final |
| Reads UChar_t value from buffer. | |
| void | ReadUInt (UInt_t &i) final |
| Reads UInt_t value from buffer. | |
| void | ReadULong (ULong_t &l) final |
| Reads ULong_t value from buffer. | |
| void | ReadULong64 (ULong64_t &l) final |
| Reads ULong64_t value from buffer. | |
| void | ReadUShort (UShort_t &s) final |
| Reads UShort_t value from buffer. | |
| Version_t | ReadVersion (UInt_t *start=nullptr, UInt_t *bcnt=nullptr, const TClass *cl=nullptr) final |
| read version value from buffer | |
| Version_t | ReadVersionForMemberWise (const TClass *=nullptr) final |
| Version_t | ReadVersionNoCheckSum (UInt_t *, UInt_t *) final |
| void | ReadWithFactor (Double_t *ptr, Double_t factor, Double_t minvalue) final |
| 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(). | |
| void | ReadWithFactor (Float_t *ptr, Double_t factor, Double_t minvalue) final |
| 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(). | |
| void | ReadWithNbits (Double_t *ptr, Int_t nbits) final |
| Read a Double32_t from the buffer when the number of bits is specified (explicitly or not) see comments about Double32_t encoding at TBufferFile::WriteDouble32(). | |
| void | ReadWithNbits (Float_t *ptr, Int_t nbits) final |
| 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(). | |
| virtual void | RecursiveRemove (TObject *obj) |
| Recursively remove this object from a list. | |
| void | Reset () override |
| Reset buffer object. Resets map and buffer offset. | |
| void | ResetBit (UInt_t f) |
| void | ResetMap () override |
| Delete existing fMap and reset map counter. | |
| void * | RestoreObject (const char *str, TClass **cl) |
| Read object from JSON In class pointer (if specified) read class is returned One must specify expected object class, if it is TArray or STL container. | |
| virtual void | SaveAs (const char *filename="", Option_t *option="") const |
| Save this object in the file specified by filename. | |
| virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
| Save a primitive as a C++ statement(s) on output stream "out". | |
| void | SetBit (UInt_t f) |
| void | SetBit (UInt_t f, Bool_t set) |
| Set or unset the user status bits as specified in f. | |
| void | SetBuffer (void *buf, UInt_t bufsize=0, Bool_t adopt=kTRUE, ReAllocCharFun_t reallocfunc=nullptr) |
| Sets a new buffer in an existing TBuffer object. | |
| void | SetBufferDisplacement () override |
| void | SetBufferDisplacement (Int_t skipped) override |
| void | SetBufferOffset (Int_t offset=0) |
| void | SetByteCount (UInt_t, Bool_t=kFALSE) final |
| void | SetCompact (int level) |
| Set level of space/newline/array compression Lower digit of compact parameter define formatting rules. | |
| virtual void | SetDrawOption (Option_t *option="") |
| Set drawing option for object. | |
| void | SetParent (TObject *parent) |
| Set parent owning this buffer. | |
| void | SetPidOffset (UShort_t offset) override |
| This offset is used when a key (or basket) is transferred from one file to the other. | |
| void | SetReadMode () |
| Set buffer in read mode. | |
| void | SetReadParam (Int_t mapsize) override |
| Set the initial size of the map used to store object and class references during reading. | |
| void | SetReAllocFunc (ReAllocCharFun_t reallocfunc=nullptr) |
| Set which memory reallocation method to use. | |
| 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(""). | |
| void | SetStreamerElementNumber (TStreamerElement *elem, Int_t comp_type) final |
| 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. | |
| 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. | |
| 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. | |
| virtual void | SetUniqueID (UInt_t uid) |
| Set the unique object id. | |
| void | SetWriteMode () |
| Set buffer in write mode. | |
| void | SetWriteParam (Int_t mapsize) override |
| Set the initial size of the hashtable used to store object and class references during writing. | |
| void | SkipObjectAny () final |
| Skip any kind of object from buffer. | |
| void | SkipVersion (const TClass *cl=nullptr) final |
| Skip class version from I/O buffer. | |
| TString | StoreObject (const void *obj, const TClass *cl) |
| Store provided object as JSON structure Allows to configure different TBufferJSON properties before converting object into JSON Actual object class must be specified here Method can be safely called once - after that TBufferJSON instance must be destroyed Code should look like: | |
| void | Streamer (TBuffer &) override |
| Stream an object of class TObject. | |
| void | StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b) |
| void | StreamObject (TObject *obj) override |
| void | StreamObject (void *obj, const char *className, const TClass *onFileClass=nullptr) override |
| stream object to/from buffer | |
| void | StreamObject (void *obj, const std::type_info &typeinfo, const TClass *onFileClass=nullptr) override |
| stream object to/from buffer | |
| void | StreamObject (void *obj, const TClass *cl, const TClass *onFileClass=nullptr) final |
| stream object to/from buffer | |
| virtual void | SysError (const char *method, const char *msgfmt,...) const |
| Issue system error message. | |
| void | TagStreamerInfo (TVirtualStreamerInfo *info) override |
| Mark the classindex of the current file as using this TStreamerInfo. | |
| Bool_t | TestBit (UInt_t f) const |
| Int_t | TestBits (UInt_t f) const |
| virtual void | UseCurrentStyle () |
| Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. | |
| virtual void | Warning (const char *method, const char *msgfmt,...) const |
| Issue warning message. | |
| void | WriteArray (const Bool_t *b, Int_t n) final |
| Write array of Bool_t to buffer. | |
| void | WriteArray (const Char_t *c, Int_t n) final |
| Write array of Char_t to buffer. | |
| void | WriteArray (const Double_t *d, Int_t n) final |
| Write array of Double_t to buffer. | |
| void | WriteArray (const Float_t *f, Int_t n) final |
| Write array of Float_t to buffer. | |
| void | WriteArray (const Int_t *i, Int_t n) final |
| Write array of Int_ to buffer. | |
| void | WriteArray (const Long64_t *l, Int_t n) final |
| Write array of Long64_t to buffer. | |
| void | WriteArray (const Long_t *l, Int_t n) final |
| Write array of Long_t to buffer. | |
| void | WriteArray (const Short_t *h, Int_t n) final |
| Write array of Short_t to buffer. | |
| void | WriteArray (const UChar_t *c, Int_t n) final |
| Write array of UChar_t to buffer. | |
| void | WriteArray (const UInt_t *i, Int_t n) final |
| Write array of UInt_t to buffer. | |
| void | WriteArray (const ULong64_t *l, Int_t n) final |
| Write array of ULong64_t to buffer. | |
| void | WriteArray (const ULong_t *l, Int_t n) final |
| Write array of ULong_t to buffer. | |
| void | WriteArray (const UShort_t *h, Int_t n) final |
| Write array of UShort_t to buffer. | |
| void | WriteArrayDouble32 (const Double_t *d, Int_t n, TStreamerElement *ele=nullptr) final |
| Write array of Double32_t to buffer. | |
| void | WriteArrayFloat16 (const Float_t *f, Int_t n, TStreamerElement *ele=nullptr) final |
| Write array of Float16_t to buffer. | |
| virtual void | WriteBaseClass (void *start, TStreamerBase *elem) |
| Write data of base class. | |
| void | WriteBool (Bool_t b) final |
| Writes Bool_t value to buffer. | |
| void | WriteBuf (const void *, Int_t) final |
| void | WriteChar (Char_t c) final |
| Writes Char_t value to buffer. | |
| void | WriteCharP (const Char_t *c) final |
| Writes array of characters to buffer. | |
| void | WriteCharStar (char *s) final |
| Writes a char*. | |
| void | WriteClass (const TClass *cl) final |
| suppressed function of TBuffer | |
| Int_t | WriteClassBuffer (const TClass *cl, void *pointer) override |
| Function called by the Streamer functions to serialize object at p to buffer b. | |
| Int_t | WriteClones (TClonesArray *a, Int_t nobjects) override |
| Interface to TStreamerInfo::WriteBufferClones. | |
| void | WriteDouble (Double_t d) final |
| Writes Double_t value to buffer. | |
| void | WriteDouble32 (Double_t *d, TStreamerElement *ele=nullptr) final |
| write a Double32_t to the buffer | |
| void | WriteFastArray (const Bool_t *b, Long64_t n) final |
| Write array of Bool_t to buffer. | |
| void | WriteFastArray (const Char_t *c, Long64_t n) final |
| Write array of Char_t to buffer. | |
| void | WriteFastArray (const Double_t *d, Long64_t n) final |
| Write array of Double_t to buffer. | |
| void | WriteFastArray (const Float_t *f, Long64_t n) final |
| Write array of Float_t to buffer. | |
| void | WriteFastArray (const Int_t *i, Long64_t n) final |
| Write array of Int_t to buffer. | |
| void | WriteFastArray (const Long64_t *l, Long64_t n) final |
| Write array of Long64_t to buffer. | |
| void | WriteFastArray (const Long_t *l, Long64_t n) final |
| Write array of Long_t to buffer. | |
| void | WriteFastArray (const Short_t *h, Long64_t n) final |
| Write array of Short_t to buffer. | |
| void | WriteFastArray (const UChar_t *c, Long64_t n) final |
| Write array of UChar_t to buffer. | |
| void | WriteFastArray (const UInt_t *i, Long64_t n) final |
| Write array of UInt_t to buffer. | |
| void | WriteFastArray (const ULong64_t *l, Long64_t n) final |
| Write array of ULong64_t to buffer. | |
| void | WriteFastArray (const ULong_t *l, Long64_t n) final |
| Write array of ULong_t to buffer. | |
| void | WriteFastArray (const UShort_t *h, Long64_t n) final |
| Write array of UShort_t to buffer. | |
| Int_t | WriteFastArray (void **startp, const TClass *cl, Long64_t n=1, Bool_t isPreAlloc=kFALSE, TMemberStreamer *s=nullptr) final |
| Recall TBuffer function to avoid gcc warning message. | |
| void | WriteFastArray (void *start, const TClass *cl, Long64_t n=1, TMemberStreamer *s=nullptr) final |
| Recall TBuffer function to avoid gcc warning message. | |
| void | WriteFastArrayDouble32 (const Double_t *d, Long64_t n, TStreamerElement *ele=nullptr) final |
| Write array of Double32_t to buffer. | |
| void | WriteFastArrayFloat16 (const Float_t *d, Long64_t n, TStreamerElement *ele=nullptr) final |
| Write array of Float16_t to buffer. | |
| void | WriteFastArrayString (const Char_t *c, Long64_t n) final |
| Write array of Char_t to buffer. | |
| void | WriteFloat (Float_t f) final |
| Writes Float_t value to buffer. | |
| void | WriteFloat16 (Float_t *f, TStreamerElement *ele=nullptr) final |
| write a Float16_t to the buffer | |
| void | WriteInt (Int_t i) final |
| Writes Int_t value to buffer. | |
| void | WriteLong (Long_t l) final |
| Writes Long_t value to buffer. | |
| void | WriteLong64 (Long64_t l) final |
| Writes Long64_t value to buffer. | |
| template<class T> | |
| Int_t | WriteObject (const T *objptr, Bool_t cacheReuse=kTRUE) |
| void | WriteObject (const TObject *obj, Bool_t cacheReuse=kTRUE) override |
| Write object to I/O buffer. | |
| Int_t | WriteObjectAny (const void *obj, const TClass *ptrClass, Bool_t cacheReuse=kTRUE) override |
| Write object to I/O buffer. | |
| UShort_t | WriteProcessID (TProcessID *pid) override |
| Check if the ProcessID pid is already in the file. | |
| void | WriteShort (Short_t s) final |
| Writes Short_t value to buffer. | |
| void | WriteStdString (const std::string *s) final |
| Writes a std::string. | |
| virtual void | WriteStdString (std::string &s) |
| void | WriteString (const char *) final |
| void | WriteTString (const TString &s) final |
| Writes a TString. | |
| void | WriteUChar (UChar_t c) final |
| Writes UChar_t value to buffer. | |
| void | WriteUInt (UInt_t i) final |
| Writes UInt_t value to buffer. | |
| void | WriteULong (ULong_t l) final |
| Writes ULong_t value to buffer. | |
| void | WriteULong64 (ULong64_t l) final |
| Writes ULong64_t value to buffer. | |
| void | WriteUShort (UShort_t s) final |
| Writes UShort_t value to buffer. | |
| UInt_t | WriteVersion (const TClass *cl, Bool_t useBcnt=kFALSE) final |
| Ignored in TBufferJSON. | |
| UInt_t | WriteVersionMemberWise (const TClass *, Bool_t=kFALSE) final |
Static Public Member Functions | |
| static TClass * | Class () |
| static const char * | Class_Name () |
| static constexpr Version_t | Class_Version () |
| static void | CompactFloatString (char *buf, unsigned len) |
| method compress float string, excluding exp and/or move float point | |
| static const char * | ConvertDouble (Double_t v, char *buf, unsigned len, Bool_t not_optimize=kFALSE) |
| convert float to string with configured format | |
| static const char * | ConvertFloat (Float_t v, char *buf, unsigned len, Bool_t not_optimize=kFALSE) |
| convert float to string with configured format | |
| static TObject * | ConvertFromJSON (const char *str) |
| Read TObject-based class from JSON, produced by ConvertToJSON() method. | |
| static void * | ConvertFromJSONAny (const char *str, TClass **cl=nullptr) |
| Read object from JSON In class pointer (if specified) read class is returned One must specify expected object class, if it is TArray or STL container. | |
| 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. | |
| 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. | |
| static TString | ConvertToJSON (const void *obj, TDataMember *member, Int_t compact=0, Int_t arraylen=-1) |
| Converts selected data member into json. | |
| static const char * | DeclFileName () |
| 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(). | |
| 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. | |
| 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) |
| static TClass * | GetClass (const char *className) |
| Forward to TROOT::GetClass(). | |
| static TClass * | GetClass (const std::type_info &typeinfo) |
| Forward to TROOT::GetClass(). | |
| static const char * | GetDoubleFormat () |
| return current printf format for double members, default "%.14e" | |
| static Longptr_t | GetDtorOnly () |
| Return destructor only flag. | |
| static const char * | GetFloatFormat () |
| return current printf format for float members, default "%e" | |
| static Int_t | GetGlobalReadParam () |
| Get default read map size. | |
| static Int_t | GetGlobalWriteParam () |
| Get default write map size. | |
| static Bool_t | GetObjectStat () |
| Get status of object stat flag. | |
| 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 | |
| static void | SetDtorOnly (void *obj) |
| Set destructor only flag. | |
| static void | SetFloatFormat (const char *fmt="%e") |
| set printf format for float/double members, default "%e" to change format only for doubles, use SetDoubleFormat | |
| static void | SetGlobalReadParam (Int_t mapsize) |
| Set the initial size of the map used to store object and class references during reading. | |
| static void | SetGlobalWriteParam (Int_t mapsize) |
| Set the initial size of the map used to store object and class references during reading. | |
| static void | SetObjectStat (Bool_t stat) |
| Turn on/off tracking of objects in the TObjectTable. | |
| template<class T> | |
| static TString | ToJSON (const T *obj, Int_t compact=0, const char *member_name=nullptr) |
| static TString | zipJSON (const char *json) |
| zip JSON string and convert into base64 string to be used with JSROOT unzipJSON() function Main application - embed large JSON code into jupyter notebooks | |
Protected Types | |
| enum | { kNullTag = 0 } |
| enum | { kOnlyPrepStep = (1ULL << (3)) } |
| typedef std::vector< TVirtualArray * > | CacheList_t |
Protected Member Functions | |
| void | AppendOutput (const char *line0, const char *line1=nullptr) |
| Append two string to the output JSON, normally separate by line break. | |
| virtual void | CheckCount (UInt_t) |
| virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
| Interface to ErrorHandler (protected). | |
| 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. | |
| void | JsonDisablePostprocessing () |
| disable post-processing of the code | |
| void | JsonPushValue () |
| If value exists, push in the current stack for post-processing. | |
| template<typename T> | |
| Int_t | JsonReadArray (T *value) |
| Read static array from JSON - not used. | |
| template<typename T> | |
| void | JsonReadBasic (T &value) |
| Template function to read basic value from JSON. | |
| void | JsonReadCollection (TCollection *obj, const TClass *objClass) |
| read content of ROOT collection | |
| template<typename T> | |
| void | JsonReadFastArray (T *arr, Int_t arrsize, bool asstring=false) |
| Template method to read array from the JSON. | |
| void * | JsonReadObject (void *obj, const TClass *objClass=nullptr, TClass **readClass=nullptr) |
| Read object from current JSON node. | |
| void | JsonReadTObjectMembers (TObject *obj, void *node=nullptr) |
| Read TObject data members from JSON. | |
| 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) | |
| void | JsonStartElement (const TStreamerElement *elem, const TClass *base_class) |
| Start new class member in JSON structures. | |
| TJSONStackObj * | JsonStartObjectWrite (const TClass *obj_class, TStreamerInfo *info=nullptr) |
| Start object element with typeinfo. | |
| template<typename T> | |
| 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 | |
| void | JsonWriteBasic (Char_t value) |
| converts Char_t to string and add to json value buffer | |
| void | JsonWriteBasic (Double_t value) |
| converts Double_t to string and add to json value buffer | |
| void | JsonWriteBasic (Float_t value) |
| converts Float_t to string and add to json value buffer | |
| void | JsonWriteBasic (Int_t value) |
| converts Int_t to string and add to json value buffer | |
| void | JsonWriteBasic (Long64_t value) |
| converts Long64_t to string and add to json value buffer | |
| void | JsonWriteBasic (Long_t value) |
| converts Long_t to string and add to json value buffer | |
| void | JsonWriteBasic (Short_t value) |
| converts Short_t to string and add to json value buffer | |
| void | JsonWriteBasic (UChar_t value) |
| converts UChar_t to string and add to json value buffer | |
| void | JsonWriteBasic (UInt_t value) |
| converts UInt_t to string and add to json value buffer | |
| void | JsonWriteBasic (ULong64_t value) |
| converts ULong64_t to string and add to json value buffer | |
| void | JsonWriteBasic (ULong_t value) |
| converts ULong_t to string and add to json value buffer | |
| void | JsonWriteBasic (UShort_t value) |
| converts UShort_t to string and add to json value buffer | |
| void | JsonWriteCollection (TCollection *obj, const TClass *objClass) |
| store content of ROOT collection | |
| void | JsonWriteConstChar (const char *value, Int_t len=-1, const char *=nullptr) |
| writes string value, processing all kind of special characters | |
| template<typename T> | |
| void | JsonWriteFastArray (const T *arr, Long64_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(). | |
| TString | JsonWriteMember (const void *ptr, TDataMember *member, TClass *memberClass, Int_t arraylen) |
| Convert single data member to JSON structures Note; if data member described by 'member'is pointer, ptr should be the value of the pointer, not the address of the pointer. | |
| 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. | |
| void | MakeZombie () |
| void | PerformPostProcessing (TJSONStackObj *stack, const TClass *obj_cl=nullptr) |
| Function is converts TObject and TString structures to more compact representation. | |
| TJSONStackObj * | PopStack () |
| remove one level from stack | |
| TJSONStackObj * | PushStack (Int_t inclevel=0, void *readnode=nullptr) |
| add new level to the structures stack | |
| Int_t | Read (const char *name) override |
| Read contents of object with specified name from the current directory. | |
| TJSONStackObj * | Stack () |
| void | WorkWithClass (TStreamerInfo *info, const TClass *cl=nullptr) |
| Prepares buffer to stream data of specified class. | |
| 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. | |
| Int_t | Write (const char *name, Int_t opt, Int_t bufsize) const override |
| Write this object to the current directory. | |
| Int_t | Write (const char *name, Int_t opt, Int_t bufsize) override |
| Write this object to the current directory. | |
| void | WriteObjectClass (const void *actualObjStart, const TClass *actualClass, Bool_t cacheReuse) final |
| Write object to buffer. Only used from TBuffer. | |
Static Protected Member Functions | |
| static void * | ConvertFromJSONChecked (const char *str, const TClass *expectedClass) |
| Read objects from JSON, one can reuse existing object. | |
| static void | SavePrimitiveConstructor (std::ostream &out, TClass *cl, const char *variable_name, const char *constructor_agrs="", Bool_t empty_line=kTRUE) |
| Save object constructor in the output stream "out". | |
| static void | SavePrimitiveDraw (std::ostream &out, const char *variable_name, Option_t *option=nullptr) |
| Save invocation of primitive Draw() method Skipped if option contains "nodraw" string. | |
| static TString | SavePrimitiveVector (std::ostream &out, const char *prefix, Int_t len, Double_t *arr, Int_t flag=0) |
| Save array in the output stream "out" as vector. | |
| static ULong_t | Void_Hash (const void *ptr) |
| Return hash value for provided object. | |
Protected Attributes | |
| Int_t | fArrayCompact {0} |
| ! 0 - no array compression, 1 - exclude leading/trailing zeros, 2 - check value repetition | |
| TString | fArraySepar |
| ! depending from compression level, ", " or "," | |
| char * | fBufCur |
| char * | fBuffer |
| char * | fBufMax |
| Int_t | fBufSize |
| CacheList_t | fCacheStack |
| TExMap * | fClassMap {nullptr} |
| Map containing object,class pairs for reading. | |
| Int_t | fCompact {0} |
| ! 0 - no any compression, 1 - no spaces in the begin, 2 - no new lines, 3 - no spaces at all | |
| Int_t | fDisplacement {0} |
| Value to be added to the map offsets. | |
| unsigned | fJsonrCnt {0} |
| ! counter for all objects, used for referencing | |
| TExMap * | fMap {nullptr} |
| Map containing object,offset pairs for reading/writing. | |
| Bool_t | fMapAsObject {kFALSE} |
| ! when true, std::map will be converted into JSON object | |
| Int_t | fMapCount {0} |
| Number of objects or classes in map. | |
| Int_t | fMapSize {0} |
| Default size of map. | |
| Bool_t | fMode |
| TString | fNumericLocale |
| ! stored value of setlocale(LC_NUMERIC), which should be recovered at the end | |
| TString | fOutBuffer |
| ! main output buffer for json code | |
| TString * | fOutput {nullptr} |
| ! current output buffer for json code | |
| TObject * | fParent |
| UShort_t | fPidOffset {0} |
| Offset to be added to the pid index in this key/buffer. | |
| ReAllocCharFun_t | fReAllocFunc |
| ! Realloc function to be used when extending the buffer. | |
| TString | fSemicolon |
| ! depending from compression level, " : " or ":" | |
| std::vector< const TClass * > | fSkipClasses |
| ! list of classes, which class info is not stored | |
| std::deque< std::unique_ptr< TJSONStackObj > > | fStack |
| ! hierarchy of currently streamed element | |
| Bool_t | fStoreInfNaN {kFALSE} |
| ! when true, store inf and nan as string, this is not portable for other JSON readers | |
| TString | fTypeNameTag |
| ! JSON member used for storing class name, when empty - no class name will be stored | |
| TString | fTypeVersionTag |
| ! JSON member used to store class version, default empty | |
| TString | fValue |
| ! buffer for current value | |
| Int_t | fVersion |
Static Protected Attributes | |
| static const char * | fgDoubleFmt = "%.14e" |
| ! printf argument for doubles, either "%f" or "%e" or "%10f" and so on | |
| static const char * | fgFloatFmt = "%e" |
| ! printf argument for floats, either "%f" or "%e" or "%10f" and so on | |
| static Int_t | fgMapSize = kMapSize |
| Default map size for all TBuffer objects. | |
Static Private Member Functions | |
| static void | AddToTObjectTable (TObject *) |
| Private helper function which will dispatch to TObjectTable::AddObj. | |
Private Attributes | |
| UInt_t | fBits |
| bit field status word | |
| UInt_t | fUniqueID |
| object unique identifier | |
Static Private Attributes | |
| static Longptr_t | fgDtorOnly = 0 |
| object for which to call dtor only (i.e. no delete) | |
| static Bool_t | fgObjectStat = kTRUE |
| if true keep track of objects in TObjectTable | |
#include <TBufferJSON.h>
|
protectedinherited |
|
protectedinherited |
| Enumerator | |
|---|---|
| kNullTag | |
Definition at line 33 of file TBufferIO.h.
|
protectedinherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
| Enumerator | |
|---|---|
| kMapSize | |
Definition at line 63 of file TBufferIO.h.
| anonymous enum |
Definition at line 34 of file TBufferJSON.h.
|
inherited |
|
inherited |
|
inherited |
| Enumerator | |
|---|---|
| kNotDecompressed | |
| kTextBasedStreaming | |
| kUser1 | |
| kUser2 | |
| kUser3 | |
Definition at line 65 of file TBufferIO.h.
| TBufferJSON::TBufferJSON | ( | TBuffer::EMode | mode = TBuffer::kWrite | ) |
Creates buffer object to serialize data into json.
Definition at line 482 of file TBufferJSON.cxx.
|
override |
destroy buffer
Definition at line 503 of file TBufferJSON.cxx.
|
inherited |
Call this function within a function that you don't want to define as purely virtual, in order not to force all users deriving from that class to implement that maybe (on their side) unused function; but at the same time, emit a run-time warning if they try to call it, telling that it is not implemented in the derived class: action must thus be taken on the user side to override it.
In other word, this method acts as a "runtime purely virtual" warning instead of a "compiler purely virtual" error.
Definition at line 1149 of file TObject.cxx.
|
staticprivateinherited |
Private helper function which will dispatch to TObjectTable::AddObj.
Included here to avoid circular dependency between header files.
Definition at line 195 of file TObject.cxx.
|
protected |
Append two string to the output JSON, normally separate by line break.
Definition at line 1209 of file TBufferJSON.cxx.
|
virtualinherited |
Append graphics object to current pad.
In case no current pad is set yet, create a default canvas with the name "c1".
Definition at line 204 of file TObject.cxx.
|
finalvirtualinherited |
Read one collection of objects from the buffer using the StreamerInfoLoopAction.
The collection needs to be a split TClonesArray or a split vector of pointers.
Implements TBuffer.
Definition at line 70 of file TBufferText.cxx.
|
finalvirtualinherited |
Read one collection of objects from the buffer using the StreamerInfoLoopAction.
Implements TBuffer.
Definition at line 137 of file TBufferText.cxx.
|
finalvirtualinherited |
Read one collection of objects from the buffer using the StreamerInfoLoopAction.
The collection needs to be a split TClonesArray or a split vector of pointers.
Implements TBuffer.
Definition at line 103 of file TBufferText.cxx.
|
inherited |
Automatically calculate a new size and expand the buffer to fit at least size_needed.
The goals is to minimize the number of memory allocation and the memory allocation which avoiding too much memory wastage.
If the size_needed is larger than the current size, the policy is to expand to double the current size or the size_needed which ever is largest.
Definition at line 157 of file TBuffer.cxx.
|
virtualinherited |
Browse object. May be overridden for another default action.
Reimplemented in RooPlot, ROOT::Experimental::XRooFit::xRooNode, ROOT::Internal::THnBaseBrowsable, TApplicationRemote, TASImage, TAxis3D, TBaseClass, TBranch, TBranchClones, TBranchElement, TBranchObject, TBranchSTL, TBrowserObject, TCanvas, TChain, TClass, TCollection, TCollectionPropertyBrowsable, TDatabasePDG, TDirectory, TDirectoryFile, TEfficiency, TF1, TFolder, TGenerator, TGeoManager, TGeometry, TGeoNode, TGeoOverlap, TGeoTrack, TGeoVolume, TGraph2D, TGraph, TH1, THbookBranch, THbookFile, THbookKey, THnBase, THStack, TKey, TKeyMapFile, TLeaf, TMacro, TMapFile, TMultiDimFit, TMultiGraph, TNode, TNtuple, TNtupleD, TPad, TPair, TParticleClassPDG, TPrincipal, TRecorder, TRemoteObject, TROOT, TRootIconList, TSPlot, TStyle, TSystemDirectory, TSystemFile, TTask, TTree, TTreePerfStats, and TVirtualBranchBrowsable.
Definition at line 218 of file TObject.cxx.
Byte-swap N primitive-elements in the buffer.
Bulk API relies on this function.
Definition at line 393 of file TBuffer.cxx.
Implements TBuffer.
Definition at line 79 of file TBufferText.h.
Implements TBuffer.
Definition at line 78 of file TBufferText.h.
|
inlineprotectedvirtualinherited |
Reimplemented in TBufferFile.
Definition at line 56 of file TBufferIO.h.
|
inlineinherited |
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
The intent is for this routine to be called instead of directly calling the function Hash during "insert" operations. See TObject::HasInconsistenTObjectHash();
(*) The setup is consistent when all classes in the class hierarchy that overload TObject::Hash do call ROOT::CallRecursiveRemoveIfNeeded in their destructor. i.e. it is safe to call the Hash virtual function during the RecursiveRemove operation.
Check if the specified object is already in the buffer.
Returns kTRUE if object already in the buffer, kFALSE otherwise (also if obj is 0 or TBuffer not in writing mode).
Implements TBuffer.
Definition at line 224 of file TBufferIO.cxx.
|
overridevirtualinherited |
Check if the specified object of the specified class is already in the buffer.
Returns kTRUE if object already in the buffer, kFALSE otherwise (also if obj is 0 ).
Implements TBuffer.
Definition at line 234 of file TBufferIO.cxx.
|
static |
|
static |
|
inlinestaticconstexpr |
Definition at line 337 of file TBufferJSON.h.
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 2268 of file TBufferJSON.cxx.
|
finalvirtual |
Should be called at the end of custom streamer See TBufferJSON::ClassBegin for more details.
Implements TBuffer.
Definition at line 2277 of file TBufferJSON.cxx.
|
finalvirtual |
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 2319 of file TBufferJSON.cxx.
|
virtualinherited |
Returns name of class to which the object belongs.
Definition at line 227 of file TObject.cxx.
|
inlinevirtualinherited |
Reimplemented in JetEvent, RooLinkedList, ROOT::TSchemaRule, ROOT::v5::TFormula, TBackCompFitter, TBits, TBranchRef, TBtree, TCanvas, TClonesArray, TCollection, TDictAttributeMap, TDirectory, TEventList, TFitter, TFolder, TFormula, TFumili, TGeoCombiTrans, TGeoGenTrans, TGeoHMatrix, TGeoRotation, TGHtml, TGraph2D, TGTextEdit, TGTextEntry, TGTextView, TGView, THashList, THashTable, TLegend, TLinearFitter, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TMap, TMatrixT< Element >, TMatrixT< AReal >, TMatrixT< Double_t >, TMatrixT< Float_t >, TMatrixTBase< Element >, TMatrixTBase< Double_t >, TMatrixTBase< Float_t >, TMatrixTSparse< Element >, TMatrixTSparse< Double_t >, TMatrixTSparse< Float_t >, TMatrixTSym< Element >, TMatrixTSym< Double_t >, TMatrixTSym< Float_t >, TMrbSubevent_Caen, TMultiDimFit, TMVA::MinuitWrapper, TMVA::ResultsClassification, TMVA::ResultsMulticlass, TMVA::ResultsRegression, TNamed, TNotifyLinkBase, TObjArray, TOrdCollection, TPad, TPaveText, TPrincipal, TProcessID, TRefArray, TRefTable, TStreamerInfo, TTask, TUsrHitBuffer, TVectorT< Element >, TVectorT< Double_t >, TVectorT< Float_t >, TViewPubDataMembers, TViewPubFunctions, TVirtualFitter, TVirtualPad, and TVirtualStreamerInfo.
|
virtualinherited |
Make a clone of an object using the Streamer facility.
If the object derives from TNamed, this function is called by TNamed::Clone. TNamed::Clone uses the optional argument to set a new name to the newly created object.
If the object class has a DirectoryAutoAdd function, it will be called at the end of the function with the parameter gDirectory. This usually means that the object will be appended to the current ROOT directory.
Reimplemented in RooAbsArg, RooAbsBinning, RooAbsCollection, RooAbsStudy, RooCatType, RooCmdArg, RooDataHist, RooDataSet, RooFitResult, RooLinkedList, RooStats::HypoTestResult, RooStats::ModelConfig, RooStudyPackage, RooTemplateProxy< T >, RooTemplateProxy< const RooHistFunc >, RooTemplateProxy< RooAbsCategory >, RooTemplateProxy< RooAbsPdf >, RooTemplateProxy< RooAbsReal >, RooTemplateProxy< RooAbsRealLValue >, RooTemplateProxy< RooMultiCategory >, RooTemplateProxy< RooRealVar >, RooWorkspace, TASImage, TChainIndex, TClass, TCollection, TF1, TFunction, TFunctionTemplate, TH1, TImage, TMethod, TMethodCall, TMinuit, TMVA::MinuitWrapper, TNamed, TStreamerInfo, and TTreeIndex.
Definition at line 243 of file TObject.cxx.
|
staticinherited |
method compress float string, excluding exp and/or move float point
Definition at line 708 of file TBufferText.cxx.
Compare abstract method.
Must be overridden if a class wants to be able to compare itself with other objects. Must return -1 if this is smaller than obj, 0 if objects are equal and 1 if this is larger than obj.
Reimplemented in RooAbsArg, RooDouble, TCollection, TEnvRec, TFileInfo, TGeoBranchArray, TGeoOverlap, TGFSFrameElement, TGLBFrameElement, TNamed, TObjString, TParameter< AParamType >, TParameter< Long64_t >, TStructNode, TStructNodeProperty, and TUrl.
Definition at line 258 of file TObject.cxx.
|
staticinherited |
convert float to string with configured format
Definition at line 853 of file TBufferText.cxx.
|
staticinherited |
convert float to string with configured format
Definition at line 837 of file TBufferText.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 956 of file TBufferJSON.cxx.
|
static |
Read object from JSON 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 979 of file TBufferJSON.cxx.
|
staticprotected |
Read objects from JSON, one can reuse existing object.
Definition at line 1022 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
Third digit of compact parameter defines typeinfo storage:
Fourth digit: (1 or 0) defines whether to set kStoreInfNaN (1000) - inf and nan to be stored as string
Maximal compression achieved when compact parameter equal to 23 When member_name specified, converts only this data member
Definition at line 533 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 676 of file TBufferJSON.cxx.
|
static |
Converts selected data member into json.
| ptr | specifies address in memory, where data member is located. |
| compact | defines compactness of produced JSON. See TBufferJSON::SetCompact for more details |
| arraylen | (when specified) is array length for this data member, //[fN] case |
Definition at line 769 of file TBufferJSON.cxx.
|
virtualinherited |
Copy this to obj.
Reimplemented in ROOT::v5::TFormula, TArc, TArrow, TAxis3D, TAxis, TBox, TColor, TCrown, TDirectory, TDirectoryFile, TEllipse, TF12, TF1, TF1AbsComposition, TF1Convolution, TF1NormSum, TF2, TF3, TFile, TFolder, TFormula, TFrame, TGTextEdit, TGTextView, TH1, TH1C, TH1D, TH1F, TH1I, TH1L, TH1S, TH2, TH2C, TH2D, TH2F, TH2I, TH2L, TH2Poly, TH2S, TH3, TH3C, TH3D, TH3F, TH3I, TH3L, TH3S, THelix, TLatex, TLegend, TLegendEntry, TLine, TMarker, TMathText, TNamed, TPaletteAxis, TPave, TPaveClass, TPaveLabel, TPieSlice, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TProfile2D, TProfile3D, TProfile, TStyle, TSystemDirectory, TSystemFile, TText, TWbox, and TXTRU.
Definition at line 159 of file TObject.cxx.
|
inlinestatic |
Definition at line 337 of file TBufferJSON.h.
|
finalvirtual |
Function is called from TStreamerInfo WriteBuffer and ReadBuffer functions and decrease level in json structure.
Implements TBuffer.
Definition at line 2135 of file TBufferJSON.cxx.
|
virtualinherited |
Delete this object.
Typically called as a command via the interpreter. Normally use "delete" operator when object has been allocated on the heap.
Reimplemented in RooLinkedList, TAxis, TBtree, TCanvas, TClonesArray, TCollection, TDirectory, TDirectoryFile, TExMap, TFile, TGFrame, TGItemContext, TGTextEdit, THashList, THashTable, TKey, TKeySQL, TKeyXML, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TMap, TMVA::Results, TObjArray, TObjectTable, TOrdCollection, TProtoClass, TQCommand, TRefArray, TSystemDirectory, TSystemFile, TThread, TTree, TTreeViewer, TViewPubDataMembers, and TViewPubFunctions.
Definition at line 268 of file TObject.cxx.
Computes distance from point (px,py) to the object.
This member function must be implemented for each graphics primitive. This default function returns a big number (999999).
Reimplemented in TASImage, TAxis3D, TAxis, TBox, TBRIK, TColorWheel, TCrown, TCurlyArc, TCurlyLine, TDiamond, TEfficiency, TEllipse, TF1, TF2, TF3, TFileDrawMap, TGenerator, TGeoBBox, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoEltu, TGeoHalfSpace, TGeoHype, TGeoNode, TGeoOverlap, TGeoParaboloid, TGeoPcon, TGeoPgon, TGeoScaledShape, TGeoShape, TGeoShapeAssembly, TGeoSphere, TGeoTessellated, TGeoTorus, TGeoTrack, TGeoTube, TGeoTubeSeg, TGeoVGShape, TGeoVolume, TGeoXtru, TGL5DDataSet, TGLHistPainter, TGLParametricEquation, TGLScenePad, TGLTH3Composition, TGLViewer, TGraph2D, TGraph, TGraphEdge, TGraphNode, TGraphPolargram, TH1, THistPainter, THStack, TLine, TMarker3DBox, TMarker, TMultiGraph, TNode, TPad, TPaletteAxis, TParallelCoord, TParallelCoordRange, TParallelCoordVar, TParticle, TPave, TPCON, TPie, TPieSlice, TPoints3DABC, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TPrimary, TScatter2D, TScatter, TSPHE, TSpider, TSpline, TStyle, TText, TTreePerfStats, TTUBE, TTUBS, TVirtualHistPainter, and TXTRU.
Definition at line 284 of file TObject.cxx.
|
protectedvirtualinherited |
Interface to ErrorHandler (protected).
Reimplemented in TThread, and TTreeViewer.
Definition at line 1059 of file TObject.cxx.
|
virtualinherited |
Default Draw method for all objects.
Reimplemented in RooAbsData, RooPlot, RooStats::HypoTestInverterPlot, RooStats::SamplingDistPlot, ROOT::Experimental::XRooFit::xRooNLLVar::xRooHypoPoint, ROOT::Experimental::XRooFit::xRooNLLVar::xRooHypoSpace, ROOT::Experimental::XRooFit::xRooNode, ROOT::RGeoPainter, TArrow, TASImage, TBox, TBrowser, TButton, TCanvas, TChain, TClass, TClassTree, TCollection, TColorWheel, TDiamond, TDirectory, TEfficiency, TEllipse, TEveGeoNode, TEveGeoTopNode, TF1, TF2, TF3, TFile, TFITSHDU, TFrame, TGenerator, TGeoBatemanSol, TGeometry, TGeoNode, TGeoOverlap, TGeoPainter, TGeoParallelWorld, TGeoPhysicalNode, TGeoPolygon, TGeoShape, TGeoTrack, TGeoVGShape, TGeoVolume, TGItemContext, TGListTree, TGPicture, TGraph2D, TGraph, TGraphPolar, TGraphPolargram, TGraphStruct, TGraphTime, TH1, THelix, THStack, TLegend, TMarker, TMatrixTBase< Element >, TMatrixTBase< Double_t >, TMatrixTBase< Float_t >, TMultiDimFit, TMultiGraph, TMultiLayerPerceptron, TNode, TNodeDiv, TPad, TParallelCoord, TParallelCoordRange, TParallelCoordVar, TPave, TPaveLabel, TPavesText, TPaveText, TPie, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TRatioPlot, TSpider, TSpline, TStructViewer, TStructViewerGUI, TTree, TTreePerfStats, TVectorT< Element >, TVectorT< Double_t >, TVectorT< Float_t >, TVirtualPad, and TWbox.
Definition at line 293 of file TObject.cxx.
|
virtualinherited |
Draw class inheritance tree of the class to which this object belongs.
If a class B inherits from a class A, description of B is drawn on the right side of description of A. Member functions overridden by B are shown in class A with a blue line crossing-out the corresponding member function. The following picture is the class inheritance tree of class TPaveLabel:
Reimplemented in TGFrame, TSystemDirectory, and TSystemFile.
Definition at line 308 of file TObject.cxx.
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
If pad was not selected - gPad will be used.
Reimplemented in TAxis, TCanvas, TGFrame, TSystemDirectory, and TSystemFile.
Definition at line 319 of file TObject.cxx.
|
virtualinherited |
Dump contents of object on stdout.
Using the information in the object dictionary (class TClass) each data member is interpreted. If a data member is a pointer, the pointer value is printed
The following output is the Dump of a TArrow object:
Reimplemented in TClass, TCollection, TGFrame, TGPack, and TSystemFile.
Definition at line 367 of file TObject.cxx.
|
virtualinherited |
Issue error message.
Use "location" to specify the method where the error occurred. Accepts standard printf formatting arguments.
Reimplemented in TFitResult.
Definition at line 1098 of file TObject.cxx.
|
virtualinherited |
Execute method on this object with the given parameter string, e.g.
"3.14,1,\"text\"".
Reimplemented in ROOT::R::TRInterface, TCling, TContextMenu, TInterpreter, and TMethodCall.
Definition at line 378 of file TObject.cxx.
|
virtualinherited |
Execute method on this object with parameters stored in the TObjArray.
The TObjArray should contain an argv vector like:
Reimplemented in ROOT::R::TRInterface, TCling, TContextMenu, TInterpreter, and TMethodCall.
Definition at line 398 of file TObject.cxx.
Execute action corresponding to an event at (px,py).
This method must be overridden if an object can react to graphics events.
Reimplemented in TASImage, TASPaletteEditor::LimitLine, TAxis3D, TAxis, TBox, TButton, TCanvas, TCrown, TCurlyArc, TCurlyLine, TDiamond, TEfficiency, TEllipse, TF1, TF2, TF3, TFrame, TGenerator, TGeoManager, TGeoNode, TGeoOverlap, TGeoShape, TGeoTrack, TGeoVolume, TGL5DDataSet, TGLEventHandler, TGLHistPainter, TGLParametricEquation, TGLScenePad, TGLTH3Composition, TGLViewer, TGraph2D, TGraph, TGraphEdge, TGraphNode, TGraphPolargram, TGroupButton, TH1, THistPainter, TLine, TLink, TMarker3DBox, TMarker, TNode, TPad, TPaletteAxis, TParallelCoord, TParallelCoordRange, TParallelCoordVar, TParticle, TPave, TPie, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TPrimary, TScatter2D, TScatter, TSliderBox, TSpider, TSpline, TText, TTreePerfStats, TView3D, TView, TVirtualHistPainter, and TWbox.
Definition at line 415 of file TObject.cxx.
Expand (or shrink) the I/O buffer to newsize bytes.
If copy is true (the default), the existing content of the buffer is preserved, otherwise the buffer is returned zero-ed out.
In order to avoid losing data, if the current length is greater than the requested size, we only shrink down to the current length.
Definition at line 222 of file TBuffer.cxx.
|
static |
Convert object into JSON and store in text file Returns size of the produce file Used in TObject::SaveAs().
Definition at line 796 of file TBufferJSON.cxx.
|
static |
Convert object into JSON and store in text file Returns size of the produce file.
Definition at line 876 of file TBufferJSON.cxx.
|
virtualinherited |
Issue fatal error message.
Use "location" to specify the method where the fatal error occurred. Accepts standard printf formatting arguments.
Definition at line 1126 of file TObject.cxx.
|
virtualinherited |
Must be redefined in derived classes.
This function is typically used with TCollections, but can also be used to find an object by name inside this object.
Reimplemented in RooAbsCollection, RooLinkedList, TBtree, TCollection, TDirectory, TFolder, TGeometry, TGraph2D, TGraph, TH1, THashList, THashTable, THbookFile, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TListOfTypes, TMap, TObjArray, TPad, TROOT, TViewPubDataMembers, and TViewPubFunctions.
Definition at line 425 of file TObject.cxx.
Must be redefined in derived classes.
This function is typically used with TCollections, but can also be used to find an object inside this object.
Reimplemented in RooAbsCollection, RooLinkedList, TBtree, TCollection, TDirectory, TFolder, TGeometry, TGraph2D, TGraph, TH1, THashList, THashTable, THbookFile, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TListOfTypes, TMap, TObjArray, TPad, TROOT, TViewPubDataMembers, and TViewPubFunctions.
Definition at line 435 of file TObject.cxx.
|
overridevirtualinherited |
force writing the TStreamerInfo to the file
Implements TBuffer.
Reimplemented in TMessage.
Definition at line 328 of file TBufferIO.cxx.
|
overridevirtualinherited |
Make sure TStreamerInfo is not optimized, otherwise it will not be possible to support schema evolution in read mode.
In case the StreamerInfo has already been computed and optimized, one must disable the option BypassStreamer.
Implements TBuffer.
Definition at line 340 of file TBufferIO.cxx.
|
inlinestatic |
Definition at line 94 of file TBufferJSON.h.
|
inlinestatic |
Definition at line 85 of file TBufferJSON.h.
|
inlineoverridevirtualinherited |
Implements TBuffer.
Definition at line 81 of file TBufferIO.h.
|
staticinherited |
Forward to TROOT::GetClass().
Definition at line 337 of file TBuffer.cxx.
|
staticinherited |
Forward to TROOT::GetClass().
Definition at line 329 of file TBuffer.cxx.
|
staticinherited |
return current printf format for double members, default "%.14e"
Definition at line 829 of file TBufferText.cxx.
|
virtualinherited |
Get option used by the graphics system to draw this object.
Note that before calling object.GetDrawOption(), you must have called object.Draw(..) before in the current pad.
Reimplemented in TBrowser, TFitEditor, TGedFrame, TGFileBrowser, TRootBrowser, and TRootBrowserLite.
Definition at line 445 of file TObject.cxx.
|
staticinherited |
Return destructor only flag.
Definition at line 1196 of file TObject.cxx.
|
staticinherited |
return current printf format for float members, default "%e"
Definition at line 810 of file TBufferText.cxx.
|
staticinherited |
Get default read map size.
Definition at line 571 of file TBufferIO.cxx.
|
staticinherited |
Get default write map size.
Definition at line 579 of file TBufferIO.cxx.
|
virtualinherited |
Returns mime type name of object.
Used by the TBrowser (via TGMimeTypes class). Override for class of which you would like to have different icons for objects of the same class.
Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TASImage, TBranch, TBranchElement, TGeoVolume, TGMainFrame, TKey, TMethodBrowsable, TSystemFile, and TVirtualBranchBrowsable.
Definition at line 472 of file TObject.cxx.
|
finalvirtual |
Return current streamer info element.
Implements TBuffer.
Definition at line 2166 of file TBufferJSON.cxx.
|
overridevirtualinherited |
Return the last TProcessID in the file.
Implements TBuffer.
Definition at line 398 of file TBufferIO.cxx.
|
inlineoverridevirtualinherited |
Implements TBuffer.
Definition at line 91 of file TBufferIO.h.
|
overridevirtualinherited |
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.
Implements TBuffer.
Definition at line 259 of file TBufferIO.cxx.
|
virtualinherited |
Returns name of object.
This default method returns the class name. Classes that give objects a name should override this method.
Reimplemented in RooAbsCollection, RooCatType, RooLinkedList, TArchiveMember, TCollection, TEnvRec, TEveGeoNode, TGaxis, TGeoDecayChannel, TGeoShape, TGeoVGShape, TGLEmbeddedViewer, TGLPShapeObj, TGLSAViewer, TGMenuEntry, TGMenuTitle, TGPicture, TGWindow, TIconBoxThumb, TMapFile, TMVA::DataSetInfo, TMVA::FitterBase, TMVA::MethodBase, TMVA::OptionBase, TMVA::PDF, TMVA::Reader, TMVA::VariableTransformBase, TNamed, TObjString, TPad, TPair, TParameter< AParamType >, TParameter< Long64_t >, TParticle, TPave, TPolyMarker3D, TPrimary, TQCommand, TQConnection, TQSlot, TRealData, TSQLClassColumnInfo, TSQLClassInfo, TSQLColumnData, TStatistic, TStructNode, TTreePerfStats, TTVRecord, TTVSession, TVirtualGeoTrack, TVirtualPad, and TXMLAttr.
Definition at line 462 of file TObject.cxx.
Returns string containing info about the object at position (px,py).
This method is typically overridden by classes of which the objects can report peculiarities for different positions. Returned string will be re-used (lock in MT environment).
Reimplemented in TASImage, TAxis3D, TColorWheel, TF1, TF2, TFileDrawMap, TGeoNode, TGeoTrack, TGeoVolume, TGL5DDataSet, TGLHistPainter, TGLParametricEquation, TGLTH3Composition, TGraph, TH1, THistPainter, TNode, TPaletteAxis, TParallelCoordVar, and TVirtualHistPainter.
Definition at line 491 of file TObject.cxx.
|
staticinherited |
Get status of object stat flag.
Definition at line 1181 of file TObject.cxx.
|
protectedinherited |
Returns tag for specified object from objects map (if exists) Returns 0 if object not included into objects map.
Definition at line 276 of file TBufferIO.cxx.
|
inlinevirtualinherited |
Reimplemented in TArrow, TAxis3D, TFile, TGaxis, TGeoVolume, TH1, THelix, TLegendEntry, TMapFile, TNode, TPave, TPoints3DABC, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TPSocket, TSelector, TSocket, and TUDPSocket.
|
inherited |
Return pointer to parent of this buffer.
Definition at line 261 of file TBuffer.cxx.
|
inlineoverridevirtualinherited |
Implements TBuffer.
Definition at line 79 of file TBufferIO.h.
|
inherited |
Return the reallocation method currently used.
Definition at line 276 of file TBuffer.cxx.
|
virtualinherited |
Returns title of object.
This default method returns the class title (i.e. description). Classes that give objects a title should override this method.
Reimplemented in Axis2, TASImage, TAxis, TBaseClass, TClassMenuItem, TEveGeoNode, TEvePointSet, TGaxis, TGGroupFrame, TGLabel, TGLVEntry, TGTextButton, TGTextEntry, TGTextLBEntry, TKey, TMapFile, TNamed, TPad, TPair, TParallelCoordSelect, TParticle, TPaveLabel, TPrimary, TQCommand, TRootIconList, and TVirtualPad.
Definition at line 507 of file TObject.cxx.
|
overridevirtualinherited |
Return the exec id stored in the current TStreamerInfo element.
The execid has been saved in the unique id of the TStreamerElement being read by TStreamerElement::Streamer. The current element (fgElement) is set as a static global by TStreamerInfo::ReadBuffer (Clones) when reading this TRef.
Implements TBuffer.
Definition at line 446 of file TBufferIO.cxx.
|
virtualinherited |
Return the unique object id.
Definition at line 480 of file TObject.cxx.
|
overridevirtualinherited |
Return the version number of the owner file.
Implements TBuffer.
Definition at line 76 of file TBufferIO.cxx.
Execute action in response of a timer timing out.
This method must be overridden if an object has to react to timers.
Reimplemented in TGCommandPlugin, TGDNDManager, TGFileContainer, TGHtml, TGLEventHandler, TGPopupMenu, TGraphTime, TGScrollBar, TGShutter, TGTextEdit, TGTextEditor, TGTextEntry, TGTextView, TGToolTip, TGuiBldDragManager, TGWindow, and TTreeViewer.
Definition at line 516 of file TObject.cxx.
|
virtualinherited |
Return hash value for this object.
Note: If this routine is overloaded in a derived class, this derived class should also add
Otherwise, when RecursiveRemove is called (by ~TObject or example) for this type of object, the transversal of THashList and THashTable containers will will have to be done without call Hash (and hence be linear rather than logarithmic complexity). You will also see warnings like
Reimplemented in RooLinkedList, TASImagePlugin, TASPluginGS, TCollection, TEnvRec, TGObject, TGPicture, TIconBoxThumb, TImagePlugin, TNamed, TObjString, TPad, TPair, TParameter< AParamType >, TParameter< Long64_t >, TPave, and TStatistic.
Definition at line 539 of file TObject.cxx.
|
inlineinherited |
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
missing call to RecursiveRemove in destructor).
Note: Since the consistency is only tested for during inserts, this routine will return true for object that have never been inserted whether or not they have a consistent setup. This has no negative side-effect as searching for the object with the right or wrong Hash will always yield a not-found answer (Since anyway no hash can be guaranteed unique, there is always a check)
|
finalvirtual |
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 2088 of file TBufferJSON.cxx.
|
virtualinherited |
Issue info message.
Use "location" to specify the method where the warning occurred. Accepts standard printf formatting arguments.
Definition at line 1072 of file TObject.cxx.
|
virtualinherited |
Returns kTRUE if object inherits from class "classname".
Reimplemented in TClass.
Definition at line 549 of file TObject.cxx.
Returns kTRUE if object inherits from TClass cl.
Reimplemented in TClass.
Definition at line 557 of file TObject.cxx.
|
overridevirtualinherited |
Create the fMap container and initialize them with the null object.
Implements TBuffer.
Definition at line 128 of file TBufferIO.cxx.
|
virtualinherited |
Dump contents of this object in a graphics canvas.
Same action as Dump but in a graphical form. In addition pointers to other objects can be followed.
The following picture is the Inspect of a histogram object:
Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TGFrame, TInspectorObject, and TSystemFile.
Definition at line 570 of file TObject.cxx.
|
inlineoverridevirtual |
Reimplemented from TBufferIO.
Definition at line 337 of file TBufferJSON.h.
|
inlineinherited |
IsDestructed.
Default equal comparison (objects are equal if they have the same address in memory).
More complicated classes might want to override this function.
Reimplemented in TGObject, TObjString, TPair, and TQCommand.
Definition at line 589 of file TObject.cxx.
|
virtualinherited |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
Reimplemented in ROOT::Experimental::XRooFit::xRooNode, ROOT::Internal::THnBaseBrowsable, TApplicationRemote, TAxis3D, TBaseClass, TBranch, TBranchClones, TBranchElement, TBranchObject, TBranchSTL, TBrowserObject, TCanvas, TClass, TCollection, TDatabasePDG, TDirectory, TFolder, TGeoManager, TGeometry, TGeoNode, TGeoNodeMatrix, TGeoOverlap, TGeoTrack, TGeoVolume, THbookFile, THbookKey, THnBase, TKey, TMapFile, TMultiDimFit, TNode, TPad, TPair, TParticleClassPDG, TPrincipal, TRemoteObject, TROOT, TRootIconList, TSPlot, TSystemDirectory, TTask, TTree, and TVirtualBranchBrowsable.
Definition at line 579 of file TObject.cxx.
Returns true if class info will be skipped from JSON.
Definition at line 651 of file TBufferJSON.cxx.
|
inlinevirtualinherited |
Reimplemented in RooAbsArg, RooDouble, TCollection, TFileInfo, TGeoBranchArray, TGeoOverlap, TGFSFrameElement, TGLBFrameElement, TNamed, TObjString, TParameter< AParamType >, TParameter< Long64_t >, TPave, TStructNode, TStructNodeProperty, TUri, and TUrl.
|
protected |
disable post-processing of the code
Definition at line 1329 of file TBufferJSON.cxx.
|
protected |
If value exists, push in the current stack for post-processing.
Definition at line 2608 of file TBufferJSON.cxx.
|
protected |
Read static array from JSON - not used.
Definition at line 2722 of file TBufferJSON.cxx.
|
protected |
Template function to read basic value from JSON.
Definition at line 3638 of file TBufferJSON.cxx.
|
protected |
read content of ROOT collection
Definition at line 1750 of file TBufferJSON.cxx.
|
protected |
Template method to read array from the JSON.
Definition at line 2836 of file TBufferJSON.cxx.
|
protected |
Read object from current JSON node.
Definition at line 1851 of file TBufferJSON.cxx.
|
protected |
Read TObject data members from JSON.
Do not call TObject::Streamer() to avoid special tweaking of TBufferJSON interface
Definition at line 2063 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 1338 of file TBufferJSON.cxx.
|
protected |
Start new class member in JSON structures.
Definition at line 1265 of file TBufferJSON.cxx.
|
protected |
Start object element with typeinfo.
Definition at line 1231 of file TBufferJSON.cxx.
|
protected |
Definition at line 3118 of file TBufferJSON.cxx.
|
protected |
converts Bool_t to string and add to json value buffer
Definition at line 4091 of file TBufferJSON.cxx.
|
protected |
converts Char_t to string and add to json value buffer
Definition at line 3999 of file TBufferJSON.cxx.
|
protected |
converts Double_t to string and add to json value buffer
Definition at line 4069 of file TBufferJSON.cxx.
|
protected |
converts Float_t to string and add to json value buffer
Definition at line 4047 of file TBufferJSON.cxx.
|
protected |
converts Int_t to string and add to json value buffer
Definition at line 4019 of file TBufferJSON.cxx.
|
protected |
converts Long64_t to string and add to json value buffer
Definition at line 4039 of file TBufferJSON.cxx.
|
protected |
converts Long_t to string and add to json value buffer
Definition at line 4029 of file TBufferJSON.cxx.
|
protected |
converts Short_t to string and add to json value buffer
Definition at line 4009 of file TBufferJSON.cxx.
|
protected |
converts UChar_t to string and add to json value buffer
Definition at line 4099 of file TBufferJSON.cxx.
|
protected |
converts UInt_t to string and add to json value buffer
Definition at line 4119 of file TBufferJSON.cxx.
|
protected |
converts ULong64_t to string and add to json value buffer
Definition at line 4139 of file TBufferJSON.cxx.
|
protected |
converts ULong_t to string and add to json value buffer
Definition at line 4129 of file TBufferJSON.cxx.
|
protected |
converts UShort_t to string and add to json value buffer
Definition at line 4109 of file TBufferJSON.cxx.
|
protected |
store content of ROOT collection
Definition at line 1659 of file TBufferJSON.cxx.
|
protected |
writes string value, processing all kind of special characters
Definition at line 4147 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 3342 of file TBufferJSON.cxx.
|
protected |
Convert single data member to JSON structures Note; if data member described by 'member'is pointer, ptr should be the value of the pointer, not the address of the pointer.
Returns string with converted member
Definition at line 1054 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 1376 of file TBufferJSON.cxx.
|
virtualinherited |
The ls function lists the contents of a class on stdout.
Ls output is typically much less verbose then Dump().
Reimplemented in ROOT::Detail::TSchemaRuleSet, ROOT::Experimental::XRooFit::xRooBrowser, ROOT::TSchemaRule, TAnnotation, TApplication, TBox, TCanvas, TChain, TChainElement, TClass, TClassTree, TCollection, TColor, TDirectory, TDirectoryFile, TEllipse, TFile, TFolder, TFree, TFriendElement, TFunction, TGeometry, TGeoNode, TGFrameElement, TGLayoutHints, THbookFile, THStack, TImage, TKey, TLine, TMapFile, TMarker, TNamed, TNode, TPad, TParameter< AParamType >, TParameter< Long64_t >, TPave, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TQCommand, TQConnection, TQConnectionList, TQSlot, TQUndoManager, TROOT, TStatistic, TStreamerBase, TStreamerElement, TStreamerInfo, TStreamerSTL, TTask, TText, TVirtualPad, and TVirtualStreamerInfo.
Definition at line 598 of file TObject.cxx.
Add object to the fMap container.
If obj is not 0 add object to the map (in read mode also add 0 objects to the map). This method may only be called outside this class just before calling obj->Streamer() to prevent self reference of obj, in case obj contains (via via) a pointer to itself. In that case offset must be 1 (default value for offset).
Implements TBuffer.
Definition at line 162 of file TBufferIO.cxx.
|
overridevirtualinherited |
Add object to the fMap container.
If obj is not 0 add object to the map (in read mode also add 0 objects to the map). This method may only be called outside this class just before calling obj->Streamer() to prevent self reference of obj, in case obj contains (via via) a pointer to itself. In that case offset must be 1 (default value for offset).
Implements TBuffer.
Definition at line 195 of file TBufferIO.cxx.
|
inherited |
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).
Definition at line 1160 of file TObject.cxx.
|
virtualinherited |
This method must be overridden to handle object notification (the base implementation is no-op).
Different objects in ROOT use the Notify method for different purposes, in coordination with other objects that call this method at the appropriate time.
For example, TLeaf uses it to load class information; TBranchRef to load contents of referenced branches TBranchRef; most notably, based on Notify, TChain implements a callback mechanism to inform interested parties when it switches to a new sub-tree.
Reimplemented in h1analysis, h1analysisTreeReader, TARInterruptHandler, TASInputHandler, TASInterruptHandler, TASLogHandler, TASSigPipeHandler, TBlinkTimer, TBranchElement, TBranchRef, TBreakLineCom, TBrowserTimer, TCollection, TDelCharCom, TDelTextCom, TFileHandler, TGContainerKeyboardTimer, TGContainerScrollTimer, TGInputHandler, TGLRedrawTimer, TGTextEditHist, TGuiBldDragManagerRepeatTimer, TIdleTimer, TInsCharCom, TInsTextCom, TInterruptHandler, TLeafObject, TMessageHandler, TNotifyLink< Type >, TNotifyLink< RNoCleanupNotifierHelper >, TNotifyLink< ROOT::Detail::TBranchProxy >, TNotifyLink< TTreeReader >, TPopupDelayTimer, TProcessEventTimer, TRefTable, TRepeatTimer, TSBRepeatTimer, TSelector, TSelectorDraw, TSelectorEntries, TSignalHandler, TSingleShotCleaner, TSocketHandler, TStdExceptionHandler, TSysEvtHandler, TTermInputHandler, TThreadTimer, TTimeOutTimer, TTimer, TTipDelayTimer, TTree, TTreeFormula, TTreeFormulaManager, TTreeReader, TViewTimer, and TViewUpdateTimer.
Definition at line 618 of file TObject.cxx.
|
inherited |
Use this method to declare a method obsolete.
Specify as of which version the method is obsolete and as from which version it will be removed.
Definition at line 1169 of file TObject.cxx.
|
inherited |
Operator delete for sized deallocation.
Definition at line 1234 of file TObject.cxx.
|
inherited |
Operator delete.
Definition at line 1212 of file TObject.cxx.
|
inherited |
Only called by placement new when throwing an exception.
Definition at line 1266 of file TObject.cxx.
|
inherited |
Operator delete [] for sized deallocation.
Definition at line 1245 of file TObject.cxx.
|
inherited |
Operator delete [].
Definition at line 1223 of file TObject.cxx.
|
inherited |
Only called by placement new[] when throwing an exception.
Definition at line 1274 of file TObject.cxx.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
virtualinherited |
This method must be overridden if a class wants to paint itself.
The difference between Paint() and Draw() is that when a object draws itself it is added to the display list of the pad in which it is drawn (and automatically redrawn whenever the pad is redrawn). While paint just draws the object without adding it to the pad display list.
Reimplemented in ROOT::Experimental::RTreeMapPainter, ROOT::RGeoPainter, TAnnotation, TArrow, TASImage, TASPaletteEditor::LimitLine, TASPaletteEditor::PaintPalette, TAxis3D, TBits, TBox, TButton, TCanvas, TClassTree, TCollection, TColorWheel, TCrown, TDiamond, TDirectory, TEfficiency, TEllipse, TEveArrow, TEveCaloViz, TEveDigitSet, TEveGeoShape, TEveGeoTopNode, TEvePlot3D, TEvePointSet, TEveProjectionAxes, TEveScene, TEveShape, TEveStraightLineSet, TEveText, TEveTriangleSet, TExec, TF1, TF2, TF3, TFile, TFileDrawMap, TFrame, TGaxis, TGenerator, TGeoBoolNode, TGeoIntersection, TGeoNode, TGeoOverlap, TGeoPainter, TGeoPhysicalNode, TGeoShape, TGeoSubtraction, TGeoTrack, TGeoUnion, TGeoVGShape, TGeoVolume, TGL5DDataSet, TGLHistPainter, TGLParametricEquation, TGLTH3Composition, TGraph2D, TGraph2DPainter, TGraph, TGraphEdge, TGraphNode, TGraphPolargram, TGraphTime, TH1, THistPainter, THStack, TLatex, TLegend, TLine, TMacro, TMarker3DBox, TMarker, TMathText, TMultiGraph, TNode, TNodeDiv, TPad, TPaletteAxis, TParallelCoord, TParallelCoordRange, TParallelCoordVar, TParticle, TPave, TPaveLabel, TPaveStats, TPavesText, TPaveText, TPie, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TPrimary, TRatioPlot, TScatter2D, TScatter, TShape, TSpectrum2Painter, TSpider, TSpline, TSQLFile, TStyle, TText, TTreePerfStats, TVirtualGeoPainter, TVirtualGeoTrack, TVirtualHistPainter, TVirtualPad, TWbox, and TXMLFile.
Definition at line 631 of file TObject.cxx.
|
virtualinherited |
Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members.
Definition at line 372 of file TBuffer.cxx.
|
protected |
Function is converts TObject and TString structures to more compact representation.
Definition at line 2415 of file TBufferJSON.cxx.
|
virtualinherited |
Pop on object drawn in a pad to the top of the display list.
I.e. it will be drawn last and on top of all other primitives.
Reimplemented in TFrame, TPad, and TVirtualPad.
Definition at line 640 of file TObject.cxx.
|
virtualinherited |
Pop and Return the 'current' data cache area from the list of area to be used for temporarily store 'missing' data members.
Definition at line 382 of file TBuffer.cxx.
|
protected |
remove one level from stack
Definition at line 1198 of file TBufferJSON.cxx.
|
virtualinherited |
This method must be overridden when a class wants to print itself.
Reimplemented in Roo1DTable, RooAbsArg, RooAbsBinning, RooAbsCollection, RooAbsData, RooAbsDataStore, RooAbsGenContext, RooCatType, RooCmdArg, RooCurve, RooEllipse, RooFitResult, RooGenFitStudy, RooHist, RooLinkedList, RooMsgService, RooNumGenConfig, RooNumIntConfig, RooPlot, RooSharedProperties, RooStats::ModelConfig, ROOT::Experimental::REveTrans, ROOT::Experimental::XRooFit::xRooNLLVar::xRooHypoPoint, ROOT::Experimental::XRooFit::xRooNLLVar::xRooHypoSpace, ROOT::Experimental::XRooFit::xRooNode, ROOT::v5::TFormula, RooWorkspace, TAnnotation, TApplicationRemote, TAttParticle, TBenchmark, TBits, TBox, TBranch, TBranchClones, TBranchElement, TBranchObject, TBranchRef, TBranchSTL, TChain, TClassTable, TCling, TCollection, TColor, TDatabasePDG, TDecompBase, TDecompBK, TDecompChol, TDecompLU, TDecompQRH, TDecompSparse, TDecompSVD, TDirectory, TEllipse, TEnv, TEventList, TEveTrans, TF1, TFile, TFileCacheRead, TFileCacheWrite, TFileCollection, TFileInfo, TFileInfoMeta, TFitResult, TFoamCell, TFoamVect, TFormula, TFunction, TGCompositeFrame, TGDMLMatrix, TGeoBatemanSol, TGeoBorderSurface, TGeoBranchArray, TGeoDecayChannel, TGeoElement, TGeoElementRN, TGeoElementTable, TGeoIsotope, TGeoMatrix, TGeoOpticalSurface, TGeoOverlap, TGeoPhysicalNode, TGeoRegion, TGeoSkinSurface, TGeoTessellated, TGeoTrack, TGeoVolume, TGeoVoxelFinder, TGFont, TGFontPool, TGFrame, TGFrameElement, TGGC, TGGCPool, TGLayoutHints, TGMimeTypes, TGPicture, TGPicturePool, TGraph2D, TGraph2DAsymmErrors, TGraph2DErrors, TGraph, TGraphAsymmErrors, TGraphBentErrors, TGraphErrors, TGraphMultiErrors, TGTextEdit, TGWindow, TH1, THashTable, THbookTree, THelix, THnBase, THStack, TInetAddress, TKey, TLegend, TLegendEntry, TLine, TLorentzVector, TMacro, TMapFile, TMarker, TMatrixTBase< Element >, TMatrixTBase< Double_t >, TMatrixTBase< Float_t >, TMemFile, TMessageHandler, TMultiDimFit, TMultiGraph, TMVA::Event, TMVA::Option< T >, TMVA::Option< T * >, TMVA::OptionBase, TMVA::PDEFoamCell, TMVA::PDEFoamVect, TMVA::TNeuron, TNamed, TObjectTable, TObjString, TPad, TParallelCoordRange, TParallelCoordVar, TParameter< AParamType >, TParameter< Long64_t >, TParticle, TParticleClassPDG, TParticlePDG, TPave, TPaveText, TPluginHandler, TPluginManager, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TPrimary, TPrincipal, TQpDataDens, TQpDataSparse, TQpVar, TQSlot, TQuaternion, TRolke, TRootBrowserHistoryCursor, TScatter2D, TScatter, TSpectrum2, TSpectrum3, TSpectrum, TSQLColumnInfo, TSQLFile, TSQLStructure, TSQLTableInfo, TStatistic, TStopwatch, TStreamerInfoActions::TActionSequence, TText, TTree, TTreeCache, TTreeCacheUnzip, TTreeIndex, TTreePerfStats, TUri, TUrl, TVector2, TVector3, TVectorT< Element >, TVectorT< Double_t >, TVectorT< Float_t >, TVirtualPad, TXMLFile, TXTRU, TZIPFile, and TZIPMember.
Definition at line 661 of file TObject.cxx.
|
virtualinherited |
Push a new data cache area onto the list of area to be used for temporarily store 'missing' data members.
Definition at line 363 of file TBuffer.cxx.
|
protected |
add new level to the structures stack
Definition at line 1180 of file TBufferJSON.cxx.
|
inlineoverrideprotectedvirtualinherited |
Read contents of object with specified name from the current directory.
First the key with the given name is searched in the current directory, next the key buffer is deserialized into the object. The object must have been created before via the default constructor. See TObject::Write().
Reimplemented from TObject.
Read array of Bool_t from buffer.
Implements TBuffer.
Definition at line 2617 of file TBufferJSON.cxx.
Read array of Char_t from buffer.
Implements TBuffer.
Definition at line 2625 of file TBufferJSON.cxx.
Read array of Double_t from buffer.
Implements TBuffer.
Definition at line 2713 of file TBufferJSON.cxx.
Read array of Float_t from buffer.
Implements TBuffer.
Definition at line 2705 of file TBufferJSON.cxx.
Read array of Int_t from buffer.
Implements TBuffer.
Definition at line 2657 of file TBufferJSON.cxx.
Read array of Long64_t from buffer.
Implements TBuffer.
Definition at line 2689 of file TBufferJSON.cxx.
Read array of Long_t from buffer.
Implements TBuffer.
Definition at line 2673 of file TBufferJSON.cxx.
Read array of Short_t from buffer.
Implements TBuffer.
Definition at line 2641 of file TBufferJSON.cxx.
Read array of UChar_t from buffer.
Implements TBuffer.
Definition at line 2633 of file TBufferJSON.cxx.
Read array of UInt_t from buffer.
Implements TBuffer.
Definition at line 2665 of file TBufferJSON.cxx.
Read array of ULong64_t from buffer.
Implements TBuffer.
Definition at line 2697 of file TBufferJSON.cxx.
Read array of ULong_t from buffer.
Implements TBuffer.
Definition at line 2681 of file TBufferJSON.cxx.
Read array of UShort_t from buffer.
Implements TBuffer.
Definition at line 2649 of file TBufferJSON.cxx.
|
overridevirtualinherited |
Read array of Double32_t from buffer.
Implements TBuffer.
Definition at line 576 of file TBufferText.cxx.
|
overridevirtualinherited |
Read array of Float16_t from buffer.
Implements TBuffer.
Definition at line 568 of file TBufferText.cxx.
|
finalvirtual |
Read data of base class.
Reimplemented from TBufferText.
Definition at line 4203 of file TBufferJSON.cxx.
|
finalvirtual |
Reads Bool_t value from buffer.
Implements TBuffer.
Definition at line 3646 of file TBufferJSON.cxx.
Implements TBuffer.
Definition at line 84 of file TBufferText.h.
|
finalvirtual |
Reads Char_t value from buffer.
Implements TBuffer.
Definition at line 3654 of file TBufferJSON.cxx.
|
finalvirtual |
Reads array of characters from buffer.
Implements TBuffer.
Definition at line 3792 of file TBufferJSON.cxx.
|
finalvirtual |
|
overridevirtualinherited |
Deserialize information from a buffer into an object.
Note: This function is called by the xxx::Streamer() functions in rootcling-generated dictionaries.
Implements TBuffer.
Definition at line 327 of file TBufferText.cxx.
|
overridevirtualinherited |
Deserialize information from a buffer into an object.
Note: This function is called by the xxx::Streamer() functions in rootcling-generated dictionaries. This function assumes that the class version and the byte count information have been read.
| [in] | cl | pointer to the local TClass |
| [out] | pointer | void pointer to object |
| [in] | version | The version number of the class |
| [in] | start | The starting position in the buffer b |
| [in] | count | The number of bytes for this object in the buffer |
| [in] | onFileClass | pointer to TClass object on file |
Implements TBuffer.
Definition at line 239 of file TBufferText.cxx.
|
inlinefinalvirtualinherited |
Implements TBuffer.
Definition at line 116 of file TBufferText.h.
|
overridevirtualinherited |
Interface to TStreamerInfo::ReadBufferClones.
Implements TBuffer.
Definition at line 371 of file TBufferIO.cxx.
|
finalvirtual |
Reads Double_t value from buffer.
Implements TBuffer.
Definition at line 3766 of file TBufferJSON.cxx.
|
finalvirtualinherited |
read a Double32_t from the buffer
Implements TBuffer.
Definition at line 500 of file TBufferText.cxx.
read array of Bool_t from buffer
Implements TBuffer.
Definition at line 2917 of file TBufferJSON.cxx.
read array of Char_t from buffer
Implements TBuffer.
Definition at line 2925 of file TBufferJSON.cxx.
read array of Double_t from buffer
Implements TBuffer.
Definition at line 3021 of file TBufferJSON.cxx.
read array of Float_t from buffer
Implements TBuffer.
Definition at line 3013 of file TBufferJSON.cxx.
read array of Int_t from buffer
Implements TBuffer.
Definition at line 2965 of file TBufferJSON.cxx.
read array of Long64_t from buffer
Implements TBuffer.
Definition at line 2997 of file TBufferJSON.cxx.
read array of Long_t from buffer
Implements TBuffer.
Definition at line 2981 of file TBufferJSON.cxx.
read array of Short_t from buffer
Implements TBuffer.
Definition at line 2949 of file TBufferJSON.cxx.
read array of UChar_t from buffer
Implements TBuffer.
Definition at line 2941 of file TBufferJSON.cxx.
read array of UInt_t from buffer
Implements TBuffer.
Definition at line 2973 of file TBufferJSON.cxx.
read array of ULong64_t from buffer
Implements TBuffer.
Definition at line 3005 of file TBufferJSON.cxx.
read array of ULong_t from buffer
Implements TBuffer.
Definition at line 2989 of file TBufferJSON.cxx.
read array of UShort_t from buffer
Implements TBuffer.
Definition at line 2957 of file TBufferJSON.cxx.
|
finalvirtual |
redefined here to avoid warning message from gcc
Implements TBuffer.
Definition at line 3072 of file TBufferJSON.cxx.
|
finalvirtual |
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 3032 of file TBufferJSON.cxx.
|
finalvirtualinherited |
read array of Double32_t from buffer
Implements TBuffer.
Definition at line 624 of file TBufferText.cxx.
|
finalvirtualinherited |
read array of Float16_t from buffer
Implements TBuffer.
Definition at line 600 of file TBufferText.cxx.
read array of Char_t from buffer
Implements TBuffer.
Definition at line 2933 of file TBufferJSON.cxx.
|
finalvirtualinherited |
read array of Double32_t from buffer
Implements TBuffer.
Definition at line 632 of file TBufferText.cxx.
|
finalvirtualinherited |
read array of Float16_t from buffer
Implements TBuffer.
Definition at line 608 of file TBufferText.cxx.
|
finalvirtualinherited |
read array of Double32_t from buffer
Implements TBuffer.
Definition at line 640 of file TBufferText.cxx.
|
finalvirtualinherited |
read array of Float16_t from buffer
Implements TBuffer.
Definition at line 616 of file TBufferText.cxx.
|
finalvirtual |
Reads Float_t value from buffer.
Implements TBuffer.
Definition at line 3740 of file TBufferJSON.cxx.
|
finalvirtualinherited |
read a Float16_t from the buffer
Implements TBuffer.
Definition at line 492 of file TBufferText.cxx.
|
finalvirtual |
|
finalvirtual |
Reads Long_t value from buffer.
Implements TBuffer.
Definition at line 3708 of file TBufferJSON.cxx.
|
finalvirtual |
Reads Long64_t value from buffer.
Implements TBuffer.
Definition at line 3724 of file TBufferJSON.cxx.
Implements TBuffer.
Definition at line 109 of file TBufferText.h.
|
finalvirtual |
Read object from buffer. Only used from TBuffer.
Implements TBuffer.
Definition at line 2581 of file TBufferJSON.cxx.
|
overridevirtualinherited |
The TProcessID with number pidf is read from file.
If the object is not already entered in the gROOT list, it is added.
Implements TBuffer.
Definition at line 421 of file TBufferIO.cxx.
|
finalvirtual |
Reads Short_t value from buffer.
Implements TBuffer.
Definition at line 3673 of file TBufferJSON.cxx.
Read array of Bool_t from buffer.
Implements TBuffer.
Definition at line 2731 of file TBufferJSON.cxx.
Read array of Char_t from buffer.
Implements TBuffer.
Definition at line 2739 of file TBufferJSON.cxx.
Read array of Double_t from buffer.
Implements TBuffer.
Definition at line 2827 of file TBufferJSON.cxx.
Read array of Float_t from buffer.
Implements TBuffer.
Definition at line 2819 of file TBufferJSON.cxx.
Read array of Int_t from buffer.
Implements TBuffer.
Definition at line 2771 of file TBufferJSON.cxx.
Read array of Long64_t from buffer.
Implements TBuffer.
Definition at line 2803 of file TBufferJSON.cxx.
Read array of Long_t from buffer.
Implements TBuffer.
Definition at line 2787 of file TBufferJSON.cxx.
Read array of Short_t from buffer.
Implements TBuffer.
Definition at line 2755 of file TBufferJSON.cxx.
Read array of UChar_t from buffer.
Implements TBuffer.
Definition at line 2747 of file TBufferJSON.cxx.
Read array of UInt_t from buffer.
Implements TBuffer.
Definition at line 2779 of file TBufferJSON.cxx.
Read array of ULong64_t from buffer.
Implements TBuffer.
Definition at line 2811 of file TBufferJSON.cxx.
Read array of ULong_t from buffer.
Implements TBuffer.
Definition at line 2795 of file TBufferJSON.cxx.
Read array of UShort_t from buffer.
Implements TBuffer.
Definition at line 2763 of file TBufferJSON.cxx.
|
finalvirtualinherited |
Read array of Double32_t from buffer.
Implements TBuffer.
Definition at line 592 of file TBufferText.cxx.
|
finalvirtualinherited |
Read array of Float16_t from buffer.
Implements TBuffer.
Definition at line 584 of file TBufferText.cxx.
|
inlinevirtual |
|
finalvirtual |
|
inlinefinalvirtualinherited |
Implements TBuffer.
Definition at line 91 of file TBufferText.h.
|
finalvirtual |
|
finalvirtual |
Reads UChar_t value from buffer.
Implements TBuffer.
Definition at line 3665 of file TBufferJSON.cxx.
|
finalvirtual |
Reads UInt_t value from buffer.
Implements TBuffer.
Definition at line 3700 of file TBufferJSON.cxx.
|
finalvirtual |
Reads ULong_t value from buffer.
Implements TBuffer.
Definition at line 3716 of file TBufferJSON.cxx.
|
finalvirtual |
Reads ULong64_t value from buffer.
Implements TBuffer.
Definition at line 3732 of file TBufferJSON.cxx.
|
finalvirtual |
Reads UShort_t value from buffer.
Implements TBuffer.
Definition at line 3681 of file TBufferJSON.cxx.
|
inlinefinalvirtualinherited |
Implements TBuffer.
Definition at line 98 of file TBufferText.h.
Implements TBuffer.
Definition at line 82 of file TBufferText.h.
|
finalvirtualinherited |
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().
Currently TBufferText does not optimize space in this case.
Implements TBuffer.
Definition at line 533 of file TBufferText.cxx.
|
finalvirtualinherited |
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().
Currently TBufferText does not optimize space in this case.
Implements TBuffer.
Definition at line 511 of file TBufferText.cxx.
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().
Currently TBufferText does not optimize space in this case.
Implements TBuffer.
Definition at line 544 of file TBufferText.cxx.
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().
Currently TBufferText does not optimize space in this case.
Implements TBuffer.
Definition at line 522 of file TBufferText.cxx.
|
virtualinherited |
Recursively remove this object from a list.
Typically implemented by classes that can contain multiple references to a same object.
Reimplemented in RooAbsCollection, RooAbsData, RooLinkedList, RooMCStudy, ROOT::Internal::TCheckHashRecursiveRemoveConsistency, ROOT::RBrowserDataCleanup, RooWorkspace, TBrowser, TChain, TCling, TCollection, TDialogCanvas, TDirectory, TEfficiency, TFileMerger, TFitEditor, TFolder, TFriendElement, TGedEditor, TGeometry, TGFileBrowser, TGraph2D, TGraph, TH1, TH1Editor, TH2Editor, THashList, THistPainter, THStack, TInspectCanvas, TLegend, TList, TListOfDataMembers, TListOfEnums, TListOfEnumsWithLock, TListOfFunctions, TListOfFunctionTemplates, TMultiGraph, TNode, TObjArray, TObjectRefSpy, TObjectSpy, TPad, TProcessID, TROOT, TRootBrowser, TRootBrowserHistory, TRootBrowserLite, TRootContextMenu, TTree, TTreePlayer, TViewPubDataMembers, TViewPubFunctions, and TVirtualPad.
Definition at line 684 of file TObject.cxx.
|
overridevirtualinherited |
Reset buffer object. Resets map and buffer offset.
Implements TBuffer.
Reimplemented in TMessage.
Definition at line 304 of file TBufferIO.cxx.
|
overridevirtualinherited |
Delete existing fMap and reset map counter.
Implements TBuffer.
Definition at line 287 of file TBufferIO.cxx.
| void * TBufferJSON::RestoreObject | ( | const char * | str, |
| TClass ** | cl ) |
Read object from JSON 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 991 of file TBufferJSON.cxx.
|
virtualinherited |
Save this object in the file specified by filename.
otherwise the object is written to filename as a CINT/C++ script. The C++ code to rebuild this object is generated via SavePrimitive(). The "option" parameter is passed to SavePrimitive. By default it is an empty string. It can be used to specify the Draw option in the code generated by SavePrimitive.
The function is available via the object context menu.
Reimplemented in ROOT::Experimental::XRooFit::xRooNode, TClassTree, TFolder, TGeoVolume, TGObject, TGraph, TH1, TPad, TPaveClass, TSpline3, TSpline5, TSpline, TTreePerfStats, and TVirtualPad.
Definition at line 708 of file TObject.cxx.
|
virtualinherited |
Save a primitive as a C++ statement(s) on output stream "out".
Reimplemented in TAnnotation, TArc, TArrow, TASImage, TAxis3D, TBox, TButton, TCanvas, TChain, TCrown, TCurlyArc, TCurlyLine, TCutG, TDiamond, TEfficiency, TEllipse, TExec, TF12, TF1, TF2, TF3, TFrame, TGaxis, TGButton, TGButtonGroup, TGCanvas, TGCheckButton, TGColorSelect, TGColumnLayout, TGComboBox, TGCompositeFrame, TGContainer, TGDockableFrame, TGDoubleHSlider, TGDoubleVSlider, TGedMarkerSelect, TGedPatternSelect, TGeoArb8, TGeoBBox, TGeoBoolNode, TGeoCombiTrans, TGeoCompositeShape, TGeoCone, TGeoConeSeg, TGeoCtub, TGeoDecayChannel, TGeoElementRN, TGeoEltu, TGeoGtra, TGeoHalfSpace, TGeoHMatrix, TGeoHype, TGeoIdentity, TGeoIntersection, TGeoMaterial, TGeoMedium, TGeoMixture, TGeoPara, TGeoParaboloid, TGeoPatternCylPhi, TGeoPatternCylR, TGeoPatternParaX, TGeoPatternParaY, TGeoPatternParaZ, TGeoPatternSphPhi, TGeoPatternSphR, TGeoPatternSphTheta, TGeoPatternTrapZ, TGeoPatternX, TGeoPatternY, TGeoPatternZ, TGeoPcon, TGeoPgon, TGeoRotation, TGeoScaledShape, TGeoShapeAssembly, TGeoSphere, TGeoSubtraction, TGeoTessellated, TGeoTorus, TGeoTranslation, TGeoTrap, TGeoTrd1, TGeoTrd2, TGeoTube, TGeoTubeSeg, TGeoUnion, TGeoVolume, TGeoXtru, TGFileContainer, TGFont, TGFrame, TGFSComboBox, TGGC, TGGroupFrame, TGHButtonGroup, TGHorizontal3DLine, TGHorizontalFrame, TGHorizontalLayout, TGHProgressBar, TGHScrollBar, TGHSlider, TGHSplitter, TGHtml, TGIcon, TGLabel, TGLayoutHints, TGLineStyleComboBox, TGLineWidthComboBox, TGListBox, TGListDetailsLayout, TGListLayout, TGListTree, TGListView, TGLVContainer, TGMainFrame, TGMatrixLayout, TGMdiFrame, TGMdiMainFrame, TGMdiMenuBar, TGMenuBar, TGMenuTitle, TGNumberEntry, TGNumberEntryField, TGPictureButton, TGPopupMenu, TGProgressBar, TGRadioButton, TGraph2D, TGraph2DAsymmErrors, TGraph2DErrors, TGraph, TGraphAsymmErrors, TGraphBentErrors, TGraphEdge, TGraphErrors, TGraphMultiErrors, TGraphNode, TGraphPolar, TGraphPolargram, TGraphStruct, TGroupButton, TGRowLayout, TGShapedFrame, TGShutter, TGShutterItem, TGSplitFrame, TGStatusBar, TGTab, TGTabLayout, TGTableLayout, TGTableLayoutHints, TGTextButton, TGTextEdit, TGTextEntry, TGTextLBEntry, TGTextView, TGTileLayout, TGToolBar, TGTransientFrame, TGTripleHSlider, TGTripleVSlider, TGVButtonGroup, TGVertical3DLine, TGVerticalFrame, TGVerticalLayout, TGVFileSplitter, TGVProgressBar, TGVScrollBar, TGVSlider, TGVSplitter, TGXYLayout, TGXYLayoutHints, TH1, TH2Poly, THelix, THStack, TLatex, TLegend, TLine, TMacro, TMarker3DBox, TMarker, TMathText, TMultiGraph, TPad, TPaletteAxis, TParallelCoord, TParallelCoordVar, TPave, TPaveClass, TPaveLabel, TPaveStats, TPavesText, TPaveText, TPie, TPieSlice, TPolyLine3D, TPolyLine, TPolyMarker3D, TPolyMarker, TProfile2D, TProfile3D, TProfile, TRootContainer, TRootEmbeddedCanvas, TScatter2D, TScatter, TSlider, TSliderBox, TSpline3, TSpline5, TStyle, TText, TTreePerfStats, and TWbox.
Definition at line 858 of file TObject.cxx.
|
staticprotectedinherited |
Save object constructor in the output stream "out".
Can be used as first statement when implementing SavePrimitive() method for the object
Definition at line 777 of file TObject.cxx.
|
staticprotectedinherited |
Save invocation of primitive Draw() method Skipped if option contains "nodraw" string.
Definition at line 845 of file TObject.cxx.
|
staticprotectedinherited |
Save array in the output stream "out" as vector.
Create unique variable name based on prefix value Returns name of vector which can be used in constructor or in other places of C++ code If flag === kTRUE, just add empty line If flag === 111, check if array is empty and return nullptr or <vectorname>.data()
Definition at line 796 of file TObject.cxx.
Set or unset the user status bits as specified in f.
Definition at line 888 of file TObject.cxx.
|
inherited |
Sets a new buffer in an existing TBuffer object.
If newsiz=0 then the new buffer is expected to have the same size as the previous buffer. The current buffer position is reset to the start of the buffer. If the TBuffer owned the previous buffer, it will be deleted prior to accepting the new buffer. By default the new buffer will be adopted unless adopt is false.
If the new buffer is not adopted and no memory allocation routine is provided, a Fatal error will be issued if the Buffer attempts to expand.
Definition at line 186 of file TBuffer.cxx.
|
inlineoverridevirtualinherited |
Implements TBuffer.
Definition at line 82 of file TBufferIO.h.
|
inlineoverridevirtualinherited |
Implements TBuffer.
Definition at line 83 of file TBufferIO.h.
|
inlineinherited |
Implements TBuffer.
Definition at line 80 of file TBufferText.h.
| 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
Fourth digit (1 or 0) defines whether to set kStoreInfNaN
Definition at line 590 of file TBufferJSON.cxx.
|
staticinherited |
set printf format for double members, default "%.14e" use it after SetFloatFormat, which also overwrites format for doubles
Definition at line 819 of file TBufferText.cxx.
|
virtualinherited |
Set drawing option for object.
This option only affects the drawing style and is stored in the option field of the TObjOptLink supporting a TPad's primitive list (TList). Note that it does not make sense to call object.SetDrawOption(option) before having called object.Draw().
Reimplemented in RooPlot, TAxis, TBrowser, TGedFrame, TGFrame, TPad, TPaveStats, TRootBrowserLite, TSystemDirectory, and TSystemFile.
Definition at line 871 of file TObject.cxx.
|
staticinherited |
Set destructor only flag.
Definition at line 1204 of file TObject.cxx.
|
staticinherited |
set printf format for float/double members, default "%e" to change format only for doubles, use SetDoubleFormat
Definition at line 799 of file TBufferText.cxx.
|
staticinherited |
Set the initial size of the map used to store object and class references during reading.
The default size is kMapSize. Increasing the default has the benefit that when reading many small objects the array does not need to be resized too often (the system is always dynamic, even with the default everything will work, only the initial resizing will cost some time). Per TBuffer object this option can be changed using SetReadParam().
Definition at line 547 of file TBufferIO.cxx.
|
staticinherited |
Set the initial size of the map used to store object and class references during reading.
The default size is kMapSize. Increasing the default has the benefit that when reading many small objects the array does not need to be resized too often (the system is always dynamic, even with the default everything will work, only the initial resizing will cost some time). Per TBuffer object this option can be changed using SetReadParam().
Definition at line 563 of file TBufferIO.cxx.
|
staticinherited |
Turn on/off tracking of objects in the TObjectTable.
Definition at line 1188 of file TObject.cxx.
|
inherited |
Set parent owning this buffer.
Definition at line 269 of file TBuffer.cxx.
|
overridevirtualinherited |
This offset is used when a key (or basket) is transferred from one file to the other.
In this case the TRef and TObject might have stored a pid index (to retrieve TProcessIDs) which referred to their order on the original file, the fPidOffset is to be added to those values to correctly find the TProcessID. This fPidOffset needs to be increment if the key/basket is copied and need to be zero for new key/basket.
Implements TBuffer.
Definition at line 318 of file TBufferIO.cxx.
|
inherited |
Set buffer in read mode.
Definition at line 301 of file TBuffer.cxx.
|
overridevirtualinherited |
Set the initial size of the map used to store object and class references during reading.
The default size is TBufferFile::kMapSize. Increasing the default has the benefit that when reading many small objects the map does not need to be resized too often (the system is always dynamic, even with the default everything will work, only the initial resizing will cost some time). This method can only be called directly after the creation of the TBuffer, before any reading is done. Globally this option can be changed using SetGlobalReadParam().
Implements TBuffer.
Definition at line 96 of file TBufferIO.cxx.
|
inherited |
Set which memory reallocation method to use.
If reallocafunc is null, reset it to the default value (TStorage::ReAlloc)
Definition at line 285 of file TBuffer.cxx.
| void TBufferJSON::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("").
Definition at line 642 of file TBufferJSON.cxx.
|
finalvirtual |
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 2176 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 615 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 629 of file TBufferJSON.cxx.
|
virtualinherited |
Set the unique object id.
Definition at line 899 of file TObject.cxx.
|
inherited |
Set buffer in write mode.
Definition at line 315 of file TBuffer.cxx.
|
overridevirtualinherited |
Set the initial size of the hashtable used to store object and class references during writing.
The default size is TBufferFile::kMapSize. Increasing the default has the benefit that when writing many small objects the hashtable does not get too many collisions (the system is always dynamic, even with the default everything will work, only a large number of collisions will cost performance). For optimal performance hashsize should always be a prime. This method can only be called directly after the creation of the TBuffer, before any writing is done. Globally this option can be changed using SetGlobalWriteParam().
Implements TBuffer.
Definition at line 116 of file TBufferIO.cxx.
|
finalvirtual |
Skip any kind of object from buffer.
Implements TBuffer.
Definition at line 2592 of file TBufferJSON.cxx.
|
finalvirtualinherited |
Skip class version from I/O buffer.
Implements TBuffer.
Definition at line 679 of file TBufferText.cxx.
|
inlineprotected |
Definition at line 261 of file TBufferJSON.h.
Store provided object as JSON structure Allows to configure different TBufferJSON properties before converting object into JSON Actual object class must be specified here Method can be safely called once - after that TBufferJSON instance must be destroyed Code should look like:
auto obj = new UserClass(); TBufferJSON buf; buf.SetCompact(TBufferJSON::kNoSpaces); // change any other settings in TBufferJSON auto json = buf.StoreObject(obj, TClass::GetClass<UserClass>());
Definition at line 742 of file TBufferJSON.cxx.
|
overridevirtual |
Stream an object of class TObject.
Reimplemented from TBufferIO.
|
inline |
Definition at line 337 of file TBufferJSON.h.
|
overridevirtual |
Implements TBuffer.
Definition at line 33 of file TBufferText.cxx.
|
overridevirtual |
|
overridevirtual |
|
virtualinherited |
Issue system error message.
Use "location" to specify the method where the system error occurred. Accepts standard printf formatting arguments.
Definition at line 1112 of file TObject.cxx.
|
overridevirtualinherited |
Mark the classindex of the current file as using this TStreamerInfo.
Implements TBuffer.
Reimplemented in TMessage.
Definition at line 349 of file TBufferIO.cxx.
|
inlinestatic |
Definition at line 77 of file TBufferJSON.h.
|
virtualinherited |
|
inlinestaticprotectedinherited |
Return hash value for provided object.
Definition at line 53 of file TBufferIO.h.
|
virtualinherited |
Issue warning message.
Use "location" to specify the method where the warning occurred. Accepts standard printf formatting arguments.
Definition at line 1084 of file TObject.cxx.
|
protected |
Prepares buffer to stream data of specified class.
Definition at line 2099 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 2189 of file TBufferJSON.cxx.
|
inlineoverrideprotectedvirtualinherited |
Write this object to the current directory.
The data structure corresponding to this object is serialized. The corresponding buffer is written to the current directory with an associated key with name "name".
Writing an object to a file involves the following steps:
Bufsize can be given to force a given buffer size to write this object. By default, the buffersize will be taken from the average buffer size of all objects written to the current file so far.
If a name is specified, it will be the name of the key. If name is not given, the name of the key will be the name as returned by GetName().
The option can be a combination of: kSingleKey, kOverwrite or kWriteDelete Using the kOverwrite option a previous key with the same name is overwritten. The previous key is deleted before writing the new object. Using the kWriteDelete option a previous key with the same name is deleted only after the new object has been written. This option is safer than kOverwrite but it is slower. NOTE: Neither kOverwrite nor kWriteDelete reduces the size of a TFile– the space is simply freed up to be overwritten; in the case of a TTree, it is more complicated. If one opens a TTree, appends some entries, then writes it out, the behaviour is effectively the same. If, however, one creates a new TTree and writes it out in this way, only the metadata is replaced, effectively making the old data invisible without deleting it. TTree::Delete() can be used to mark all disk space occupied by a TTree as free before overwriting its metadata this way. The kSingleKey option is only used by TCollection::Write() to write a container with a single key instead of each object in the container with its own key.
An object is read from the file into memory via TKey::Read() or via TObject::Read().
The function returns the total number of bytes written to the file. It returns 0 if the object cannot be written.
Reimplemented from TObject.
Write array of Bool_t to buffer.
Implements TBuffer.
Definition at line 3221 of file TBufferJSON.cxx.
Write array of Char_t to buffer.
Implements TBuffer.
Definition at line 3230 of file TBufferJSON.cxx.
Write array of Double_t to buffer.
Implements TBuffer.
Definition at line 3329 of file TBufferJSON.cxx.
Write array of Float_t to buffer.
Implements TBuffer.
Definition at line 3320 of file TBufferJSON.cxx.
Write array of Long64_t to buffer.
Implements TBuffer.
Definition at line 3302 of file TBufferJSON.cxx.
Write array of Long_t to buffer.
Implements TBuffer.
Definition at line 3284 of file TBufferJSON.cxx.
Write array of Short_t to buffer.
Implements TBuffer.
Definition at line 3248 of file TBufferJSON.cxx.
Write array of UChar_t to buffer.
Implements TBuffer.
Definition at line 3239 of file TBufferJSON.cxx.
Write array of UInt_t to buffer.
Implements TBuffer.
Definition at line 3275 of file TBufferJSON.cxx.
Write array of ULong64_t to buffer.
Implements TBuffer.
Definition at line 3311 of file TBufferJSON.cxx.
Write array of ULong_t to buffer.
Implements TBuffer.
Definition at line 3293 of file TBufferJSON.cxx.
Write array of UShort_t to buffer.
Implements TBuffer.
Definition at line 3257 of file TBufferJSON.cxx.
|
finalvirtualinherited |
Write array of Double32_t to buffer.
Implements TBuffer.
Definition at line 655 of file TBufferText.cxx.
|
finalvirtualinherited |
Write array of Float16_t to buffer.
Implements TBuffer.
Definition at line 647 of file TBufferText.cxx.
|
virtualinherited |
Write data of base class.
Definition at line 687 of file TBufferText.cxx.
|
finalvirtual |
|
inlinefinalvirtualinherited |
Implements TBuffer.
Definition at line 89 of file TBufferText.h.
|
finalvirtual |
|
finalvirtual |
Writes array of characters to buffer.
Implements TBuffer.
Definition at line 3956 of file TBufferJSON.cxx.
|
finalvirtual |
|
finalvirtual |
Function called by the Streamer functions to serialize object at p to buffer b.
The optional argument info may be specified to give an alternative StreamerInfo instead of using the default StreamerInfo automatically built from the class definition. For more information, see class TStreamerInfo.
Implements TBuffer.
Definition at line 180 of file TBufferText.cxx.
|
overridevirtualinherited |
Interface to TStreamerInfo::WriteBufferClones.
Implements TBuffer.
Definition at line 384 of file TBufferIO.cxx.
|
finalvirtual |
Writes Double_t value to buffer.
Implements TBuffer.
Definition at line 3947 of file TBufferJSON.cxx.
|
finalvirtualinherited |
write a Double32_t to the buffer
Implements TBuffer.
Definition at line 560 of file TBufferText.cxx.
Write array of Bool_t to buffer.
Implements TBuffer.
Definition at line 3384 of file TBufferJSON.cxx.
Write array of Char_t to buffer.
Normally written as JSON string, but if string includes \0 in the middle or some special characters, uses regular array. From array size 1000 it will be automatically converted into base64 coding
Implements TBuffer.
Definition at line 3396 of file TBufferJSON.cxx.
Write array of Double_t to buffer.
Implements TBuffer.
Definition at line 3506 of file TBufferJSON.cxx.
Write array of Float_t to buffer.
Implements TBuffer.
Definition at line 3498 of file TBufferJSON.cxx.
Write array of Int_t to buffer.
Implements TBuffer.
Definition at line 3450 of file TBufferJSON.cxx.
Write array of Long64_t to buffer.
Implements TBuffer.
Definition at line 3482 of file TBufferJSON.cxx.
Write array of Long_t to buffer.
Implements TBuffer.
Definition at line 3466 of file TBufferJSON.cxx.
Write array of Short_t to buffer.
Implements TBuffer.
Definition at line 3434 of file TBufferJSON.cxx.
Write array of UChar_t to buffer.
Implements TBuffer.
Definition at line 3426 of file TBufferJSON.cxx.
Write array of UInt_t to buffer.
Implements TBuffer.
Definition at line 3458 of file TBufferJSON.cxx.
Write array of ULong64_t to buffer.
Implements TBuffer.
Definition at line 3490 of file TBufferJSON.cxx.
Write array of ULong_t to buffer.
Implements TBuffer.
Definition at line 3474 of file TBufferJSON.cxx.
Write array of UShort_t to buffer.
Implements TBuffer.
Definition at line 3442 of file TBufferJSON.cxx.
|
finalvirtual |
Recall TBuffer function to avoid gcc warning message.
Implements TBuffer.
Definition at line 3567 of file TBufferJSON.cxx.
|
finalvirtual |
Recall TBuffer function to avoid gcc warning message.
Implements TBuffer.
Definition at line 3514 of file TBufferJSON.cxx.
|
finalvirtualinherited |
Write array of Double32_t to buffer.
Implements TBuffer.
Definition at line 671 of file TBufferText.cxx.
|
finalvirtualinherited |
Write array of Float16_t to buffer.
Implements TBuffer.
Definition at line 663 of file TBufferText.cxx.
Write array of Char_t to buffer.
Implements TBuffer.
Definition at line 3418 of file TBufferJSON.cxx.
|
finalvirtual |
Writes Float_t value to buffer.
Implements TBuffer.
Definition at line 3938 of file TBufferJSON.cxx.
|
finalvirtualinherited |
|
finalvirtual |
|
finalvirtual |
|
finalvirtual |
Writes Long64_t value to buffer.
Implements TBuffer.
Definition at line 3920 of file TBufferJSON.cxx.
|
inlineinherited |
|
overridevirtualinherited |
Write object to I/O buffer.
This function assumes that the value in 'obj' is the value stored in a pointer to a "ptrClass". The actual type of the object pointed to can be any class derived from "ptrClass". Return:
If 'cacheReuse' is true (default) upon seeing an object address a second time, we record the offset where its was written the first time rather than streaming the object a second time. If 'cacheReuse' is false, we always stream the object. This allows the (re)use of temporary object to store different data in the same buffer.
Implements TBuffer.
Definition at line 491 of file TBufferIO.cxx.
|
finalprotectedvirtual |
Write object to buffer. Only used from TBuffer.
Implements TBufferIO.
Definition at line 2597 of file TBufferJSON.cxx.
|
overridevirtualinherited |
Check if the ProcessID pid is already in the file.
If not, add it and return the index number in the local file list.
Implements TBuffer.
Reimplemented in TMessage.
Definition at line 455 of file TBufferIO.cxx.
|
finalvirtual |
Writes Short_t value to buffer.
Implements TBuffer.
Definition at line 3866 of file TBufferJSON.cxx.
|
finalvirtual |
|
inlinevirtual |
|
inlinefinalvirtualinherited |
Implements TBuffer.
Definition at line 96 of file TBufferText.h.
|
finalvirtual |
|
finalvirtual |
Writes UChar_t value to buffer.
Implements TBuffer.
Definition at line 3857 of file TBufferJSON.cxx.
|
finalvirtual |
|
finalvirtual |
Writes ULong_t value to buffer.
Implements TBuffer.
Definition at line 3911 of file TBufferJSON.cxx.
|
finalvirtual |
Writes ULong64_t value to buffer.
Implements TBuffer.
Definition at line 3929 of file TBufferJSON.cxx.
|
finalvirtual |
Writes UShort_t value to buffer.
Implements TBuffer.
Definition at line 3875 of file TBufferJSON.cxx.
|
inlinefinalvirtualinherited |
Implements TBuffer.
Definition at line 103 of file TBufferText.h.
|
static |
zip JSON string and convert into base64 string to be used with JSROOT unzipJSON() function Main application - embed large JSON code into jupyter notebooks
Definition at line 554 of file TBufferJSON.cxx.
|
protected |
! 0 - no array compression, 1 - exclude leading/trailing zeros, 2 - check value repetition
Definition at line 329 of file TBufferJSON.h.
|
protected |
! depending from compression level, ", " or ","
Definition at line 330 of file TBufferJSON.h.
|
privateinherited |
|
protectedinherited |
|
protectedinherited |
Map containing object,class pairs for reading.
Definition at line 40 of file TBufferIO.h.
|
protected |
! 0 - no any compression, 1 - no spaces in the begin, 2 - no new lines, 3 - no spaces at all
Definition at line 326 of file TBufferJSON.h.
|
protectedinherited |
Value to be added to the map offsets.
Definition at line 37 of file TBufferIO.h.
|
staticprotectedinherited |
! printf argument for doubles, either "%f" or "%e" or "%10f" and so on
Definition at line 137 of file TBufferText.h.
|
staticprivateinherited |
|
staticprotectedinherited |
! printf argument for floats, either "%f" or "%e" or "%10f" and so on
Definition at line 136 of file TBufferText.h.
Default map size for all TBuffer objects.
Definition at line 42 of file TBufferIO.h.
|
protected |
! counter for all objects, used for referencing
Definition at line 324 of file TBufferJSON.h.
|
protectedinherited |
Map containing object,offset pairs for reading/writing.
Definition at line 39 of file TBufferIO.h.
! when true, std::map will be converted into JSON object
Definition at line 327 of file TBufferJSON.h.
|
protectedinherited |
Number of objects or classes in map.
Definition at line 35 of file TBufferIO.h.
|
protectedinherited |
Default size of map.
Definition at line 36 of file TBufferIO.h.
|
protected |
! stored value of setlocale(LC_NUMERIC), which should be recovered at the end
Definition at line 331 of file TBufferJSON.h.
|
protected |
! main output buffer for json code
Definition at line 321 of file TBufferJSON.h.
|
protected |
! current output buffer for json code
Definition at line 322 of file TBufferJSON.h.
|
protectedinherited |
Offset to be added to the pid index in this key/buffer.
Definition at line 38 of file TBufferIO.h.
|
protectedinherited |
|
protected |
! depending from compression level, " : " or ":"
Definition at line 328 of file TBufferJSON.h.
|
protected |
! list of classes, which class info is not stored
Definition at line 335 of file TBufferJSON.h.
|
protected |
! hierarchy of currently streamed element
Definition at line 325 of file TBufferJSON.h.
! when true, store inf and nan as string, this is not portable for other JSON readers
Definition at line 332 of file TBufferJSON.h.
|
protected |
! JSON member used for storing class name, when empty - no class name will be stored
Definition at line 333 of file TBufferJSON.h.
|
protected |
! JSON member used to store class version, default empty
Definition at line 334 of file TBufferJSON.h.
|
privateinherited |
|
protected |
! buffer for current value
Definition at line 323 of file TBufferJSON.h.