library: libRFIO
#include "TRFIOFile.h"

TRFIOSystem


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

class TRFIOSystem : public TSystem

Inheritance Chart:
TObject
<-
TNamed
<-
TSystem
<-
TRFIOSystem
    private:
virtual void* GetDirPtr() const public:
TRFIOSystem() TRFIOSystem(const TRFIOSystem&) virtual ~TRFIOSystem() virtual Bool_t AccessPathName(const char* path, EAccessMode mode) static TClass* Class() virtual void FreeDirectory(void* dirp) virtual const char* GetDirEntry(void* dirp) virtual Int_t GetPathInfo(const char* path, FileStat_t& buf) virtual TClass* IsA() const virtual Int_t MakeDirectory(const char* name) virtual void* OpenDirectory(const char* name) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual Int_t Unlink(const char* path)

Data Members

    private:
void* fDirp directory handler

Class Description

                                                                       
 TRFIOFile                                                             
                                                                       
 A TRFIOFile is like a normal TFile except that it reads and writes    
 its data via a rfiod server (for more on the rfiod daemon see         
 http://wwwinfo.cern.ch/pdp/serv/shift.html). TRFIOFile file names     
 are in standard URL format with protocol "rfio". The following are    
 valid TRFIOFile URL's:                                                
                                                                       
    rfio:/afs/cern.ch/user/r/rdm/galice.root                           
         where galice.root is a symlink of the type /shift/.../...     
    rfio:na49db1:/data1/raw.root                                       
                                                                       
 If it is used castor 2.1 the file name can be given also in the       
 following ways:                                                       
                                                                       
  rfio://host:port/?path=FILEPATH                                      
  rfio://host/?path=FILEPATH                                           
  rfio:///?path=FILEPATH                                               
  rfio://stager_host:stager_port/?path=/castor/cern.ch/user/r/         
    rdm/bla.root&svcClass=MYSVCLASS&castorVersion=MYCASTORVERSION      
  rfio://stager_host/?path=/castor/cern.ch/user/r/                     
    rdm/bla.root&svcClass=MYSVCLASS&castorVersion=MYCASTORVERSION      
  rfio:///?path=/castor/cern.ch/user/r/                                
    rdm/bla.root&svcClass=MYSVCLASS&castorVersion=MYCASTORVERSION      
                                                                       
 path is mandatory as parameter but all the other ones are optional.   
                                                                       

TRFIOSystem()
 Create helper class that allows directory access via rfiod.
 The name must start with '-' to bypass the TSystem singleton check.
Int_t MakeDirectory(const char *dir)
 Make a directory via rfiod.
void * OpenDirectory(const char *dir)
 Open a directory via rfiod. Returns an opaque pointer to a dir
 structure. Returns 0 in case of error.
void FreeDirectory(void *dirp)
 Free directory via rfiod.
const char * GetDirEntry(void *dirp)
 Get directory entry via rfiod. Returns 0 in case no more entries.
Int_t GetPathInfo(const char *path, FileStat_t &buf)
 Get info about a file. Info is returned in the form of a FileStat_t
 structure (see TSystem.h).
 The function returns 0 in case of success and 1 if the file could
 not be stat'ed.
Bool_t AccessPathName(const char *path, EAccessMode mode)
 Returns FALSE if one can access a file using the specified access mode.
 Mode is the same as for the Unix access(2) function.
 Attention, bizarre convention of return value!!
Int_t Unlink(const char *path)
 Unlink, i.e. remove, a file or directory. Returns 0 when succesfull,
 -1 in case of failure.
TRFIOSystem()
virtual ~TRFIOSystem()

Author: Fons Rademakers 20/01/99 + Giulia Taurelli 29/06/2006
Last update: root/rfio:$Name: $:$Id: TRFIOFile.cxx,v 1.35 2006/07/10 13:01:13 rdm Exp $
Copyright (C) 1995-2000, 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.