library: libCore
#include "TArchiveFile.h"

TArchiveFile


class description - source file - inheritance tree (.pdf)

class TArchiveFile : public TObject

Inheritance Chart:
TObject
<-
TArchiveFile
<-
TZIPFile
 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.


    protected:
static Bool_t ParseUrl(const char* url, TString& archive, TString& member) public:
virtual ~TArchiveFile() static TClass* Class() const char* GetArchiveName() const TArchiveMember* GetMember() const Long64_t GetMemberFilePosition() const Int_t GetMemberIndex() const const char* GetMemberName() const TObjArray* GetMembers() const Int_t GetNumberOfMembers() const virtual TClass* IsA() const static TArchiveFile* Open(const char* url, TFile* file) virtual Int_t OpenArchive() TArchiveFile& operator=(const TArchiveFile&) virtual Int_t SetCurrentMember() virtual Int_t SetMember(const char* member) virtual Int_t SetMember(Int_t idx) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
TString fArchiveName Archive file name TString fMemberName Sub-file name Int_t fMemberIndex Index of sub-file in archive TFile* fFile File stream used to access the archive TObjArray* fMembers Members in this archive TArchiveMember* fCurMember Current archive member

Class Description

                                                                      
 TArchiveFile                                                         
                                                                      
 This is an abstract class that describes an archive file containing  
 multiple sub-files, like a ZIP or TAR archive.                       
                                                                      


~TArchiveFile()
 Dtor.

Long64_t GetMemberFilePosition() const
 Return position in archive of current member.

Int_t GetNumberOfMembers() const
 Returns number of members in archive.

Int_t SetMember(const char *member)
 Explicitely make the specified member the current member.
 Returns -1 in case of error, 0 otherwise.

Int_t SetMember(Int_t idx)
 Explicitely make the member with the specified index the current member.
 Returns -1 in case of error, 0 otherwise.

TArchiveFile* Open(const char *url, TFile *file)
 Return proper archive file handler depending on passed url.
 The handler is loaded via the plugin manager and is triggered by
 the extension of the archive file. In case no handler is found 0
 is returned. The file argument is used to access the archive.
 The archive should be specified as url with the member name as the
 anchor, e.g. "root://pcsalo.cern.ch/alice/event_1.zip#tpc.root",
 where tpc.root is the file in the archive to be opened.
 Alternatively the sub-file can be specified via its index number,
 e.g. "root://pcsalo.cern.ch/alice/event_1.zip#3".
 This function is normall only called via TFile::Open().

Bool_t ParseUrl(const char *url, TString &archive, TString &member)
 Try to determine if url contains an anchor specifying an archive member.
 Returns kFALSE in case of an error.



Inline Functions


                  Int_t OpenArchive()
                  Int_t SetCurrentMember()
        TArchiveMember* GetMember() const
             TObjArray* GetMembers() const
            const char* GetArchiveName() const
            const char* GetMemberName() const
                  Int_t GetMemberIndex() const
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
          TArchiveFile& operator=(const TArchiveFile&)


Author: Fons Rademakers 30/6/04
Last update: root/base:$Name: $:$Id: TArchiveFile.cxx,v 1.2 2004/07/19 09:40:48 rdm Exp $
Copyright (C) 1995-2004, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - Top of the page

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.