ROOT logo
ROOT » IO » XML » TKeyXML

class TKeyXML: public TKey


 TKeyXML is represents one block of data in TXMLFile
 Normally this block corresponds to data of single object like histogram,
 TObjArray and so on.

Function Members (Methods)

public:
TKeyXML(TDirectory* mother, Long64_t keyid, XMLNodePointer_t keynode)
TKeyXML(TDirectory* mother, Long64_t keyid, const TObject* obj, const char* name = 0, const char* title = 0)
TKeyXML(TDirectory* mother, Long64_t keyid, const void* obj, const TClass* cl, const char* name, const char* title = 0)
virtual~TKeyXML()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTKey::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidDelete(Option_t* option = "")
virtual voidDeleteBuffer()
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidFillBuffer(char*&)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual char*GetBuffer() const
TBuffer*TKey::GetBufferRef() const
virtual const char*TKey::GetClassName() const
Short_tTKey::GetCycle() const
const TDatime&TKey::GetDatime() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TFile*TKey::GetFile() const
virtual const char*TKey::GetIconName() const
Short_tTKey::GetKeep() const
Long64_tGetKeyId() const
Int_tTKey::GetKeylen() const
TDirectory*TKey::GetMotherDir() const
virtual const char*TNamed::GetName() const
Int_tTKey::GetNbytes() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
Int_tTKey::GetObjlen() const
virtual Option_t*TObject::GetOption() const
virtual Long64_tGetSeekKey() const
virtual Long64_tGetSeekPdir() const
virtual const char*TKey::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Int_tTKey::GetVersion() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTKey::Hash() const
virtual voidTKey::IncrementPidOffset(UShort_t offset)
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTKey::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tIsSubdir() const
Bool_tTObject::IsZombie() const
virtual voidKeep()
XMLNodePointer_tKeyNode() const
virtual voidTKey::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTKey::Print(Option_t* option = "") const
virtual Int_tRead(TObject* tobj)
virtual voidReadBuffer(char*&)
virtual Bool_tReadFile()
voidTKey::ReadKeyBuffer(char*& buffer)
virtual TObject*ReadObj()
virtual void*ReadObjectAny(const TClass* expectedClass)
virtual TObject*ReadObjWithBuffer(char* bufferRead)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetBuffer()
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidTKey::SetMotherDir(TDirectory* dir)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTKey::SetParent(const TObject* parent)
voidSetSubir()
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp)
virtual Int_tTKey::Sizeof() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
voidUpdateAttributes()
voidUpdateObject(TObject* obj)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual Int_tWriteFile(Int_t = 1, TFile* = 0)
protected:
TKeyXML()
voidTKey::Build(TDirectory* motherDir, const char* classname, Long64_t filepos)
virtual voidTKey::Create(Int_t nbytes, TFile* f = 0)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
virtual Int_tRead(const char* name)
virtual voidTKey::Reset()
voidStoreKeyAttributes()
voidStoreObject(const void* obj, const TClass* cl)
virtual Int_tTKey::WriteFileKeepBuffer(TFile* f = 0)
TXMLEngine*XMLEngine()
void*XmlReadAny(void* obj, const TClass* expectedClass)
private:
TKeyXML(const TKeyXML&)
TKeyXML&operator=(const TKeyXML&)

Data Members

protected:
char*TKey::fBufferObject buffer
TBuffer*TKey::fBufferRefPointer to the TBuffer object
TStringTKey::fClassNameObject Class name
Short_tTKey::fCycleCycle number
TDatimeTKey::fDatimeDate/Time of insertion in file
Long64_tfKeyId! unique identifier of key for search methods
XMLNodePointer_tfKeyNode! node with stored object
Short_tTKey::fKeylenNumber of bytes for the key itself
Int_tTKey::fLeftNumber of bytes left in current segment
TDirectory*TKey::fMotherDir! pointer to mother directory
TStringTNamed::fNameobject identifier
Int_tTKey::fNbytesNumber of bytes for the object on file
Int_tTKey::fObjlenLength of uncompressed object in bytes
UShort_tTKey::fPidOffset! Offset to be added to the pid index in this key/buffer. This is actually saved in the high bits of fSeekPdir
Long64_tTKey::fSeekKeyLocation of object on file
Long64_tTKey::fSeekPdirLocation of parent directory on file
Bool_tfSubdir! indicates that key contains subdirectory
TStringTNamed::fTitleobject title
Int_tTKey::fVersionKey version identifier

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TKeyXML()
 default constructor
TKeyXML(TDirectory* mother, Long64_t keyid, const TObject* obj, const char* name = 0, const char* title = 0)
 Creates TKeyXML and convert obj data to xml structures
TKeyXML(TDirectory* mother, Long64_t keyid, const void* obj, const TClass* cl, const char* name, const char* title = 0)
 Creates TKeyXML and convert obj data to xml structures
TKeyXML(TDirectory* mother, Long64_t keyid, XMLNodePointer_t keynode)
 Creates TKeyXML and takes ownership over xml node, from which object can be restored
~TKeyXML()
 TKeyXML destructor
void Delete(Option_t* option = "")
 Delete key from current directory
 Note: TKeyXML object is not deleted. You still have to call "delete key"
void StoreKeyAttributes()
 Stores keys attributes in key node
void StoreObject(const void* obj, const TClass* cl)
  convert object to xml structure and keep this structure in key
void UpdateAttributes()
 update key attributes in key node
void UpdateObject(TObject* obj)
 updates object, stored in the node
 Used for TDirectory data update
Int_t Read(TObject* tobj)
 To read an object from the file.
 The object associated to this key is read from the file into memory.
 Before invoking this function, obj has been created via the
 default constructor.
TObject* ReadObj()
 read object derived from TObject class, from key
 if it is not TObject or in case of error, return 0
TObject* ReadObjWithBuffer(char* bufferRead)
 read object derived from TObject class, from key
 if it is not TObject or in case of error, return 0
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
TXMLEngine* XMLEngine()
 return pointer on TXMLEngine object, used for xml conversion
TKeyXML(const TKeyXML& )
TKeyXML& operator=(const TKeyXML& )
void DeleteBuffer()
{}
void FillBuffer(char*& )
{}
char * GetBuffer() const
{ return 0; }
Long64_t GetSeekKey() const
{ return fKeyNode ? 1024 : 0;}
Long64_t GetSeekPdir() const
virtual ULong_t   Hash() const { return 0; }
{ return fKeyNode ? 1024 : 0;}
void Keep()
virtual void      ls(Option_t* ="") const;
virtual void      Print(Option_t* ="") const {}
{}
Int_t Read(TObject* tobj)
void ReadBuffer(char*& )
{}
Bool_t ReadFile()
{ return kTRUE; }
void SetBuffer()
{ fBuffer = 0; }
Int_t WriteFile(Int_t = 1, TFile* = 0)
{ return 0; }
XMLNodePointer_t KeyNode() const
 TKeyXML specific methods
{ return fKeyNode; }
Long64_t GetKeyId() const
{ return fKeyId; }
Bool_t IsSubdir() const
{ return fSubdir; }
void SetSubir()
{ fSubdir = kTRUE; }