#include "TCastorFile.h"

TCastorFile


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

class TCastorFile : public TNetFile

Inheritance Chart:
TObject
<-
TNamed
<-
TDirectory
<-
TFile
<-
TNetFile
<-
TCastorFile
    private:
virtual void ConnectServer(Int_t* stat, EMessageTypes* kind, Int_t netopt, Int_t tcpwindowsize, Bool_t forceOpen, Bool_t forceRead) void FindServerAndPath() virtual Int_t SysClose(Int_t fd) public:
TCastorFile(const char* url, Option_t* option = "", const char* ftitle = "", Int_t compress = 1, Int_t netopt = 0) TCastorFile() virtual ~TCastorFile() static TClass* Class() virtual TClass* IsA() const virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) virtual Bool_t WriteBuffer(const char* buf, Int_t len)

Data Members

    private:
TString fDiskServer CASTOR remote disk server TString fInternalPath CASTOR internal path Bool_t fIsCastor true if internal path is valid Bool_t fWrittenTo true if data has been written to file

Class Description

                                                                      
 TCastorFile                                                          
                                                                      
 A TCastorFile is like a normal TNetFile except that it obtains the   
 remote node (disk server) via the CASTOR API, once the disk server   
 and the local file path are determined, the file will be accessed    
 via the rootd daemon. File names have to be specified like:          
    castor:/castor/cern.ch/user/r/rdm/bla.root.                       
                                                                      
 This class has been modified to be able to use a V1 or V2 stager.    
 It uses the V1 stager API by default, and it can connect to a new    
 CASTOR stager when defining the shell variable                       
    RFIO_USE_CASTOR_V2=YES                                            
 or adding RFIO USE_CASTOR_V2 YES in /etc/castor.conf.                
                                                                      


TCastorFile(const char *url, Option_t *option, const char *ftitle, Int_t compress, Int_t netopt) : TNetFile(url, ftitle, compress, kFALSE)
 Create a TCastorFile. A TCastorFile is like a normal TNetFile except
 that it obtains the remote node (disk server) via the CASTOR API, once
 the disk server and the local file path are determined, the file will
 be accessed via the rootd daemon. File names have to be specified like:
    castor:/castor/cern.ch/user/r/rdm/bla.root.
 The other arguments are the same as for TNetFile and TFile.

void FindServerAndPath()
 Find the CASTOR disk server and internal file path.

Int_t SysClose(Int_t fd)
 Close currently open file.

Bool_t WriteBuffer(const char *buf, Int_t len)
 Write specified byte range to remote file via rootd daemon.
 Returns kTRUE in case of error.

void ConnectServer(Int_t *stat, EMessageTypes *kind, Int_t netopt, Int_t tcpwindowsize, Bool_t forceOpen, Bool_t forceRead)
 Connect to remote rootd server on CASTOR disk server.



Inline Functions


               void ~TCastorFile()
        TCastorFile TCastorFile()
            TClass* Class()
            TClass* IsA() const
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
               void StreamerNVirtual(TBuffer& b)


Author: Fons Rademakers + Jean-Damien Durand 17/09/2003 + Ben Couturier 31/05/2005
Last update: root/net:$Name: $:$Id: TCastorFile.cxx,v 1.9 2005/08/18 00:24:38 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.