47 Error(
"TArchiveFile",
"must specify a valid TFile");
124 ::Error(
"TArchiveFile::Open",
"must specify a valid TFile to access %s",
131 if (!
ParseUrl(url, archive, member, type))
136 if ((h =
gROOT->GetPluginManager()->FindHandler(
"TArchiveFile", type))) {
196 if (archive ==
"" || member ==
"") {
Class describing an archive file containing multiple sub-files, like a ZIP or TAR archive...
Int_t fMemberIndex
Index of sub-file in archive.
virtual ~TArchiveFile()
Dtor.
TObjArray * fMembers
Members in this archive.
TString fComment
Comment field.
Collectable string class.
virtual Int_t SetMember(const char *member)
Explicitely make the specified member the current member.
This class represents a WWW compatible URL.
TFile * fFile
File stream used to access the archive.
virtual void SetOwner(Bool_t enable=kTRUE)
Set whether this collection is the owner (enable==true) of its content.
Long64_t GetFilePosition() const
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
static TArchiveFile * Open(const char *url, TFile *file)
Return proper archive file handler depending on passed url.
Long64_t fDsize
Decompressed size.
Int_t LoadPlugin()
Load the plugin library for this handler.
TString fMemberName
Sub-file name.
Int_t GetEntriesFast() const
TString fArchiveName
Archive file name.
TArchiveMember * fCurMember
Current archive member.
const char * GetOptions() const
Long_t ExecPlugin(int nargs, const T &...params)
TString fComment
Archive comment.
const char * Data() const
TString fName
Name of member.
TObject & operator=(const TObject &rhs)
TObject assignment operator.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
void Error(const char *location, const char *msgfmt,...)
Long64_t fPosition
Byte position in archive.
const char * GetAnchor() const
TDatime fModTime
Modification time.
TObjArray * Tokenize(const TString &delim) const
This function is used to isolate sequential tokens in a TString.
virtual const char * GetName() const
Returns name of object.
Bool_t fDirectory
Flag indicating this is a directory.
static Bool_t ParseUrl(const char *url, TString &archive, TString &member, TString &type)
Try to determine if url contains an anchor specifying an archive member.
Int_t GetEntries() const
Return the number of objects in array (i.e.
TArchiveMember & operator=(const TArchiveMember &rhs)
Assignment operator.
Int_t GetNumberOfMembers() const
Returns number of members in archive.
virtual Int_t SetCurrentMember()=0
Mother of all ROOT objects.
Bool_t IsDigit() const
Returns true if all characters in string are digits (0-9) or white spaces, i.e.
Long64_t fCsize
Compressed size.
Long64_t GetMemberFilePosition() const
Return position in archive of current member.
ClassImp(TArchiveFile) TArchiveFile
Specify the archive name and member name.
TObject * At(Int_t idx) const
Long64_t fFilePosition
Byte position in archive where member data starts.
const char * GetFile() const
int CompareTo(const char *cs, ECaseCompare cmp=kExact) const
Compare a string to char *cs2.