Hi HP, This functionality exists (just look inside TDirectory::Get). If you have the key (Tkey), then do MyClass *object = (MyClass*)key->ReadObj(); Rene Brun On Wed, 22 Jan 2003, HP Wei wrote: > > Question: > TDirectory::Get("ObjName"); > first searches for the object named "ObjName" in a given RootFile > and then loads the object into memory. > > I want to eliminate the process of searching. > i.e. I want to find a function that does the second part of Get() > --> to load the object in memory given an offset. > > Since we can get the info of the offset (seekKey) of > the object stored in a rootfile and we can know the offset beforehand, > we could have a function like: > (TObject *) Load(offset) > which just goes to the offset in the file and load the object into memory. > This presumably will be somewhat faster than Get("ObjName"). > > Is there something in the class library to allow me to do this ??? > > GetListOfKeys() can provide SeekKey for the object, which we can > store in a hash table such as > STL::map(string(objName), unsigned_int(offset)). > But in TDirectory, I could not find any function that does: > (TObject *) Load(seekKey). > > thanks, > HP >
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:08 MET