ROOT logo
ROOT » IO » RFIO » TRFIOSystem

class TRFIOSystem: public TSystem


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
rfio:/castor/cern.ch/user/r/rdm/test.root

If Castor 2.1 is used the file names can be given also in the
following ways:

rfio://host:port/?path=FILEPATH
rfio://host/?path=FILEPATH
rfio:///castor?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:///castor?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.

For the ultimate description of supported urls see:
https://twiki.cern.ch/twiki/bin/view/FIOgroup/RfioRootTurl


Function Members (Methods)

public:
TRFIOSystem()
virtual~TRFIOSystem()
virtual voidTSystem::Abort(int code = 0)
voidTObject::AbstractMethod(const char* method) const
virtual intTSystem::AcceptConnection(int sock)
virtual Bool_tAccessPathName(const char* path, EAccessMode mode)
virtual voidTSystem::AddFileHandler(TFileHandler* fh)
virtual voidTSystem::AddIncludePath(const char* includePath)
virtual voidTSystem::AddLinkedLibs(const char* linkedLib)
virtual voidTSystem::AddSignalHandler(TSignalHandler* sh)
virtual voidTSystem::AddStdExceptionHandler(TStdExceptionHandler* eh)
virtual voidTSystem::AddTimer(TTimer* t)
virtual intTSystem::AnnounceTcpService(int port, Bool_t reuse, int backlog, int tcpwindowsize = -1)
virtual intTSystem::AnnounceUnixService(int port, int backlog)
virtual intTSystem::AnnounceUnixService(const char* sockpath, int backlog)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual const char*TSystem::BaseName(const char* pathname)
voidTSystem::Beep(Int_t freq = -1, Int_t duration = -1, Bool_t setDefault = kFALSE)
virtual voidTObject::Browse(TBrowser* b)
Bool_tTSystem::cd(const char* path)
virtual Bool_tTSystem::ChangeDirectory(const char* path)
virtual intTSystem::Chmod(const char* file, UInt_t mode)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTSystem::CleanCompiledMacros()
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual voidTSystem::CloseConnection(int sock, Bool_t force = kFALSE)
virtual voidTSystem::Closelog()
virtual intTSystem::ClosePipe(FILE* pipe)
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual intTSystem::CompileMacro(const char* filename, Option_t* opt = "", const char* library_name = "", const char* build_dir = "", UInt_t dirmode = 0)
virtual char*TSystem::ConcatFileName(const char* dir, const char* name)
virtual voidTNamed::Copy(TObject& named) const
virtual intTSystem::CopyFile(const char* from, const char* to, Bool_t overwrite = kFALSE)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual const char*TSystem::DirName(const char* pathname)
virtual voidTSystem::DispatchOneEvent(Bool_t pendingOnly = kFALSE)
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 char*TSystem::DynamicPathName(const char* lib, Bool_t quiet = kFALSE)
virtual Func_tTSystem::DynFindSymbol(const char* module, const char* entry)
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual Int_tTSystem::Exec(const char* shellcmd)
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 voidTSystem::Exit(int code, Bool_t mode = kTRUE)
virtual voidTSystem::ExitLoop()
virtual Bool_tTSystem::ExpandPathName(TString& path)
virtual char*TSystem::ExpandPathName(const char* path)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual const char*TSystem::FindFile(const char* search, TString& file, EAccessMode mode = kFileExists)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidFreeDirectory(void* dirp)
virtual TSystem::EAclicModeTSystem::GetAclicMode() const
voidTSystem::GetBeepDefaults(Int_t& freq, Int_t& duration) const
virtual const char*TSystem::GetBuildArch() const
virtual const char*TSystem::GetBuildCompiler() const
virtual const char*TSystem::GetBuildCompilerVersion() const
virtual const char*TSystem::GetBuildDir() const
virtual const char*TSystem::GetBuildNode() const
virtual intTSystem::GetCpuInfo(CpuInfo_t* info, Int_t sampleTime = 1000) const
virtual const char*GetDirEntry(void* dirp)
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TSystem::GetDynamicPath()
virtual Int_tTSystem::GetEffectiveGid()
virtual Int_tTSystem::GetEffectiveUid()
virtual const char*TSystem::Getenv(const char* env)
static Int_tTSystem::GetErrno()
virtual const char*TSystem::GetError()
const char*TSystem::GetErrorStr() const
virtual const char*TSystem::GetFlagsDebug() const
virtual const char*TSystem::GetFlagsOpt() const
virtual Int_tTSystem::GetFPEMask()
virtual TStringTSystem::GetFromPipe(const char* command)
virtual intTSystem::GetFsInfo(const char* path, Long_t* id, Long_t* bsize, Long_t* blocks, Long_t* bfree)
virtual Int_tTSystem::GetGid(const char* group = 0)
virtual UserGroup_t*TSystem::GetGroupInfo(Int_t gid)
virtual UserGroup_t*TSystem::GetGroupInfo(const char* group = 0)
virtual TInetAddressTSystem::GetHostByName(const char* server)
virtual const char*TObject::GetIconName() const
virtual const char*TSystem::GetIncludePath()
virtual const char*TSystem::GetLibraries(const char* regexp = "", const char* option = "", Bool_t isRegexp = kTRUE)
virtual const char*TSystem::GetLinkdefSuffix() const
virtual const char*TSystem::GetLinkedLibs() const
virtual TSeqCollection*TSystem::GetListOfFileHandlers() const
virtual TSeqCollection*TSystem::GetListOfSignalHandlers() const
virtual TSeqCollection*TSystem::GetListOfStdExceptionHandlers() const
virtual TSeqCollection*TSystem::GetListOfTimers() const
virtual const char*TSystem::GetMakeExe() const
virtual const char*TSystem::GetMakeSharedLib() const
virtual intTSystem::GetMemInfo(MemInfo_t* info) const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual const char*TSystem::GetObjExt() const
virtual Option_t*TObject::GetOption() const
virtual Int_tGetPathInfo(const char* path, FileStat_t& buf)
virtual TInetAddressTSystem::GetPeerName(int sock)
virtual intTSystem::GetPid()
virtual intTSystem::GetProcInfo(ProcInfo_t* info) const
virtual intTSystem::GetServiceByName(const char* service)
virtual char*TSystem::GetServiceByPort(int port)
virtual TInetAddressTSystem::GetSockName(int sock)
virtual intTSystem::GetSockOpt(int sock, int kind, int* val)
virtual const char*TSystem::GetSoExt() const
virtual intTSystem::GetSysInfo(SysInfo_t* info) const
virtual const char*TNamed::GetTitle() const
virtual Int_tTSystem::GetUid(const char* user = 0)
virtual UInt_tTObject::GetUniqueID() const
virtual UserGroup_t*TSystem::GetUserInfo(Int_t uid)
virtual UserGroup_t*TSystem::GetUserInfo(const char* user = 0)
virtual TList*TSystem::GetVolumes(Option_t*) const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual const char*TSystem::HomeDirectory(const char* userName = 0)
virtual const char*TSystem::HostName()
virtual voidTSystem::IgnoreInterrupt(Bool_t ignore = kTRUE)
virtual voidTSystem::IgnoreSignal(ESignals sig, Bool_t ignore = kTRUE)
Bool_tTSystem::InControl() 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 Bool_tTSystem::Init()
virtual voidTSystem::InnerLoop()
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTSystem::IsAbsoluteFileName(const char* dir)
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTSystem::IsFileInIncludePath(const char* name, char** fullpath = 0)
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTSystem::IsPathLocal(const char* path)
virtual Bool_tTNamed::IsSortable() const
Bool_tTObject::IsZombie() const
virtual intTSystem::Link(const char* from, const char* to)
virtual voidTSystem::ListLibraries(const char* regexp = "")
virtual voidTSystem::ListSymbols(const char* module, const char* re = "")
virtual intTSystem::Load(const char* module, const char* entry = "", Bool_t system = kFALSE)
virtual voidTNamed::ls(Option_t* option = "") const
virtual Int_tMakeDirectory(const char* name)
voidTObject::MayNotUse(const char* method) const
virtual intTSystem::mkdir(const char* name, Bool_t recursive = kFALSE)
virtual Long_tTSystem::NextTimeOut(Bool_t mode)
virtual Bool_tTObject::Notify()
virtual voidTSystem::NotifyApplicationCreated()
virtual TTimeTSystem::Now()
virtual intTSystem::OpenConnection(const char* server, int port, int tcpwindowsize = -1)
virtual void*OpenDirectory(const char* name)
virtual voidTSystem::Openlog(const char* name, Int_t options, ELogFacility facility)
virtual FILE*TSystem::OpenPipe(const char* command, const char* mode)
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)
TNamed&TNamed::operator=(const TNamed& rhs)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual const char*TSystem::PrependPathName(const char* dir, TString& name)
virtual voidTNamed::Print(Option_t* option = "") const
virtual Bool_tTSystem::ProcessEvents()
const char*TSystem::pwd()
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual intTSystem::RecvBuf(int sock, void* buffer, int length)
virtual intTSystem::RecvRaw(int sock, void* buffer, int length, int flag)
virtual Int_tTSystem::RedirectOutput(const char* name, const char* mode = "a", RedirectHandle_t* h = 0)
virtual TFileHandler*TSystem::RemoveFileHandler(TFileHandler* fh)
voidTSystem::RemoveOnExit(TObject* obj)
virtual TSignalHandler*TSystem::RemoveSignalHandler(TSignalHandler* sh)
virtual TStdExceptionHandler*TSystem::RemoveStdExceptionHandler(TStdExceptionHandler* eh)
virtual TTimer*TSystem::RemoveTimer(TTimer* t)
virtual intTSystem::Rename(const char* from, const char* to)
voidTObject::ResetBit(UInt_t f)
static voidTSystem::ResetErrno()
virtual voidTSystem::ResetSignal(ESignals sig, Bool_t reset = kTRUE)
virtual voidTSystem::ResetTimer(TTimer*)
virtual voidTSystem::Run()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual Int_tTSystem::Select(TList* active, Long_t timeout)
virtual Int_tTSystem::Select(TFileHandler* fh, Long_t timeout)
virtual intTSystem::SendBuf(int sock, const void* buffer, int length)
virtual intTSystem::SendRaw(int sock, const void* buffer, int length, int flag)
virtual voidTSystem::SetAclicMode(TSystem::EAclicMode mode)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTSystem::SetBuildDir(const char*)
virtual voidTSystem::SetDisplay()
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidTSystem::SetDynamicPath(const char* pathname)
virtual voidTSystem::Setenv(const char* name, const char* value)
voidTSystem::SetErrorStr(const char* errstr)
virtual voidTSystem::SetFlagsDebug(const char*)
virtual voidTSystem::SetFlagsOpt(const char*)
virtual Int_tTSystem::SetFPEMask(Int_t mask = kDefaultMask)
virtual voidTSystem::SetIncludePath(const char* includePath)
virtual voidTSystem::SetLinkdefSuffix(const char* suffix)
virtual voidTSystem::SetLinkedLibs(const char* linkedLibs)
virtual voidTSystem::SetMakeExe(const char* directives)
virtual voidTSystem::SetMakeSharedLib(const char* directives)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTSystem::SetObjExt(const char* objExt)
virtual voidTSystem::SetProgname(const char* name)
virtual intTSystem::SetSockOpt(int sock, int kind, int val)
virtual voidTSystem::SetSoExt(const char* soExt)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidTSystem::ShowOutput(RedirectHandle_t* h)
virtual Int_tTNamed::Sizeof() const
virtual voidTSystem::Sleep(UInt_t milliSec)
virtual TStringTSystem::SplitAclicMode(const char* filename, TString& mode, TString& args, TString& io) const
virtual voidTSystem::StackTrace()
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual intTSystem::Symlink(const char* from, const char* to)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
virtual voidTSystem::Syslog(ELogLevel level, const char* mess)
virtual const char*TSystem::TempDirectory() const
virtual FILE*TSystem::TempFileName(TString& base, const char* dir = 0)
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual intTSystem::Umask(Int_t mask)
virtual const char*TSystem::UnixPathName(const char* unixpathname)
virtual Int_tUnlink(const char* path)
virtual voidTSystem::Unload(const char* module)
virtual voidTSystem::Unsetenv(const char* name)
virtual voidTObject::UseCurrentStyle()
virtual intTSystem::Utime(const char* file, Long_t modtime, Long_t actime)
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual char*TSystem::Which(const char* search, const char* file, EAccessMode mode = kFileExists)
virtual const char*TSystem::WorkingDirectory()
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 Bool_tTSystem::ConsistentWith(const char* path, void* dirptr = 0)
virtual voidTSystem::DoBeep(Int_t = -1, Int_t = -1) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual const char*TSystem::ExpandFileName(const char* fname)
TSystem*TSystem::FindHelper(const char* path, void* dirptr = 0)
virtual const char*TSystem::GetLinkedLibraries()
voidTObject::MakeZombie()
virtual voidTSystem::SigAlarmInterruptsSyscalls(Bool_t)
static const char*TSystem::StripOffProto(const char* path, const char* proto)
private:
virtual void*GetDirPtr() const

Data Members

protected:
TSystem::EAclicModeTSystem::fAclicModeWhether the compilation should be done debug or opt
Int_tTSystem::fBeepDurationUsed by Beep()
Int_tTSystem::fBeepFreqUsed by Beep()
TStringTSystem::fBuildArchArchitecure for which ROOT was built (passed to ./configure)
TStringTSystem::fBuildCompilerCompiler used to build this ROOT
TStringTSystem::fBuildCompilerVersionCompiler version used to build this ROOT
TStringTSystem::fBuildDirLocation where to build ACLiC shared library and use as scratch area.
TStringTSystem::fBuildNodeDetailed information where ROOT was built
TSeqCollection*TSystem::fCompiledList of shared libs from compiled macros to be deleted
Bool_tTSystem::fDoneTrue if eventloop should be finished
TSeqCollection*TSystem::fFileHandlerList of file handlers
TStringTSystem::fFlagsDebugFlags for debug compilation
TStringTSystem::fFlagsOptFlags for optimized compilation
TSeqCollection*TSystem::fHelpersList of helper classes for alternative file/directory access
TStringTSystem::fHostnameHostname
Bool_tTSystem::fInControlTrue if in eventloop
TStringTSystem::fIncludePathUsed to expand $IncludePath in the directives given to SetMakeSharedLib and SetMakeExe
Bool_tTSystem::fInsideNotifyUsed by DispatchTimers()
TStringTSystem::fLastErrorStringLast system error message
Int_tTSystem::fLevelLevel of nested eventloops
TStringTSystem::fLinkdefSuffixDefault suffix for linkdef files to be used by ACLiC
TStringTSystem::fLinkedLibsUsed to expand $LinkedLibs in the directives given to SetMakeSharedLib and SetMakeExe
TStringTSystem::fListLibsList shared libraries, cache used by GetLibraries
TStringTSystem::fListPathsList of all include (fIncludePath + interpreter include path). Cache used by GetIncludePath
TStringTSystem::fMakeExeDirective used to build an executable
TStringTSystem::fMakeSharedLibDirective used to build a shared library
Int_tTSystem::fMaxrfdLargest fd in read mask
Int_tTSystem::fMaxwfdLargest fd in write mask
TStringTNamed::fNameobject identifier
Int_tTSystem::fNfdNumber of fd's in masks
TStringTSystem::fObjExtExtension of object files (.o, .obj, etc.)
TSeqCollection*TSystem::fOnExitListList of items to be cleaned-up on exit
TFdSet*TSystem::fReadmask!Files that should be checked for read events
TFdSet*TSystem::fReadready!Files with reads waiting
Int_tTSystem::fSigcntNumber of pending signals
TSeqCollection*TSystem::fSignalHandlerList of signal handlers
TFdSet*TSystem::fSignals!Signals that were trapped
TStringTSystem::fSoExtExtension of shared library (.so, .sl, .a, .dll, etc.)
TSeqCollection*TSystem::fStdExceptionHandlerList of std::exception handlers
TSeqCollection*TSystem::fTimersList of timers
TStringTNamed::fTitleobject title
TStringTSystem::fWdpathWorking directory
TFdSet*TSystem::fWritemask!Files that should be checked for write events
TFdSet*TSystem::fWriteready!Files with writes waiting
private:
void*fDirpdirectory handler

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

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* name)
 Make a directory via rfiod.
void * OpenDirectory(const char* name)
 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.
void * GetDirPtr() const
{ return fDirp; }
virtual ~TRFIOSystem()
{ }