ROOT 6.10/09 Reference Guide |
Definition at line 55 of file TXNetFile.h.
Public Member Functions | |
TXNetFile () | |
TXNetFile (const char *url, Option_t *option="", const char *fTitle="", Int_t compress=1, Int_t netopt=0, Bool_t parallelopen=kFALSE, const char *logicalurl=0) | |
Create a TXNetFile object. More... | |
virtual | ~TXNetFile () |
Destructor. More... | |
virtual void | Close (const Option_t *opt="") |
Close the file (see TNetFile::Close() or TFile::Close() for more details). More... | |
virtual void | Flush () |
Flushes un-written data. More... | |
virtual TFile::EAsyncOpenStatus | GetAsyncOpenStatus () |
Return status of asynchronous request. More... | |
virtual Int_t | GetBytesToPrefetch () const |
Max number of bytes to prefetch. More... | |
virtual Bool_t | IsOpen () const |
Return kTRUE if the file is open, kFALSE otherwise. More... | |
virtual void | Print (Option_t *option="") const |
Print the local statistics. More... | |
virtual Bool_t | ReadBuffer (char *buf, Int_t len) |
Override TNetFile::ReadBuffer to deal with the xrootd server. More... | |
virtual Bool_t | ReadBuffer (char *buf, Long64_t pos, Int_t len) |
Pass through to TNetFile implementation which will call back eventually to our ReadBuffer with 2 arguments to deal with xrootd errors. More... | |
virtual Bool_t | ReadBufferAsync (Long64_t offs, Int_t len) |
Implementation dealing with the xrootd server. More... | |
virtual Bool_t | ReadBuffers (char *buf, Long64_t *pos, Int_t *len, Int_t nbuf) |
Read the nbuf blocks described in arrays pos and len, where pos[i] is the seek position of block i of length len[i]. More... | |
virtual Int_t | ReOpen (const Option_t *mode) |
Re-open the file (see TNetFile::ReOpen() or TFile::ReOpen() for more details). More... | |
virtual void | ResetCache () |
Reset the cache. More... | |
virtual Bool_t | WriteBuffer (const char *buffer, Int_t BufferLength) |
Override TNetFile::WriteBuffer to deal with the xrootd server. More... | |
Public Member Functions inherited from TNetFile | |
TNetFile (const char *url, Option_t *option="", const char *ftitle="", Int_t compress=1, Int_t netopt=0) | |
Create a TNetFile object. More... | |
TNetFile () | |
virtual | ~TNetFile () |
TNetFile dtor. Send close message and close socket. More... | |
void | Close (Option_t *option="") |
Close remote file. More... | |
const TUrl * | GetEndpointUrl () const |
Int_t | GetErrorCode () const |
Bool_t | Matches (const char *url) |
Return kTRUE if 'url' matches the coordinates of this file. More... | |
Int_t | ReOpen (Option_t *mode) |
Reopen a file with a different access mode, like from READ to UPDATE or from NEW, CREATE, RECREATE, UPDATE to READ. More... | |
void | Seek (Long64_t offset, ERelativeTo pos=kBeg) |
Set position from where to start reading. More... | |
Public Member Functions inherited from TFile | |
TFile () | |
File default Constructor. More... | |
TFile (const char *fname, Option_t *option="", const char *ftitle="", Int_t compress=1) | |
Opens or creates a local ROOT file. More... | |
virtual | ~TFile () |
File destructor. More... | |
virtual void | Copy (TObject &) const |
Copy this to obj. More... | |
virtual Bool_t | Cp (const char *dst, Bool_t progressbar=kTRUE, UInt_t buffersize=1000000) |
Allows to copy this file to the dst URL. More... | |
virtual TKey * | CreateKey (TDirectory *mother, const TObject *obj, const char *name, Int_t bufsize) |
Creates key for object and converts data to buffer. More... | |
virtual TKey * | CreateKey (TDirectory *mother, const void *obj, const TClass *cl, const char *name, Int_t bufsize) |
Creates key for object and converts data to buffer. More... | |
virtual void | Delete (const char *namecycle="") |
Delete object namecycle. More... | |
virtual void | Draw (Option_t *option="") |
Fill Graphics Structure and Paint. More... | |
virtual void | DrawMap (const char *keys="*", Option_t *option="") |
Draw map of objects in this file. More... | |
virtual void | FillBuffer (char *&buffer) |
Encode file output buffer. More... | |
TArchiveFile * | GetArchive () const |
Long64_t | GetArchiveOffset () const |
Int_t | GetBestBuffer () const |
Return the best buffer size of objects on this file. More... | |
virtual Long64_t | GetBytesRead () const |
virtual Long64_t | GetBytesReadExtra () const |
virtual Long64_t | GetBytesWritten () const |
Return the total number of bytes written so far to the file. More... | |
TFileCacheRead * | GetCacheRead (TObject *tree=0) const |
Return a pointer to the current read cache. More... | |
TFileCacheWrite * | GetCacheWrite () const |
Return a pointer to the current write cache. More... | |
TArrayC * | GetClassIndex () const |
Int_t | GetCompressionAlgorithm () const |
Float_t | GetCompressionFactor () |
Return the file compression factor. More... | |
Int_t | GetCompressionLevel () const |
Int_t | GetCompressionSettings () const |
virtual Long64_t | GetEND () const |
virtual Int_t | GetErrno () const |
Method returning errno. Is overriden in TRFIOFile. More... | |
Int_t | GetFd () const |
TList * | GetListOfFree () const |
TObjArray * | GetListOfProcessIDs () const |
virtual Int_t | GetNbytesFree () const |
virtual Int_t | GetNbytesInfo () const |
virtual TString | GetNewUrl () |
virtual Int_t | GetNfree () const |
virtual Int_t | GetNProcessIDs () const |
Option_t * | GetOption () const |
virtual Int_t | GetReadCalls () const |
Int_t | GetRecordHeader (char *buf, Long64_t first, Int_t maxbytes, Int_t &nbytes, Int_t &objlen, Int_t &keylen) |
Read the logical record header starting at a certain postion. More... | |
Long64_t | GetRelOffset () const |
virtual Long64_t | GetSeekFree () const |
virtual Long64_t | GetSeekInfo () const |
virtual Long64_t | GetSize () const |
Returns the current file size. More... | |
const TList * | GetStreamerInfoCache () |
Returns the cached list of StreamerInfos used in this file. More... | |
virtual TList * | GetStreamerInfoList () |
Read the list of TStreamerInfo objects written to this file. More... | |
Int_t | GetVersion () const |
virtual void | IncrementProcessIDs () |
virtual Bool_t | IsArchive () const |
Bool_t | IsBinary () const |
Bool_t | IsRaw () const |
virtual void | ls (Option_t *option="") const |
List file contents. More... | |
virtual void | MakeFree (Long64_t first, Long64_t last) |
Mark unused bytes on the file. More... | |
virtual void | MakeProject (const char *dirname, const char *classes="*", Option_t *option="new") |
Generate source code necessary to access the objects stored in the file. More... | |
virtual void | Map () |
List the contents of a file sequentially. More... | |
virtual Bool_t | MustFlush () const |
virtual void | Paint (Option_t *option="") |
Paint all objects in the file. More... | |
virtual void | ReadFree () |
Read the FREE linked list. More... | |
virtual TProcessID * | ReadProcessID (UShort_t pidf) |
The TProcessID with number pidf is read from this file. More... | |
virtual void | ReadStreamerInfo () |
Read the list of StreamerInfo from this file. More... | |
virtual Int_t | Recover () |
Attempt to recover file if not correctly closed. More... | |
virtual void | ResetErrno () const |
Method resetting the errno. Is overridden in TRFIOFile. More... | |
virtual void | SetCacheRead (TFileCacheRead *cache, TObject *tree=0, ECacheAction action=kDisconnect) |
Set a pointer to the read cache. More... | |
virtual void | SetCacheWrite (TFileCacheWrite *cache) |
Set a pointer to the write cache. More... | |
virtual void | SetCompressionAlgorithm (Int_t algorithm=0) |
See comments for function SetCompressionSettings. More... | |
virtual void | SetCompressionLevel (Int_t level=1) |
See comments for function SetCompressionSettings. More... | |
virtual void | SetCompressionSettings (Int_t settings=1) |
Used to specify the compression level and algorithm. More... | |
virtual void | SetEND (Long64_t last) |
virtual void | SetOffset (Long64_t offset, ERelativeTo pos=kBeg) |
Set position from where to start reading. More... | |
virtual void | SetOption (Option_t *option=">") |
virtual void | SetReadCalls (Int_t readcalls=0) |
virtual void | ShowStreamerInfo () |
Show the StreamerInfo of all classes written to this file. More... | |
virtual Int_t | Sizeof () const |
Return the size in bytes of the file header. More... | |
void | SumBuffer (Int_t bufsize) |
Increment statistics for buffer sizes of objects in this file. More... | |
virtual Int_t | Write (const char *name=0, Int_t opt=0, Int_t bufsiz=0) |
Write memory objects to this file. More... | |
virtual Int_t | Write (const char *name=0, Int_t opt=0, Int_t bufsiz=0) const |
One can not save a const TDirectory object. More... | |
virtual void | WriteFree () |
Write FREE linked list on the file. More... | |
virtual void | WriteHeader () |
Write File Header. More... | |
virtual UShort_t | WriteProcessID (TProcessID *pid) |
Check if the ProcessID pidd is already in the file, if not, add it and return the index number in the local file list. More... | |
virtual void | WriteStreamerInfo () |
Write the list of TStreamerInfo as a single object in this file The class Streamer description for all classes written to this file is saved. More... | |
Public Member Functions inherited from TDirectoryFile | |
TDirectoryFile () | |
Default Constructor. More... | |
TDirectoryFile (const char *name, const char *title, Option_t *option="", TDirectory *motherDir=0) | |
Create a new TDirectoryFile. More... | |
virtual | ~TDirectoryFile () |
Destructor. More... | |
void | Add (TObject *obj, Bool_t replace=kFALSE) |
virtual void | Append (TObject *obj, Bool_t replace=kFALSE) |
Append object to this directory. More... | |
Int_t | AppendKey (TKey *key) |
Insert key in the linked list of keys of this directory. More... | |
virtual void | Browse (TBrowser *b) |
Browse the content of the directory. More... | |
void | Build (TFile *motherFile=0, TDirectory *motherDir=0) |
Initialise directory to defaults. More... | |
virtual Bool_t | cd (const char *path=0) |
Change current directory to "this" directory. More... | |
virtual TObject * | CloneObject (const TObject *obj, Bool_t autoadd=kTRUE) |
Make a clone of an object using the Streamer facility. More... | |
virtual TKey * | FindKey (const char *keyname) const |
Find key with name keyname in the current directory. More... | |
virtual TKey * | FindKeyAny (const char *keyname) const |
Find key with name keyname in the current directory or its subdirectories. More... | |
virtual TObject * | FindObjectAny (const char *name) const |
Find object by name in the list of memory objects of the current directory or its sub-directories. More... | |
virtual TObject * | FindObjectAnyFile (const char *name) const |
Scan the memory lists of all files for an object with name. More... | |
virtual TObject * | Get (const char *namecycle) |
Return pointer to object identified by namecycle. More... | |
virtual Int_t | GetBufferSize () const |
Return the buffer size to create new TKeys. More... | |
const TDatime & | GetCreationDate () const |
virtual TDirectory * | GetDirectory (const char *apath, Bool_t printError=false, const char *funcname="GetDirectory") |
Find a directory named "apath". More... | |
virtual TFile * | GetFile () const |
virtual TKey * | GetKey (const char *name, Short_t cycle=9999) const |
Return pointer to key with name,cycle. More... | |
virtual TList * | GetListOfKeys () const |
const TDatime & | GetModificationDate () const |
virtual Int_t | GetNbytesKeys () const |
virtual Int_t | GetNkeys () const |
template<class T > | |
void | GetObject (const char *namecycle, T *&ptr) |
virtual void * | GetObjectChecked (const char *namecycle, const char *classname) |
See documentation of TDirectoryFile::GetObjectCheck(const char *namecycle, const TClass *cl) More... | |
virtual void * | GetObjectChecked (const char *namecycle, const TClass *cl) |
Return pointer to object identified by namecycle if and only if the actual object is a type suitable to be stored as a pointer to a "expectedClass" If expectedClass is null, no check is performed. More... | |
virtual void * | GetObjectUnchecked (const char *namecycle) |
Return pointer to object identified by namecycle. More... | |
virtual Long64_t | GetSeekDir () const |
virtual Long64_t | GetSeekKeys () const |
virtual Long64_t | GetSeekParent () const |
Bool_t | IsModified () const |
Bool_t | IsWritable () const |
virtual TDirectory * | mkdir (const char *name, const char *title="") |
Create a sub-directory "a" or a hierarchy of sub-directories "a/b/c/...". More... | |
virtual TFile * | OpenFile (const char *name, Option_t *option="", const char *ftitle="", Int_t compress=1, Int_t netopt=0) |
Interface to TFile::Open. More... | |
virtual void | Purge (Short_t nkeep=1) |
Purge lowest key cycles in a directory. More... | |
virtual void | ReadAll (Option_t *option="") |
Read objects from a ROOT file directory into memory. More... | |
virtual Int_t | ReadKeys (Bool_t forceRead=kTRUE) |
Read the linked list of keys. More... | |
virtual Int_t | ReadTObject (TObject *obj, const char *keyname) |
Read object with keyname from the current directory. More... | |
virtual void | ResetAfterMerge (TFileMergeInfo *) |
Reset the TDirectory after its content has been merged into another Directory. More... | |
virtual void | rmdir (const char *name) |
Removes subdirectory from the directory. More... | |
virtual void | Save () |
Save recursively all directory keys and headers. More... | |
virtual Int_t | SaveObjectAs (const TObject *obj, const char *filename="", Option_t *option="") const |
Save object in filename. More... | |
virtual void | SaveSelf (Bool_t force=kFALSE) |
Save Directory keys and header. More... | |
virtual void | SetBufferSize (Int_t bufsize) |
Set the default buffer size when creating new TKeys. More... | |
void | SetModified () |
void | SetSeekDir (Long64_t v) |
virtual void | SetTRefAction (TObject *ref, TObject *parent) |
Find the action to be executed in the dictionary of the parent class and store the corresponding exec number into fBits. More... | |
void | SetWritable (Bool_t writable=kTRUE) |
Set the new value of fWritable recursively. More... | |
virtual void | WriteDirHeader () |
Overwrite the Directory header record. More... | |
virtual void | WriteKeys () |
Write Keys linked list on the file. More... | |
virtual Int_t | WriteObjectAny (const void *obj, const char *classname, const char *name, Option_t *option="", Int_t bufsize=0) |
Write object from pointer of class classname in this directory. More... | |
virtual Int_t | WriteObjectAny (const void *obj, const TClass *cl, const char *name, Option_t *option="", Int_t bufsize=0) |
Write object of class with dictionary cl in this directory. More... | |
virtual Int_t | WriteTObject (const TObject *obj, const char *name=0, Option_t *option="", Int_t bufsize=0) |
Write object obj to this directory. More... | |
Public Member Functions inherited from TDirectory | |
TDirectory () | |
Directory default constructor. More... | |
TDirectory (const char *name, const char *title, Option_t *option="", TDirectory *motherDir=0) | |
Create a new Directory. More... | |
virtual | ~TDirectory () |
Destructor. More... | |
virtual void | Clear (Option_t *option="") |
Delete all objects from a Directory list. More... | |
virtual void | DeleteAll (Option_t *option="") |
Delete all objects from memory. More... | |
virtual TObject * | FindObject (const char *name) const |
Find object by name in the list of memory objects. More... | |
virtual TObject * | FindObject (const TObject *obj) const |
Find object in the list of memory objects. More... | |
virtual TList * | GetList () const |
virtual TObject * | GetMother () const |
virtual TDirectory * | GetMotherDir () const |
template<class T > | |
void | GetObject (const char *namecycle, T *&ptr) |
virtual const char * | GetPath () const |
Returns the full path of the directory. More... | |
virtual const char * | GetPathStatic () const |
Returns the full path of the directory. More... | |
TUUID | GetUUID () const |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More... | |
virtual void | pwd () const |
Print the path of the directory. More... | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove object from a Directory. More... | |
virtual TObject * | Remove (TObject *) |
Remove an object from the in-memory list. More... | |
virtual void | SetMother (TObject *mother) |
virtual void | SetName (const char *newname) |
Set the name for directory If the directory name is changed after the directory was written once, ROOT currently would NOT change the name of correspondent key in the mother directory. More... | |
template<class T > | |
Int_t | WriteObject (const T *obj, const char *name, Option_t *option="", Int_t bufsize=0) |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TString &name, const TString &title) | |
TNamed (const TNamed &named) | |
TNamed copy ctor. More... | |
virtual | ~TNamed () |
virtual TObject * | Clone (const char *newname="") const |
Make a clone of an object using the Streamer facility. More... | |
virtual Int_t | Compare (const TObject *obj) const |
Compare two TNamed objects. More... | |
virtual const char * | GetName () const |
Returns name of object. More... | |
virtual const char * | GetTitle () const |
Returns title of object. More... | |
virtual ULong_t | Hash () const |
Return hash value for this object. More... | |
virtual Bool_t | IsSortable () const |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. More... | |
virtual void | SetNameTitle (const char *name, const char *title) |
Set all the TNamed parameters (name and title). More... | |
virtual void | SetTitle (const char *title="") |
Set the title of the TNamed. More... | |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. More... | |
TObject (const TObject &object) | |
TObject copy ctor. More... | |
virtual | ~TObject () |
TObject destructor. More... | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. More... | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. More... | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. More... | |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
Computes distance from point (px,py) to the object. More... | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. More... | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad) . More... | |
virtual void | Dump () const |
Dump contents of object on stdout. More... | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. More... | |
virtual void | Execute (const char *method, const char *params, Int_t *error=0) |
Execute method on this object with the given parameter string, e.g. More... | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=0) |
Execute method on this object with parameters stored in the TObjArray. More... | |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
Execute action corresponding to an event at (px,py). More... | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. More... | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. More... | |
virtual const char * | GetIconName () const |
Returns mime type name of object. More... | |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
Returns string containing info about the object at position (px,py). More... | |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. More... | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. More... | |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. More... | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". More... | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. More... | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. More... | |
void | InvertBit (UInt_t f) |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). More... | |
Bool_t | IsOnHeap () const |
Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More... | |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification. More... | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. More... | |
void | operator delete (void *ptr) |
Operator delete. More... | |
void | operator delete[] (void *ptr) |
Operator delete []. More... | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. More... | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. More... | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. More... | |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. More... | |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
Save a primitive as a C++ statement(s) on output stream "out". More... | |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. More... | |
void | SetBit (UInt_t f) |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. More... | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. More... | |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. More... | |
Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More... | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. More... | |
Private Member Functions | |
TXNetFile (const TXNetFile &) | |
void | CreateXClient (const char *url, Option_t *option, Int_t netopt, Bool_t parallelopen) |
The real creation work is done here. More... | |
void | Init (Bool_t create) |
Initialize the file. More... | |
Bool_t | Open (Option_t *option, Bool_t parallelopen) |
The real creation work is done here. More... | |
TXNetFile & | operator= (const TXNetFile &) |
Int_t | ParseOptions (const char *opts, Int_t &cachesz, Int_t &readaheadsz, Int_t &rmpolicy, Int_t &mxredir, Int_t &rastrategy, Int_t &readtrimblksz) |
Parse input options for cache parameters. More... | |
void | SynchronizeCacheSize () |
Synchronize the cache size Alternative purging policy. More... | |
Int_t | SysClose (Int_t fd) |
Override TNetFile::SysClose (see parent's method for more details). More... | |
Int_t | SysOpen (const char *pathname, Int_t flags, UInt_t mode) |
Override TNetFile::SysOpen (see parent's method for more details). More... | |
Int_t | SysStat (Int_t fd, Long_t *id, Long64_t *size, Long_t *flags, Long_t *modtime) |
Override TNetFile::SysStat (see parent's method for more details). More... | |
Static Private Member Functions | |
static void | FormUrl (TUrl uut, TString &uu) |
Form url for rootd socket. More... | |
static Int_t | GetRootdProtocol (TSocket *s) |
Find out the remote rootd protocol version. More... | |
static void | SetEnv () |
Set the relevant environment variables. More... | |
Private Attributes | |
XrdClient * | fClient |
void * | fInitMtx |
Bool_t | fIsRootd |
Static Private Attributes | |
static TFileStager * | fgFileStager = 0 |
static Bool_t | fgInitDone = kFALSE |
static Bool_t | fgRootdBC = kTRUE |
Friends | |
class | TXNetSystem |
Additional Inherited Members | |
Public Types inherited from TFile | |
enum | { kStartBigFile = 2000000000 } |
enum | EAsyncOpenStatus { kAOSNotAsync = -1, kAOSFailure = 0, kAOSInProgress = 1, kAOSSuccess = 2 } |
Asynchronous open request status. More... | |
enum | ECacheAction { kDisconnect = 0, kDoNotDisconnect = 1 } |
TTreeCache flushing semantics. More... | |
enum | EFileType { kDefault = 0, kLocal = 1, kNet = 2, kWeb = 3, kFile = 4, kMerge = 5 } |
File type. More... | |
enum | EOpenTimeOut { kInstantTimeout = 0, kEternalTimeout = 999999999 } |
Open timeout constants. More... | |
enum | ERelativeTo { kBeg = 0, kCur = 1, kEnd = 2 } |
enum | EStatusBits { kRecovered = BIT(10), kHasReferences = BIT(11), kDevNull = BIT(12), kWriteError = BIT(14), kBinaryFile = BIT(15), kRedirected = BIT(16) } |
TFile status bits. BIT(13) is taken up by TObject. More... | |
Public Types inherited from TDirectoryFile | |
enum | { kCloseDirectory = BIT(7) } |
Public Types inherited from TObject | |
enum | { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff } |
enum | { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) } |
enum | EStatusBits { kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13) } |
Static Public Member Functions inherited from TFile | |
static TFileOpenHandle * | AsyncOpen (const char *name, Option_t *option="", const char *ftitle="", Int_t compress=1, Int_t netopt=0) |
Submit an asynchronous open request. More... | |
static Bool_t | Cp (const char *src, const char *dst, Bool_t progressbar=kTRUE, UInt_t buffersize=1000000) |
Allows to copy file from src to dst URL. More... | |
static TFile *& | CurrentFile () |
Return the current ROOT file if any. More... | |
static EAsyncOpenStatus | GetAsyncOpenStatus (const char *name) |
Get status of the async open request related to 'name'. More... | |
static EAsyncOpenStatus | GetAsyncOpenStatus (TFileOpenHandle *handle) |
Get status of the async open request related to 'handle'. More... | |
static const char * | GetCacheFileDir () |
Get the directory where to locally stage/cache remote files. More... | |
static const TUrl * | GetEndpointUrl (const char *name) |
Get final URL for file being opened asynchronously. More... | |
static Long64_t | GetFileBytesRead () |
Static function returning the total number of bytes read from all files. More... | |
static Long64_t | GetFileBytesWritten () |
Static function returning the total number of bytes written to all files. More... | |
static Long64_t | GetFileCounter () |
static Int_t | GetFileReadCalls () |
Static function returning the total number of read calls from all files. More... | |
static Bool_t | GetOnlyStaged () |
Returns staged only flag. More... | |
static UInt_t | GetOpenTimeout () |
Returns open timeout (in ms). More... | |
static Int_t | GetReadaheadSize () |
Static function returning the readahead buffer size. More... | |
static Bool_t | GetReadStreamerInfo () |
If the streamerinfos are to be read at file opening. More... | |
static EFileType | GetType (const char *name, Option_t *option="", TString *prefix=0) |
Resolve the file type as a function of the protocol field in 'name'. More... | |
static void | IncrementFileCounter () |
static TFile * | Open (const char *name, Option_t *option="", const char *ftitle="", Int_t compress=1, Int_t netopt=0) |
Create / open a file. More... | |
static TFile * | Open (TFileOpenHandle *handle) |
Waits for the completion of an asynchronous open request. More... | |
static Bool_t | SetCacheFileDir (const char *cacheDir, Bool_t operateDisconnected=kTRUE, Bool_t forceCacheread=kFALSE) |
Sets the directory where to locally stage/cache remote files. More... | |
static void | SetFileBytesRead (Long64_t bytes=0) |
static void | SetFileBytesWritten (Long64_t bytes=0) |
static void | SetFileReadCalls (Int_t readcalls=0) |
static Bool_t | SetOnlyStaged (Bool_t onlystaged) |
Sets only staged flag. More... | |
static UInt_t | SetOpenTimeout (UInt_t timeout) |
Sets open timeout time (in ms). Returns previous timeout value. More... | |
static void | SetReadaheadSize (Int_t bufsize=256000) |
static void | SetReadStreamerInfo (Bool_t readinfo=kTRUE) |
Specify if the streamerinfos must be read at file opening. More... | |
static Bool_t | ShrinkCacheFileDir (Long64_t shrinkSize, Long_t cleanupInteval=0) |
Try to shrink the cache to the desired size. More... | |
Static Public Member Functions inherited from TDirectory | |
static void | AddDirectory (Bool_t add=kTRUE) |
Sets the flag controlling the automatic add objects like histograms, TGraph2D, etc in memory. More... | |
static Bool_t | AddDirectoryStatus () |
Static function: see TDirectory::AddDirectory for more comments. More... | |
static Bool_t | Cd (const char *path) |
Change current directory to "path". More... | |
static TDirectory *& | CurrentDirectory () |
Return the current directory for the current thread. More... | |
static void | DecodeNameCycle (const char *namecycle, char *name, Short_t &cycle, const size_t namesize=0) |
Decode a namecycle "aap;2" into name "aap" and cycle "2". More... | |
static void | EncodeNameCycle (char *buffer, const char *name, Short_t cycle) |
Encode the name and cycle into buffer like: "aap;2". More... | |
Static Public Member Functions inherited from TObject | |
static Long_t | GetDtorOnly () |
Return destructor only flag. More... | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. More... | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. More... | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. More... | |
Protected Member Functions inherited from TNetFile | |
TNetFile (const TNetFile &) | |
TNetFile (const char *url, const char *ftitle, Int_t comp, Bool_t) | |
Create a TNetFile object. More... | |
virtual void | ConnectServer (Int_t *stat, EMessageTypes *kind, Int_t netopt, Int_t tcpwindowsize, Bool_t forceOpen, Bool_t forceRead) |
Connect to remote rootd server. More... | |
virtual void | Create (const char *url, Option_t *option, Int_t netopt) |
Create a NetFile object. More... | |
virtual void | Create (TSocket *s, Option_t *option, Int_t netopt) |
Create a NetFile object using an existing connection (socket s). More... | |
TNetFile & | operator= (const TNetFile &) |
void | PrintError (const char *where, Int_t err) |
Print error string depending on error code. More... | |
Int_t | Recv (Int_t &status, EMessageTypes &kind) |
Return status from rootd server and message kind. More... | |
Protected Member Functions inherited from TFile | |
virtual Long64_t | DirCreateEntry (TDirectory *) |
virtual Int_t | DirReadKeys (TDirectory *) |
virtual void | DirWriteHeader (TDirectory *) |
virtual void | DirWriteKeys (TDirectory *) |
Bool_t | FlushWriteCache () |
Flush the write cache if active. More... | |
Int_t | MakeProjectParMake (const char *packname, const char *filename) |
Create makefile at 'filemake' for PAR package 'pack'. More... | |
Int_t | MakeProjectParProofInf (const char *packname, const char *proofinfdir) |
Create BUILD.sh and SETUP.C under 'proofinf' for PAR package 'pack'. More... | |
Int_t | ReadBufferViaCache (char *buf, Int_t len) |
Read buffer via cache. More... | |
virtual Int_t | SysRead (Int_t fd, void *buf, Int_t len) |
Interface to system read. All arguments like in POSIX read(). More... | |
virtual Long64_t | SysSeek (Int_t fd, Long64_t offset, Int_t whence) |
Interface to system lseek. More... | |
virtual Int_t | SysSync (Int_t fd) |
Interface to system fsync. All arguments like in POSIX fsync(). More... | |
virtual Int_t | SysWrite (Int_t fd, const void *buf, Int_t len) |
Interface to system write. All arguments like in POSIX write(). More... | |
Int_t | WriteBufferViaCache (const char *buf, Int_t len) |
Write buffer via cache. More... | |
Protected Member Functions inherited from TDirectoryFile | |
virtual void | CleanTargets () |
Clean the pointers to this object (gDirectory, TContext, etc.) More... | |
void | Init (TClass *cl=0) |
Initialize the key associated with this directory (and the related data members. More... | |
Protected Member Functions inherited from TDirectory | |
TDirectory (const TDirectory &directory) | |
Copy constructor. More... | |
Bool_t | cd1 (const char *path) |
flag to add histograms, graphs,etc to the directory More... | |
void | FillFullPath (TString &buf) const |
Recursive method to fill full path for directory. More... | |
void | operator= (const TDirectory &) |
void | RegisterContext (TContext *ctxt) |
Register a TContext pointing to this TDirectory object. More... | |
void | UnregisterContext (TContext *ctxt) |
UnRegister a TContext pointing to this TDirectory object. More... | |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). More... | |
void | MakeZombie () |
Static Protected Member Functions inherited from TDirectory | |
static Bool_t | Cd1 (const char *path) |
Change current directory to "path". More... | |
Protected Attributes inherited from TNetFile | |
TUrl | fEndpointUrl |
Int_t | fErrorCode |
Int_t | fNetopt |
Int_t | fProtocol |
TSocket * | fSocket |
TString | fUser |
Protected Attributes inherited from TFile | |
TArchiveFile * | fArchive |
!Archive file from which we read this file More... | |
Long64_t | fArchiveOffset |
!Offset at which file starts in archive More... | |
TFileOpenHandle * | fAsyncHandle |
!For proper automatic cleanup More... | |
EAsyncOpenStatus | fAsyncOpenStatus |
!Status of an asynchronous open request More... | |
Long64_t | fBEGIN |
First used byte in file. More... | |
Long64_t | fBytesRead |
Number of bytes read from this file. More... | |
Long64_t | fBytesReadExtra |
Number of extra bytes (overhead) read by the readahead buffer. More... | |
Long64_t | fBytesWrite |
Number of bytes written to this file. More... | |
TFileCacheRead * | fCacheRead |
!Pointer to the read cache (if any) More... | |
TMap * | fCacheReadMap |
!Pointer to the read cache (if any) More... | |
TFileCacheWrite * | fCacheWrite |
!Pointer to the write cache (if any) More... | |
TArrayC * | fClassIndex |
!Index of TStreamerInfo classes written to this file More... | |
Int_t | fCompress |
Compression level and algorithm. More... | |
Int_t | fD |
File descriptor. More... | |
Long64_t | fEND |
Last used byte in file. More... | |
TList * | fFree |
Free segments linked list table. More... | |
TList * | fInfoCache |
!Cached list of the streamer infos in this file More... | |
Bool_t | fInitDone: 1 |
!True if the file has been initialized More... | |
Bool_t | fIsArchive: 1 |
!True if this is a pure archive file More... | |
Bool_t | fIsPcmFile: 1 |
!True if the file is a ROOT pcm file. More... | |
Bool_t | fIsRootFile: 1 |
!True is this is a ROOT file, raw file otherwise More... | |
Bool_t | fMustFlush: 1 |
!True if the file buffers must be flushed More... | |
Int_t | fNbytesFree |
Number of bytes for free segments structure. More... | |
Int_t | fNbytesInfo |
Number of bytes for StreamerInfo record. More... | |
Bool_t | fNoAnchorInName: 1 |
!True if we don't want to force the anchor to be appended to the file name More... | |
Int_t | fNProcessIDs |
Number of TProcessID written to this file. More... | |
Long64_t | fOffset |
!Seek offset cache More... | |
TList * | fOpenPhases |
!Time info about open phases More... | |
TString | fOption |
File options. More... | |
TObjArray * | fProcessIDs |
!Array of pointers to TProcessIDs More... | |
Int_t | fReadCalls |
Number of read calls ( not counting the cache calls ) More... | |
TString | fRealName |
Effective real file name (not original url) More... | |
Long64_t | fSeekFree |
Location on disk of free segments structure. More... | |
Long64_t | fSeekInfo |
Location on disk of StreamerInfo record. More... | |
Double_t | fSum2Buffer |
Sum of squares of buffer sizes of objects written so far. More... | |
Double_t | fSumBuffer |
Sum of buffer sizes of objects written so far. More... | |
Char_t | fUnits |
Number of bytes for file pointers. More... | |
TUrl | fUrl |
!URL of file More... | |
Int_t | fVersion |
File format version. More... | |
std::mutex | fWriteMutex |
!Lock for writing baskets / keys into the file. More... | |
Int_t | fWritten |
Number of objects written so far. More... | |
Protected Attributes inherited from TDirectoryFile | |
Int_t | fBufferSize |
Default buffer size to create new TKeys. More... | |
TDatime | fDatimeC |
Date and time when directory is created. More... | |
TDatime | fDatimeM |
Date and time of last modification. More... | |
TFile * | fFile |
Pointer to current file in memory. More... | |
TList * | fKeys |
Pointer to keys list in memory. More... | |
Bool_t | fModified |
True if directory has been modified. More... | |
Int_t | fNbytesKeys |
Number of bytes for the keys. More... | |
Int_t | fNbytesName |
Number of bytes in TNamed at creation time. More... | |
Long64_t | fSeekDir |
Location of directory on file. More... | |
Long64_t | fSeekKeys |
Location of Keys record on file. More... | |
Long64_t | fSeekParent |
Location of parent directory on file. More... | |
Bool_t | fWritable |
True if directory is writable. More... | |
Protected Attributes inherited from TDirectory | |
TContext * | fContext |
Buffer for GetPath() function. More... | |
TList * | fList |
TObject * | fMother |
TString | fPathBuffer |
TUUID | fUUID |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Static Protected Attributes inherited from TFile | |
static TList * | fgAsyncOpenRequests = 0 |
static std::atomic< Long64_t > | fgBytesRead {0} |
Number of bytes read by all TFile objects. More... | |
static std::atomic< Long64_t > | fgBytesWrite {0} |
Number of bytes written by all TFile objects. More... | |
static TString | fgCacheFileDir |
Directory where to locally stage files. More... | |
static Bool_t | fgCacheFileDisconnected = kTRUE |
Indicates, we trust in the files in the cache dir without stat on the cached file. More... | |
static Bool_t | fgCacheFileForce = kFALSE |
Indicates, to force all READ to CACHEREAD. More... | |
static std::atomic< Long64_t > | fgFileCounter {0} |
Counter for all opened files. More... | |
static Bool_t | fgOnlyStaged = 0 |
Before the file is opened, it is checked, that the file is staged, if not, the open fails. More... | |
static UInt_t | fgOpenTimeout = TFile::kEternalTimeout |
Timeout for open operations in ms - 0 corresponds to blocking i/o. More... | |
static Int_t | fgReadaheadSize = 256000 |
Readahead buffer size. More... | |
static std::atomic< Int_t > | fgReadCalls {0} |
Number of bytes read from all TFile objects. More... | |
static Bool_t | fgReadInfo = kTRUE |
if true (default) ReadStreamerInfo is called when opening a file More... | |
static ROOT::TRWSpinLock | fgRwLock |
!Read-write lock to protect global PID list More... | |
Static Protected Attributes inherited from TDirectory | |
static Bool_t | fgAddDirectory = kTRUE |
Pointer to a list of TContext object pointing to this TDirectory. More... | |
#include <TXNetFile.h>
|
private |
|
inline |
Definition at line 98 of file TXNetFile.h.
TXNetFile::TXNetFile | ( | const char * | url, |
Option_t * | option = "" , |
||
const char * | ftitle = "" , |
||
Int_t | compress = 1 , |
||
Int_t | netopt = 0 , |
||
Bool_t | parallelopen = kFALSE , |
||
const char * | logicalurl = 0 |
||
) |
Create a TXNetFile object.
A TXNetFile object is the same as a TNetFile (from which the former derives) except that the protocol is extended to support dealing with new xrootd data server or xrootd load balancer server.
The "url" argument must be of the form
root://server1:port1[,server2:port2,...,serverN:portN]/pathfile,
Note that this means that multiple servers (>= 1) can be specified in the url. The connection will try to connect to the first server:port and if that does not succeed, it will try the second one, and so on until it finds a server that will respond.
See the TNetFile documentation for the description of the other arguments.
The creation consists of internal variable settings (most important is the client's domain), creation of a TXUrl array containing all specified urls (a single url is serverX:portX/pathfile), trying to connect to the servers calling Connect() method, getting a valid access to the remote server the client is connected to using GetAccessToSrv() method, recognizing the remote server (if an old rootd the TNetFile's Create method will be called).
The options field of the URL can be used for the following purposes: a. open a non-ROOT generic file "root://server1:port1[,server2:port2,...]/pathfile?filetype=raw" b. re-check the environment variables "root://server1:port1[,server2:port2,...]/pathfile?checkenv" c. set the cache size (in bytes) "root://server1:port1[,server2:port2,...]/pathfile?cachesz=20000000" d. set the read-ahead size (in bytes) "root://server1:port1[,server2:port2,...]/pathfile?readaheadsz=100000" e. set the cache remove policy "root://server1:port1[,server2:port2,...]/pathfile?rmpolicy=1" f. set the max number of redirections "root://server1:port1[,server2:port2,...]/pathfile?mxredir=2" (multiple options can be set concurrently)
Definition at line 113 of file TXNetFile.cxx.
|
virtual |
Destructor.
Definition at line 156 of file TXNetFile.cxx.
Close the file (see TNetFile::Close() or TFile::Close() for more details).
Reimplemented in TAlienFile.
Definition at line 1037 of file TXNetFile.cxx.
|
private |
The real creation work is done here.
Definition at line 251 of file TXNetFile.cxx.
|
virtual |
Flushes un-written data.
Reimplemented from TNetFile.
Definition at line 1061 of file TXNetFile.cxx.
Form url for rootd socket.
Definition at line 170 of file TXNetFile.cxx.
|
virtual |
Return status of asynchronous request.
Reimplemented from TFile.
Definition at line 1001 of file TXNetFile.cxx.
|
virtual |
Max number of bytes to prefetch.
Reimplemented from TFile.
Definition at line 1425 of file TXNetFile.cxx.
Find out the remote rootd protocol version.
Returns -1 in case of error.
Definition at line 421 of file TXNetFile.cxx.
Initialize the file.
Makes sure that the file is really open before calling TFile::Init. It may block.
Reimplemented from TNetFile.
Definition at line 920 of file TXNetFile.cxx.
|
virtual |
Return kTRUE if the file is open, kFALSE otherwise.
Reimplemented from TNetFile.
Definition at line 983 of file TXNetFile.cxx.
The real creation work is done here.
Definition at line 476 of file TXNetFile.cxx.
|
private |
Parse input options for cache parameters.
Definition at line 199 of file TXNetFile.cxx.
Print the local statistics.
Reimplemented from TNetFile.
Definition at line 1442 of file TXNetFile.cxx.
Override TNetFile::ReadBuffer to deal with the xrootd server.
Returns kTRUE in case of errors.
Reimplemented from TNetFile.
Definition at line 591 of file TXNetFile.cxx.
Pass through to TNetFile implementation which will call back eventually to our ReadBuffer with 2 arguments to deal with xrootd errors.
Reimplemented from TNetFile.
Definition at line 685 of file TXNetFile.cxx.
Implementation dealing with the xrootd server.
Returns kTRUE in case of errors. This is the same as TXNetFile::ReadBuffer but using the async call from xrootd
Reimplemented from TFile.
Definition at line 696 of file TXNetFile.cxx.
Read the nbuf blocks described in arrays pos and len, where pos[i] is the seek position of block i of length len[i].
Note that for nbuf=1, this call is equivalent to TFile::ReadBuffer This function is overloaded by TNetFile, TWebFile, etc. Returns kTRUE in case of failure. Note: This is the overloading made in TXNetFile. If ReadBuffers is supported by xrootd it will try to get the whole list from one single call avoiding the latency of multiple calls
Reimplemented from TNetFile.
Definition at line 763 of file TXNetFile.cxx.
Re-open the file (see TNetFile::ReOpen() or TFile::ReOpen() for more details).
Definition at line 1022 of file TXNetFile.cxx.
|
virtual |
Reset the cache.
Definition at line 1416 of file TXNetFile.cxx.
|
staticprivate |
Set the relevant environment variables.
Definition at line 1201 of file TXNetFile.cxx.
|
private |
Synchronize the cache size Alternative purging policy.
Definition at line 1384 of file TXNetFile.cxx.
Override TNetFile::SysClose (see parent's method for more details).
Reimplemented from TNetFile.
Definition at line 1146 of file TXNetFile.cxx.
Override TNetFile::SysOpen (see parent's method for more details).
Reimplemented from TNetFile.
Definition at line 1170 of file TXNetFile.cxx.
|
privatevirtual |
Override TNetFile::SysStat (see parent's method for more details).
Reimplemented from TNetFile.
Definition at line 1099 of file TXNetFile.cxx.
Override TNetFile::WriteBuffer to deal with the xrootd server.
Returns kTRUE in case of errors.
Reimplemented from TNetFile.
Definition at line 860 of file TXNetFile.cxx.
|
friend |
Definition at line 57 of file TXNetFile.h.
|
private |
Definition at line 61 of file TXNetFile.h.
|
staticprivate |
Definition at line 67 of file TXNetFile.h.
Definition at line 65 of file TXNetFile.h.
Definition at line 66 of file TXNetFile.h.
|
private |
Definition at line 69 of file TXNetFile.h.
|
private |
Definition at line 62 of file TXNetFile.h.