ROOT logo
ROOT » CORE » BASE » TFileInfo

class TFileInfo: public TNamed


TFileInfo

Class describing a generic file including meta information.


Function Members (Methods)

public:
TFileInfo(const TFileInfo&)
TFileInfo(const char* url = 0, Long64_t size = -1, const char* uuid = 0, const char* md5 = 0, TObject* meta = 0)
virtual~TFileInfo()
voidTObject::AbstractMethod(const char* method) const
Bool_tAddMetaData(TObject* meta)
Bool_tAddUrl(const char* url, Bool_t infront = kFALSE)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::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_tCompare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")MENU
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 voidTNamed::FillBuffer(char*& buffer)
TUrl*FindByUrl(const char* url, Bool_t withDeflt = kFALSE)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
TUrl*GetCurrentUrl() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TUrl*GetFirstUrl() const
virtual const char*TObject::GetIconName() const
Int_tGetIndex() const
TMD5*GetMD5() const
TFileInfoMeta*GetMetaData(const char* meta = 0) const
TList*GetMetaDataList() const
virtual const char*TNamed::GetName() const
Int_tGetNUrls() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Long64_tGetSize() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
TUrl*GetUrlAt(Int_t i) const
TUUID*GetUUID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
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_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
TUrl*NextUrl()
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 voidPrint(Option_t* options = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
Bool_tRemoveMetaData(const char* meta = 0)
Bool_tRemoveUrl(const char* url)
Bool_tRemoveUrlAt(Int_t i)
voidTObject::ResetBit(UInt_t f)
voidResetUrl()
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)
Bool_tSetCurrentUrl(const char* url)
Bool_tSetCurrentUrl(TUrl* url)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetIndex(Int_t idx)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetSize(Long64_t size)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetUUID(const char* uuid)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_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
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
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
TFileInfo&operator=(const TFileInfo&)
voidParseInput(const char* in)

Data Members

public:
enum EStatusBits { kStaged
kCorrupted
kSortWithIndex
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
private:
TUrl*fCurrentUrl! current URL to access the file, points to URL
Int_tfIndexIndex to be used when sorting with index
TMD5*fMD5-> md5 digest of the file
TList*fMetaDataListgeneric list of file meta data object(s)
Long64_tfSizefile size
TUUID*fUUID-> uuid of the referenced file
TList*fUrlListlist of file URLs

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TFileInfo(const char* url = 0, Long64_t size = -1, const char* uuid = 0, const char* md5 = 0, TObject* meta = 0)
 Constructor.
TFileInfo(const TFileInfo& )
 Copy constructor.
~TFileInfo()
 Destructor.
void ParseInput(const char* in)
 Parse the input line to extract init information from 'in'; the input
 string is tokenized on ' '; the tokens can be prefixed by the following
 keys:

   url:<url1>,<url2>,...     URLs for the file; stored in the order given
   sz:<size>                 size of the file in bytes
   md5:<md5_ascii>           MD5 sum of the file in ASCII form
   uuid:<uuid>               UUID of the file

   tree:<name>,<entries>,<first>,<last>
                             meta-information about a tree in the file; the
                             should be in the form <subdir>/tree-name;'entries' is
                             the number of entries in the tree; 'first' and 'last'
                             define the entry range.

   obj:<name>,<class>,<entries>
                             meta-information about a generic object in the file;
                             the should be in the form <subdir>/obj-name; 'class'
                             is the object class; 'entries' is the number of occurences
                             for this object.

   idx:<index>               Index of this file if sorting with index

 Multiple occurences of 'tree:' or 'obj:' can be specified.
 The initializations done via the input string are superseeded by the ones by other
 parameters in the constructor, if any.
 If no key is given, the token is interpreted as URL(s).
void SetUUID(const char* uuid)
 Set the UUID to the value associated to the string 'uuid'. This is
 useful to set the UUID to the one of the ROOT file during verification.
 NB: we do not change the name in here, because this would screw up lists
     of these objects hashed on the name. Those lists need to be rebuild.
     TFileCollection does that in RemoveDuplicates.
TUrl * GetCurrentUrl() const
 Return the current url.
TUrl * NextUrl()
 Iterator function, start iteration by calling ResetUrl().
 The first call to NextUrl() will return the 1st element,
 the seconde the 2nd element etc. Returns 0 in case no more urls.
TUrl * FindByUrl(const char* url, Bool_t withDeflt = kFALSE)
 Find an element from a URL. Returns 0 if not found.
Bool_t AddUrl(const char* url, Bool_t infront = kFALSE)
 Add a new URL. If 'infront' is TRUE the new url is pushed at the beginning
 of the list; otherwise is pushed back.
 Returns kTRUE if successful, kFALSE otherwise.
Bool_t RemoveUrl(const char* url)
 Remove an URL. Returns kTRUE if successful, kFALSE otherwise.
Bool_t RemoveUrlAt(Int_t i)
 Remove URL at given position. Returns kTRUE on success, kFALSE on error.
Bool_t SetCurrentUrl(const char* url)
 Set 'url' as current URL, if in the list
 Return kFALSE if not in the list
Bool_t SetCurrentUrl(TUrl* url)
 Set 'url' as current URL, if in the list
 Return kFALSE if not in the list
Bool_t AddMetaData(TObject* meta)
 Add's a meta data object to the file info object. The object will be
 adopted by the TFileInfo and should not be deleted by the user.
 Typically objects of class TFileInfoMeta or derivatives should be added,
 but any class is accepted.
 Returns kTRUE if successful, kFALSE otherwise.
Bool_t RemoveMetaData(const char* meta = 0)
 Remove the metadata obeject. If meta is 0 remove all meta data objects.
 Returns kTRUE if successful, kFALSE otherwise.
TFileInfoMeta * GetMetaData(const char* meta = 0) const
 Get meta data object with specified name. If meta is 0
 get first meta data object. Returns 0 in case no
 suitable meta data object is found.
Int_t Compare(const TObject* obj) const
 Compare TFileInfo object by their first urls.
void Print(Option_t* options = "") const
 Print information about this object. If option contains 'L' a long listing
 will be printed (on multiple lines). Otherwise one line is printed with the
 following information: current url, default tree name|class|entries, md5;
 the default tree name is passed via the option ("T:<default_tree>") by the
 owning TFileCollection.
TFileInfo& operator=(const TFileInfo& )
void ResetUrl()
{ fCurrentUrl = (TUrl*)fUrlList->First(); }
TUrl * GetFirstUrl() const
{ return (TUrl*)fUrlList->First(); }
TUrl * GetUrlAt(Int_t i) const
{ return (TUrl*)fUrlList->At(i); }
Int_t GetNUrls() const
{ return fUrlList->GetEntries(); }
Long64_t GetSize() const
{ return fSize; }
TUUID * GetUUID() const
{ return fUUID; }
TMD5 * GetMD5() const
{ return fMD5; }
TList * GetMetaDataList() const
{ return fMetaDataList; }
void SetSize(Long64_t size)
{ fSize = size; }
Bool_t IsSortable() const
{ return kTRUE; }
Int_t GetIndex() const
{ return fIndex; }
void SetIndex(Int_t idx)
{ fIndex = idx; }