40 :
TKey(mother), fKeyNode(nullptr), fKeyId(keyid), fSubdir(
kFALSE)
69 :
TKey(mother), fKeyNode(nullptr), fKeyId(keyid), fSubdir(
kFALSE)
94 :
TKey(mother), fKeyNode(keynode), fKeyId(keyid), fSubdir(
kFALSE)
161 if (
f->GetIOVersion() > 1) {
178 if (obj && check_tobj) {
191 if (
f->GetIOVersion() == 1)
269 if (
gROOT->GetForceStyle())
296 if (
gROOT->GetForceStyle())
319 void *res =
XmlReadAny(
nullptr, expectedClass);
351 if (
f->GetIOVersion() == 1)
367 void *res = buffer.
XmlReadAny(objnode, obj, &cl);
383 Warning(
"XmlReadAny",
"Trying to read an emulated class (%s) to store in a compiled pointer (%s)",
388 return ((
char *)res) + delta;
397 return f ?
f->XML() :
nullptr;
virtual void InitMap()
Create the fMap container and initialize them with the null object.
Class for serializing/deserializing object to/from xml.
XMLNodePointer_t XmlWriteAny(const void *obj, const TClass *cl)
Convert object of any class to xml structures Return pointer on top xml element.
void XmlReadBlock(XMLNodePointer_t node)
Read binary block of data from xml.
void * XmlReadAny(XMLNodePointer_t node, void *obj, TClass **cl)
Recreate object from xml structure.
void XmlWriteBlock(XMLNodePointer_t node)
Write binary data block from buffer to xml.
@ kCannotHandleMemberWiseStreaming
TClass instances represent classes, structs and namespaces in the ROOT type system.
void Destructor(void *obj, Bool_t dtorOnly=kFALSE)
Explicitly call destructor for object.
Int_t GetBaseClassOffset(const TClass *toBase, void *address=0, bool isDerivedObject=true)
This class stores the date and time with a precision of one second in an unsigned 32 bit word (950130...
const char * AsSQLString() const
Return the date & time in SQL compatible string format, like: 1997-01-15 20:16:28.
void Set()
Set Date/Time to current time as reported by the system.
A ROOT file is structured in Directories (like a file system).
virtual Int_t ReadKeys(Bool_t forceRead=kTRUE)
Read the linked list of keys.
void SetSeekDir(Long64_t v)
Describe directory structure in memory.
virtual Int_t AppendKey(TKey *)
virtual void Append(TObject *obj, Bool_t replace=kFALSE)
Append object to this directory.
virtual void SetName(const char *newname)
Set the name for directory If the directory name is changed after the directory was written once,...
virtual void SetMother(TObject *mother)
virtual TList * GetListOfKeys() const
void UpdateObject(TObject *obj)
updates object, stored in the node Used for TDirectory data update
virtual TObject * ReadObjWithBuffer(char *bufferRead)
read object derived from TObject class, from key if it is not TObject or in case of error,...
Long64_t GetKeyId() const
virtual void Delete(Option_t *option="")
Delete key from current directory Note: TKeyXML object is not deleted.
virtual Int_t Read(TObject *tobj)
To read an object from the file.
XMLNodePointer_t fKeyNode
TXMLEngine * XMLEngine()
return pointer on TXMLEngine object, used for xml conversion
virtual void * ReadObjectAny(const TClass *expectedClass)
read object of any type
void * XmlReadAny(void *obj, const TClass *expectedClass)
read object from key and cast to expected class
virtual ~TKeyXML()
TKeyXML destructor.
virtual TObject * ReadObj()
read object derived from TObject class, from key if it is not TObject or in case of error,...
void StoreObject(const void *obj, const TClass *cl, Bool_t check_tobj=kFALSE)
convert object to xml structure and keep this structure in key
void UpdateAttributes()
update key attributes in key node
TKeyXML()
default constructor
void StoreKeyAttributes()
Stores keys attributes in key node.
Bool_t fSubdir
unique identifier of key for search methods
Book space in a file, create I/O buffers, to fill them, (un)compress them.
TFile * GetFile() const
Returns file to which key belong.
TDatime fDatime
Date/Time of insertion in file.
virtual const char * GetTitle() const
Returns title (title can contain 32x32 xpm thumbnail/icon).
Short_t fCycle
Cycle number.
TDirectory * GetMotherDir() const
TDirectory * fMotherDir
!pointer to mother directory
TString fClassName
Object Class name.
virtual TObject * Remove(TObject *obj)
Remove object from the list.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual const char * GetName() const
Returns name of object.
Mother of all ROOT objects.
virtual const char * GetName() const
Returns name of object.
virtual const char * ClassName() const
Returns name of class to which the object belongs.
virtual void UseCurrentStyle()
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyl...
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
XMLNodePointer_t GetChild(XMLNodePointer_t xmlnode, Bool_t realnode=kTRUE)
returns first child of xmlnode
XMLAttrPointer_t NewAttr(XMLNodePointer_t xmlnode, XMLNsPointer_t, const char *name, const char *value)
creates new attribute for xmlnode, namespaces are not supported for attributes
XMLNodePointer_t NewChild(XMLNodePointer_t parent, XMLNsPointer_t ns, const char *name, const char *content=0)
create new child element for parent node
void UnlinkNode(XMLNodePointer_t node)
unlink (detach) xmlnode from parent
XMLAttrPointer_t NewIntAttr(XMLNodePointer_t xmlnode, const char *name, Int_t value)
create node attribute with integer value
Bool_t HasAttr(XMLNodePointer_t xmlnode, const char *name)
checks if node has attribute of specified name
const char * GetNodeName(XMLNodePointer_t xmlnode)
returns name of xmlnode
const char * GetAttr(XMLNodePointer_t xmlnode, const char *name)
returns value of attribute for xmlnode
Int_t GetIntAttr(XMLNodePointer_t node, const char *name)
returns value of attribute as integer
void FreeAllAttr(XMLNodePointer_t xmlnode)
Free all attributes of the node.
void FreeNode(XMLNodePointer_t xmlnode)
release all memory, allocated from this node and destroys node itself
void SkipEmpty(XMLNodePointer_t &xmlnode)
Skip all current empty nodes and locate on first "true" node.
void ShiftToNext(XMLNodePointer_t &xmlnode, Bool_t realnode=kTRUE)
shifts specified node to next if realnode==kTRUE, any special nodes in between will be skipped
void AddChildFirst(XMLNodePointer_t parent, XMLNodePointer_t child)
add node as first child