![]() |
ROOT
6.06/09
Reference Guide
|
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format.
If the key is located past the 32 bit file limit (> 2 GB) then some fields will be 8 instead of 4 bytes:
Byte Range | Member Name | Description |
---|---|---|
1->4 | Nbytes | Length of compressed object (in bytes) |
5->6 | Version | TKey version identifier |
7->10 | ObjLen | Length of uncompressed object |
11->14 | Datime | Date and time when object was written to file |
15->16 | KeyLen | Length of the key structure (in bytes) |
17->18 | Cycle | Cycle of key |
19->22 [19->26] | SeekKey | Pointer to record itself (consistency check) |
23->26 [27->34] | SeekPdir | Pointer to directory header |
27->27 [35->35] | lname | Number of bytes in the class name |
28->.. [36->..] | ClassName | Object Class Name |
..->.. | lname | Number of bytes in the object name |
..->.. | Name | lName bytes with the name of the object |
..->.. | lTitle | Number of bytes in the object title |
..->.. | Title | Title of the object |
--—> | DATA | Data bytes associated to the object |
The first data record starts at byte fBEGIN (currently set to kBEGIN). Bytes 1->kBEGIN contain the file description, when fVersion >= 1000000 it is a large file (> 2 GB) and the offsets will be 8 bytes long and fUnits will be set to 8:
Byte Range | Record Name | Description |
---|---|---|
1->4 | "root" | Root file identifier |
5->8 | fVersion | File format version |
9->12 | fBEGIN | Pointer to first data record |
13->16 [13->20] | fEND | Pointer to first free word at the EOF |
17->20 [21->28] | fSeekFree | Pointer to FREE data record |
21->24 [29->32] | fNbytesFree | Number of bytes in FREE data record |
25->28 [33->36] | nfree | Number of free data records |
29->32 [37->40] | fNbytesName | Number of bytes in TNamed at creation time |
33->33 [41->41] | fUnits | Number of bytes for file pointers |
34->37 [42->45] | fCompress | Compression level and algorithm |
38->41 [46->53] | fSeekInfo | Pointer to TStreamerInfo record |
42->45 [54->57] | fNbytesInfo | Number of bytes in TStreamerInfo record |
46->63 [58->75] | fUUID | Universal Unique ID |
The structure of a directory is shown in TDirectoryFile::TDirectoryFile
Public Types | |
enum | EAsyncOpenStatus { kAOSNotAsync = -1, kAOSFailure = 0, kAOSInProgress = 1, kAOSSuccess = 2 } |
Asynchronous open request status. More... | |
enum | EOpenTimeOut { kInstantTimeout = 0, kEternalTimeout = 999999999 } |
Open timeout constants. More... | |
enum | ECacheAction { kDisconnect = 0, kDoNotDisconnect = 1 } |
TTreeCache flushing semantics. More... | |
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... | |
enum | ERelativeTo { kBeg = 0, kCur = 1, kEnd = 2 } |
enum | { kStartBigFile = 2000000000 } |
enum | EFileType { kDefault = 0, kLocal = 1, kNet = 2, kWeb = 3, kFile = 4, kMerge = 5 } |
File type. More... | |
![]() | |
enum | { kCloseDirectory = BIT(7) } |
![]() | |
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) } |
enum | { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff } |
enum | { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) } |
Public Member Functions | |
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 | Close (Option_t *option="") |
Close a file. 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... | |
virtual void | Flush () |
Synchronize a file's in-memory and on-disk states. More... | |
TArchiveFile * | GetArchive () const |
Long64_t | GetArchiveOffset () const |
Int_t | GetBestBuffer () const |
Return the best buffer size of objects on this file. More... | |
virtual Int_t | GetBytesToPrefetch () const |
Max number of bytes to prefetch. 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 |
Int_t | GetCompressionLevel () const |
Int_t | GetCompressionSettings () const |
Float_t | GetCompressionFactor () |
Return the file compression factor. More... | |
virtual Long64_t | GetEND () const |
virtual Int_t | GetErrno () const |
Method returning errno. Is overriden in TRFIOFile. More... | |
virtual void | ResetErrno () const |
Method resetting the errno. Is overridden in TRFIOFile. More... | |
Int_t | GetFd () const |
virtual const TUrl * | GetEndpointUrl () const |
TObjArray * | GetListOfProcessIDs () const |
TList * | GetListOfFree () const |
virtual Int_t | GetNfree () const |
virtual Int_t | GetNProcessIDs () const |
Option_t * | GetOption () const |
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... | |
virtual Int_t | GetReadCalls () const |
Int_t | GetVersion () 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... | |
virtual Int_t | GetNbytesInfo () const |
virtual Int_t | GetNbytesFree () const |
virtual TString | GetNewUrl () |
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... | |
virtual TList * | GetStreamerInfoList () |
Read the list of TStreamerInfo objects written to this file. More... | |
const TList * | GetStreamerInfoCache () |
Returns the cached list of StreamerInfos used in this file. More... | |
virtual void | IncrementProcessIDs () |
virtual Bool_t | IsArchive () const |
Bool_t | IsBinary () const |
Bool_t | IsRaw () const |
virtual Bool_t | IsOpen () const |
Returns kTRUE in case file is open and kFALSE if file is not open. More... | |
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 | Matches (const char *name) |
Return kTRUE if 'url' matches the coordinates of this file. More... | |
virtual Bool_t | MustFlush () const |
virtual void | Paint (Option_t *option="") |
Paint all objects in the file. More... | |
virtual void | Print (Option_t *option="") const |
Print all objects in the file. More... | |
virtual Bool_t | ReadBufferAsync (Long64_t offs, Int_t len) |
virtual Bool_t | ReadBuffer (char *buf, Int_t len) |
Read a buffer from the file. More... | |
virtual Bool_t | ReadBuffer (char *buf, Long64_t pos, Int_t len) |
Read a buffer from the file at the offset 'pos' in the file. 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. 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 Int_t | ReOpen (Option_t *mode) |
Reopen a file with a different access mode. More... | |
virtual void | Seek (Long64_t offset, ERelativeTo pos=kBeg) |
Seek to a specific position in the file. Pos it either kBeg, kCur or kEnd. 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 Bool_t | WriteBuffer (const char *buf, Int_t len) |
Write a buffer to the 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... | |
![]() | |
TDirectoryFile () | |
TDirectoryFile (const char *name, const char *title, Option_t *option="", TDirectory *motherDir=0) | |
Create a new TDirectoryFile. More... | |
virtual | ~TDirectoryFile () |
Destructor. More... | |
virtual void | Append (TObject *obj, Bool_t replace=kFALSE) |
Append object to this directory. More... | |
void | Add (TObject *obj, Bool_t replace=kFALSE) |
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 TObject * | CloneObject (const TObject *obj, Bool_t autoadd=kTRUE) |
Make a clone of an object using the Streamer facility. More... | |
virtual Bool_t | cd (const char *path=0) |
Change current directory to "this" directory. 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 TDirectory * | GetDirectory (const char *apath, Bool_t printError=false, const char *funcname="GetDirectory") |
Find a directory named "apath". More... | |
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 Int_t | GetBufferSize () const |
Return the buffer size to create new TKeys. More... | |
const TDatime & | GetCreationDate () const |
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 |
virtual Long64_t | GetSeekDir () const |
virtual Long64_t | GetSeekParent () const |
virtual Long64_t | GetSeekKeys () const |
Bool_t | IsModified () const |
Bool_t | IsWritable () const |
virtual TDirectory * | mkdir (const char *name, const char *title="") |
Create a sub-directory and return a pointer to the created directory. 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 void | SaveSelf (Bool_t force=kFALSE) |
Save Directory keys and header. More... | |
virtual Int_t | SaveObjectAs (const TObject *obj, const char *filename="", Option_t *option="") const |
Save object in filename. 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 Int_t | WriteTObject (const TObject *obj, const char *name=0, Option_t *option="", Int_t bufsize=0) |
Write object obj to this directory. 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 void | WriteDirHeader () |
Overwrite the Directory header record. More... | |
virtual void | WriteKeys () |
Write Keys linked list on the file. More... | |
![]() | |
TDirectory () | |
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... | |
template<class T > | |
void | GetObject (const char *namecycle, T *&ptr) |
virtual TList * | GetList () const |
virtual TObject * | GetMother () const |
virtual TDirectory * | GetMotherDir () const |
virtual const char * | GetPathStatic () const |
Returns the full path of the directory. More... | |
virtual const char * | GetPath () 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 TObject * | Remove (TObject *) |
Remove an object from the in-memory list. More... | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove object from a Directory. 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) |
![]() | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TString &name, const TString &title) | |
TNamed (const TNamed &named) | |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. 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 |
virtual void | SetNameTitle (const char *name, const char *title) |
Change (i.e. set) all the TNamed parameters (name and title). More... | |
virtual void | SetTitle (const char *title="") |
Change (i.e. set) the title of the TNamed. More... | |
![]() | |
TObject () | |
TObject (const TObject &object) | |
TObject copy ctor. More... | |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. More... | |
virtual | ~TObject () |
TObject destructor. 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 pad. More... | |
virtual void | Dump () const |
Dump contents of object on stdout. 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 Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. More... | |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. 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 Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. 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... | |
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 |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification. 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... | |
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... | |
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 | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More... | |
void * | operator new (size_t sz) |
void * | operator new[] (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz, void *vp) |
void | operator delete (void *ptr) |
Operator delete. More... | |
void | operator delete[] (void *ptr) |
Operator delete []. 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) |
void | ResetBit (UInt_t f) |
Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
void | InvertBit (UInt_t f) |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. More... | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. More... | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. More... | |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. More... | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. 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... | |
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... | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. More... | |
Static Public Member Functions | |
static TFile *& | CurrentFile () |
Return the current ROOT file if any. More... | |
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 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 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 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 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 Int_t | GetFileReadCalls () |
Static function returning the total number of read calls from all files. More... | |
static Int_t | GetReadaheadSize () |
Static function returning the readahead buffer size. More... | |
static void | SetFileBytesRead (Long64_t bytes=0) |
static void | SetFileBytesWritten (Long64_t bytes=0) |
static void | SetFileReadCalls (Int_t readcalls=0) |
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 | GetReadStreamerInfo () |
If the streamerinfos are to be read at file opening. More... | |
static Long64_t | GetFileCounter () |
static void | IncrementFileCounter () |
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 const char * | GetCacheFileDir () |
Get the directory where to locally stage/cache remote files. More... | |
static Bool_t | ShrinkCacheFileDir (Long64_t shrinkSize, Long_t cleanupInteval=0) |
Try to shrink the cache to the desired size. 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 UInt_t | SetOpenTimeout (UInt_t timeout) |
Sets open timeout time (in ms). Returns previous timeout value. More... | |
static UInt_t | GetOpenTimeout () |
Returns open timeout (in ms). More... | |
static Bool_t | SetOnlyStaged (Bool_t onlystaged) |
Sets only staged flag. More... | |
static Bool_t | GetOnlyStaged () |
Returns staged only flag. More... | |
![]() | |
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 TDirectory *& | CurrentDirectory () |
Return the current directory for the current thread. More... | |
static Bool_t | Cd (const char *path) |
Change current directory to "path". 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 Long_t | GetDtorOnly () |
Return destructor only flag. More... | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. More... | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. More... | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. More... | |
Protected Member Functions | |
virtual EAsyncOpenStatus | GetAsyncOpenStatus () |
virtual void | Init (Bool_t create) |
Initialize a TFile object. More... | |
Bool_t | FlushWriteCache () |
Flush the write cache if active. More... | |
Int_t | ReadBufferViaCache (char *buf, Int_t len) |
Read buffer via cache. More... | |
Int_t | WriteBufferViaCache (const char *buf, Int_t len) |
Write buffer via cache. 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... | |
virtual Int_t | SysOpen (const char *pathname, Int_t flags, UInt_t mode) |
Interface to system open. All arguments like in POSIX open(). More... | |
virtual Int_t | SysClose (Int_t fd) |
Interface to system close. All arguments like in POSIX close(). 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 Int_t | SysWrite (Int_t fd, const void *buf, Int_t len) |
Interface to system write. All arguments like in POSIX write(). More... | |
virtual Long64_t | SysSeek (Int_t fd, Long64_t offset, Int_t whence) |
Interface to system lseek. More... | |
virtual Int_t | SysStat (Int_t fd, Long_t *id, Long64_t *size, Long_t *flags, Long_t *modtime) |
Return file stat information. More... | |
virtual Int_t | SysSync (Int_t fd) |
Interface to system fsync. All arguments like in POSIX fsync(). More... | |
virtual Long64_t | DirCreateEntry (TDirectory *) |
virtual Int_t | DirReadKeys (TDirectory *) |
virtual void | DirWriteKeys (TDirectory *) |
virtual void | DirWriteHeader (TDirectory *) |
![]() | |
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... | |
![]() | |
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 | 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... | |
TDirectory (const TDirectory &directory) | |
Copy constructor. More... | |
void | operator= (const TDirectory &) |
![]() | |
void | MakeZombie () |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). More... | |
Protected Attributes | |
Double_t | fSumBuffer |
Sum of buffer sizes of objects written so far. More... | |
Double_t | fSum2Buffer |
Sum of squares of buffer sizes of objects written so far. More... | |
Long64_t | fBytesWrite |
Number of bytes written to this 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 | fBEGIN |
First used byte in file. More... | |
Long64_t | fEND |
Last used byte in file. More... | |
Long64_t | fSeekFree |
Location on disk of free segments structure. More... | |
Long64_t | fSeekInfo |
Location on disk of StreamerInfo record. More... | |
Int_t | fD |
File descriptor. More... | |
Int_t | fVersion |
File format version. More... | |
Int_t | fCompress |
Compression level and algorithm. More... | |
Int_t | fNbytesFree |
Number of bytes for free segments structure. More... | |
Int_t | fNbytesInfo |
Number of bytes for StreamerInfo record. More... | |
Int_t | fWritten |
Number of objects written so far. More... | |
Int_t | fNProcessIDs |
Number of TProcessID written to this file. More... | |
Int_t | fReadCalls |
Number of read calls ( not counting the cache calls ) More... | |
TString | fRealName |
Effective real file name (not original url) More... | |
TString | fOption |
File options. More... | |
Char_t | fUnits |
Number of bytes for file pointers. More... | |
TList * | fFree |
Free segments linked list table. More... | |
TArrayC * | fClassIndex |
!Index of TStreamerInfo classes written to this file More... | |
TObjArray * | fProcessIDs |
!Array of pointers to TProcessIDs More... | |
Long64_t | fOffset |
!Seek offset cache More... | |
TArchiveFile * | fArchive |
!Archive file from which we read 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... | |
Long64_t | fArchiveOffset |
!Offset at which file starts in archive More... | |
Bool_t | fIsArchive: 1 |
!True if this is a pure archive file More... | |
Bool_t | fNoAnchorInName: 1 |
!True if we don't want to force the anchor to be appended to the file name More... | |
Bool_t | fIsRootFile: 1 |
!True is this is a ROOT file, raw file otherwise More... | |
Bool_t | fInitDone: 1 |
!True if the file has been initialized More... | |
Bool_t | fMustFlush: 1 |
!True if the file buffers must be flushed More... | |
Bool_t | fIsPcmFile: 1 |
!True if the file is a ROOT pcm file. More... | |
TFileOpenHandle * | fAsyncHandle |
!For proper automatic cleanup More... | |
EAsyncOpenStatus | fAsyncOpenStatus |
!Status of an asynchronous open request More... | |
TUrl | fUrl |
!URL of file More... | |
TList * | fInfoCache |
!Cached list of the streamer infos in this file More... | |
TList * | fOpenPhases |
!Time info about open phases More... | |
![]() | |
Bool_t | fModified |
True if directory has been modified. More... | |
Bool_t | fWritable |
True if directory is writable. More... | |
TDatime | fDatimeC |
Date and time when directory is created. More... | |
TDatime | fDatimeM |
Date and time of last modification. More... | |
Int_t | fNbytesKeys |
Number of bytes for the keys. More... | |
Int_t | fNbytesName |
Number of bytes in TNamed at creation time. More... | |
Int_t | fBufferSize |
Default buffer size to create new TKeys. More... | |
Long64_t | fSeekDir |
Location of directory on file. More... | |
Long64_t | fSeekParent |
Location of parent directory on file. More... | |
Long64_t | fSeekKeys |
Location of Keys record on file. More... | |
TFile * | fFile |
Pointer to current file in memory. More... | |
TList * | fKeys |
Pointer to keys list in memory. More... | |
![]() | |
TObject * | fMother |
TList * | fList |
TUUID | fUUID |
TString | fPathBuffer |
TContext * | fContext |
Buffer for GetPath() function. More... | |
![]() | |
TString | fName |
TString | fTitle |
Static Protected Attributes | |
static TList * | fgAsyncOpenRequests = 0 |
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 UInt_t | fgOpenTimeout = TFile::kEternalTimeout |
Timeout for open operations in ms - 0 corresponds to blocking i/o. 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 std::atomic< Long64_t > | fgBytesWrite {0} |
Number of bytes written by all TFile objects. More... | |
static std::atomic< Long64_t > | fgBytesRead |
Number of bytes read by all TFile objects. More... | |
static std::atomic< Long64_t > | fgFileCounter {0} |
Counter for all opened files. More... | |
static std::atomic< Int_t > | fgReadCalls {0} |
Number of bytes read from all TFile objects. More... | |
static Int_t | fgReadaheadSize = 256000 |
Readahead buffer size. More... | |
static Bool_t | fgReadInfo = kTRUE |
if true (default) ReadStreamerInfo is called when opening a file More... | |
![]() | |
static Bool_t | fgAddDirectory = kTRUE |
Pointer to a list of TContext object pointing to this TDirectory. More... | |
Private Member Functions | |
TFile (const TFile &) | |
TFile objects can not be copied. More... | |
void | operator= (const TFile &) |
Static Private Member Functions | |
static void | CpProgress (Long64_t bytesread, Long64_t size, TStopwatch &watch) |
Print file copy progress. More... | |
static TFile * | OpenFromCache (const char *name, Option_t *="", const char *ftitle="", Int_t compress=1, Int_t netopt=0) |
Open a file for reading through the file cache. More... | |
Friends | |
class | TDirectoryFile |
class | TFilePrefetch |
Additional Inherited Members | |
![]() | |
static Bool_t | Cd1 (const char *path) |
Change current directory to "path". More... | |
#include <ROOT/TFile.h>
enum TFile::ECacheAction |
TTreeCache flushing semantics.
Enumerator | |
---|---|
kDisconnect | |
kDoNotDisconnect |
enum TFile::EFileType |
enum TFile::EOpenTimeOut |
enum TFile::ERelativeTo |
enum TFile::EStatusBits |
|
private |
TFile::TFile | ( | ) |
TFile::TFile | ( | const char * | fname1, |
Option_t * | option = "" , |
||
const char * | ftitle = "" , |
||
Int_t | compress = 1 |
||
) |
Opens or creates a local ROOT file.
[in] | fname1 | The name of the file |
[in] | option | Specifies the mode in which the file is opened |
[in] | ftitle | The title of the file |
[in] | compress | Specifies the compression algorithm and level |
It is recommended to specify fname1 as "<file>.root". The suffix ".root" will be used by object browsers to automatically identify the file as a ROOT file. If the constructor fails in any way IsZombie() will return true. Use IsOpen() to check if the file is (still) open. To open non-local files use the static TFile::Open() method, that will take care of opening the files using the correct remote file access plugin.
Option | Description |
---|---|
NEW or CREATE | Create a new file and open it for writing, if the file already exists the file is not opened. |
RECREATE | Create a new file, if the file already exists it will be overwritten. |
UPDATE | Open an existing file for writing. If no file exists, it is created. |
READ | Open an existing file for reading (default). |
NET | Used by derived remote file access classes, not a user callable option. |
WEB | Used by derived remote http access class, not a user callable option. |
If option = "" (default), READ is assumed. The file can be specified as a URL of the form:
file:///user/rdm/bla.root or file:/user/rdm/bla.root
The file can also be a member of an archive, in which case it is specified as:
multi.zip#file.root or multi.zip#0
which will open file.root which is a member of the file multi.zip archive or member 1 from the archive. For more on archive file support see the TArchiveFile class. TFile and its remote access plugins can also be used to open any file, i.e. also non ROOT files, using:
file.tar?filetype=raw
This is convenient because the many remote file access plugins allow easy access to/from the many different mass storage systems. The title of the file (ftitle) will be shown by the ROOT browsers. A ROOT file (like a Unix file system) may contain objects and directories. There are no restrictions for the number of levels of directories. A ROOT file is designed such that one can write in the file in pure sequential mode (case of BATCH jobs). In this case, the file may be read sequentially again without using the file index written at the end of the file. In case of a job crash, all the information on the file is therefore protected. A ROOT file can be used interactively. In this case, one has the possibility to delete existing objects and add new ones. When an object is deleted from the file, the freed space is added into the FREE linked list (fFree). The FREE list consists of a chain of consecutive free segments on the file. At the same time, the first 4 bytes of the freed record on the file are overwritten by GAPSIZE where GAPSIZE = -(Number of bytes occupied by the record). Option compress is used to specify the compression level and algorithm:
compress = 100 * algorithm + level
Level | Explanation |
---|---|
0 | objects written to this file will not be compressed. |
1 | minimal compression level but fast. |
... | .... |
9 | maximal compression level but slower and might use more memory. |
(For the currently supported algorithms, the maximum level is 9) If compress is negative it indicates the compression level is not set yet. The enumeration ROOT::ECompressionAlgorithm associates each algorithm with a number. There is a utility function to help to set the value of compress. For example, ROOT::CompressionSettings(ROOT::kLZMA, 1) will build an integer which will set the compression to use the LZMA algorithm and compression level 1. These are defined in the header file Compression.h. Note that the compression settings may be changed at any time. The new compression settings will only apply to branches created or attached after the setting is changed and other objects written after the setting is changed. In case the file does not exist or is not a valid ROOT file, it is made a Zombie. One can detect this situation with a code like:
When opening the file, the system checks the validity of this directory. If something wrong is detected, an automatic Recovery is performed. In this case, the file is scanned sequentially reading all logical blocks and attempting to rebuild a correct directory (see TFile::Recover). One can disable the automatic recovery procedure when reading one or more files by setting the environment variable "TFile.Recover: 0" in the system.rootrc file.
|
static |
Submit an asynchronous open request.
See TFile::Open(const char *, ...) for an explanation of the arguments. A handler is returned which is to be passed to TFile::Open(TFileOpenHandle *) to get the real TFile instance once the file is open. This call never blocks and it is provided to allow parallel submission of file opening operations expected to take a long time. TFile::Open(TFileOpenHandle *) may block if the file is not yet ready. The sequence
TFile::Open(TFile::AsyncOpen(const char *, ...))
is equivalent to
TFile::Open(const char *, ...)
To be effective, the underlying TFile implementation must be able to support asynchronous open functionality. Currently, only TXNetFile supports it. If the functionality is not implemented, this call acts transparently by returning an handle with the arguments for the standard synchronous open run by TFile::Open(TFileOpenHandle *). The retuned handle will be adopted by TFile after opening completion in TFile::Open(TFileOpenHandle *); if opening is not finalized the handle must be deleted by the caller.
Definition at line 4091 of file TFile.cxx.
Referenced by Open().
Close a file.
[in] | option | If option == "R", all TProcessIDs referenced by this file are deleted. |
Calling TFile::Close("R") might be necessary in case one reads a long list of files having TRef, writing some of the referenced objects or TRef to a new file. If the TRef or referenced objects of the file being closed will not be referenced again, it is possible to minimize the size of the TProcessID data structures in memory by forcing a delete of the unused TProcessID.
Reimplemented from TDirectoryFile.
Reimplemented in TSQLFile, TNetFile, TXMLFile, and TParallelMergingFile.
Definition at line 898 of file TFile.cxx.
Referenced by TDataSetManager::CheckStagedStatus(), Classification(), TParallelMergingFile::Close(), TNetXNGFile::Close(), TNetFile::Close(), TXNetFile::Close(), Cp(), do_anadist_ds(), TProofPerfAnalysis::DoDraw(), TProofBench::DrawCPU(), TProofBench::DrawDataSet(), TProofBench::DrawEfficiency(), RooStats::HybridPlot::DumpToFile(), RooStats::SamplingDistPlot::DumpToFile(), TDSet::ExportFileList(), TAlienCollection::ExportXML(), TSelEventGen::GenerateFiles(), TFilePrefetch::GetBlockFromCache(), TDataSetManagerFile::GetDataSet(), TEveManager::GetGeometry(), RooStats::HistFactory::Channel::GetHistogram(), TProof::GetInputData(), RooStats::NeymanConstruction::GetInterval(), TProofServ::HandleArchive(), TProof::HandleOutputOptions(), TProofServ::HandleProcess(), TProofServ::HandleRetrieve(), TDataSetManagerFile::Init(), TFileStager::IsStaged(), TChain::LoadTree(), TLockFile::Lock(), main(), RooStats::HistFactory::MakeModelAndMeasurementFast(), TMVA::TMVAGlob::OpenFile(), TFileMerger::PartialMerge(), TMVA::Plot(), TMVA::PlotCellTree(), TMVA::PlotFoams(), RooStudyManager::prepareBatchInput(), TProof::PrepareInputDataFile(), TRecorderInactive::PrevCanvases(), TSelEventGen::Process(), TProof::Process(), RooStudyPackage::processFile(), read_data(), TMVA::MethodPDEFoam::ReadFoamsFromFile(), TMVA::MethodBase::ReadStateFromFile(), RooStats::HypoTestInverter::RebuildDistributions(), TEntryList::Relocate(), TProof::Retrieve(), RooDataSet::RooDataSet(), RooUnitTest::runCompTests(), TFilePrefetch::SaveBlockInCache(), TEveGeoShape::SaveExtract(), TEveGeoNode::SaveExtract(), TProof::SaveInputData(), TProof::SavePerfTree(), TEntryList::Scan(), TDataSetManager::ScanFile(), TQueryResultManager::ScanPreviousQueries(), TProofBench::SetOutFile(), TProofPerfAnalysis::SetSaveResult(), TRecorderRecording::Stop(), testPoisson(), TMVA::TMVAGui(), TMVA::TMVAMultiClassGui(), TMVA::TMVARegGui(), topDriver(), TProofPerfAnalysis::TProofPerfAnalysis(), TDataSetManagerFile::WriteDataSet(), TMVA::MethodPDEFoam::WriteFoamsToFile(), Roo2DKeysPdf::writeHistToFile(), Roo2DKeysPdf::writeNTupleToFile(), TBranch::~TBranch(), TChirpFile::~TChirpFile(), TDCacheFile::~TDCacheFile(), ~TFile(), TGFALFile::~TGFALFile(), TMemFile::~TMemFile(), TProofPerfAnalysis::~TProofPerfAnalysis(), TRecorderReplaying::~TRecorderReplaying(), and TRFIOFile::~TRFIOFile().
|
virtual |
Allows to copy this file to the dst URL.
Returns kTRUE in case of success, kFALSE otherwise.
Definition at line 4749 of file TFile.cxx.
Referenced by TFileMerger::AddFile(), TDataSetManagerFile::CheckLocalCache(), TSelHandleDataSet::CopyFile(), Cp(), TProof::HandleOutputOptions(), TAlienPackage::InstallSinglePackage(), TAlienCollection::Open(), TFileMerger::OpenExcessFiles(), OpenFromCache(), TFileMerger::PartialMerge(), TAlienPackage::PostInstall(), and TProofMgr::UploadFiles().
|
staticprivate |
|
virtual |
Creates key for object and converts data to buffer.
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 995 of file TFile.cxx.
Referenced by TDirectoryFile::WriteObjectAny(), and TDirectoryFile::WriteTObject().
|
virtual |
|
static |
Return the current ROOT file if any.
Note that if 'cd' has been called on a TDirectory that does not belong to a file, gFile will be unchanged and still points to the file of the previous current directory that was a file.
Definition at line 1015 of file TFile.cxx.
Referenced by TDirectoryFile::Build(), TDirectoryFile::cd(), and ClassImp().
|
virtual |
Delete object namecycle.
[in] | namecycle | Encodes the name and cycle of the objects to delete |
Namecycle identifies an object in the top directory of the file namecycle has the format name;cycle.
Examples:
name/cycle | Action |
---|---|
foo | delete object named foo in memory |
foo;1 | delete cycle 1 of foo on file |
foo;* | delete all cycles of foo on disk and also from memory |
*;2 | delete all objects on file having the cycle 2 |
*;* | delete all objects from memory and file |
T*;* | delete all objects from memory and file and all subdirectories |
Reimplemented from TDirectoryFile.
|
inlineprotectedvirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 136 of file TFile.h.
Referenced by TDirectoryFile::Init().
|
inlineprotectedvirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 137 of file TFile.h.
Referenced by TDirectoryFile::ReadKeys().
|
inlineprotectedvirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 139 of file TFile.h.
Referenced by TDirectoryFile::WriteDirHeader().
|
inlineprotectedvirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 138 of file TFile.h.
Referenced by TDirectoryFile::WriteKeys().
Fill Graphics Structure and Paint.
Loop on all objects (memory or file) and all subdirectories.
Reimplemented from TDirectory.
|
virtual |
Encode file output buffer.
The file output buffer contains only the FREE data record.
Reimplemented from TDirectoryFile.
|
virtual |
Synchronize a file's in-memory and on-disk states.
Reimplemented in TSQLFile, TXNetFile, TNetFile, TNetXNGFile, and TXMLFile.
Definition at line 1080 of file TFile.cxx.
Referenced by Close(), MakeFree(), TTree::Merge(), TDirectoryFile::WriteDirHeader(), WriteHeader(), and RooStats::HistFactory::Measurement::writeToFile().
|
protected |
Flush the write cache if active.
Return kTRUE in case of error
Definition at line 1097 of file TFile.cxx.
Referenced by Close(), TNetXNGFile::Flush(), TNetFile::Flush(), TXNetFile::Flush(), Flush(), and ReOpen().
|
inline |
|
inlineprotectedvirtual |
Reimplemented in TXNetFile.
Definition at line 116 of file TFile.h.
Referenced by GetAsyncOpenStatus(), and Open().
|
static |
|
static |
Int_t TFile::GetBestBuffer | ( | ) | const |
Return the best buffer size of objects on this file.
The best buffer size is estimated based on the current mean value and standard deviation of all objects written so far to this file. Returns mean value + one standard deviation.
Definition at line 1122 of file TFile.cxx.
Referenced by TDirectoryFile::GetBufferSize(), and WriteStreamerInfo().
|
inlinevirtual |
Definition at line 201 of file TFile.h.
Referenced by Cp(), TEventIterObj::GetNextEvent(), TEventIterTree::GetNextEvent(), TEventIterObj::GetNextPacket(), TEventIterTree::GetNextPacket(), TFileCacheRead::ReadBuffer(), ResetFileStatus(), TMonaLisaWriter::SendFileCloseEvent(), and UpdateFileStatus().
|
inlinevirtual |
Definition at line 202 of file TFile.h.
Referenced by TTreePerfStats::Finish(), and TFileCacheRead::ReadBuffer().
|
virtual |
|
virtual |
Return the total number of bytes written so far to the file.
Definition at line 4311 of file TFile.cxx.
Referenced by Cp(), ResetFileStatus(), TMonaLisaWriter::SendFileCloseEvent(), and UpdateFileStatus().
|
static |
TFileCacheRead * TFile::GetCacheRead | ( | TObject * | tree = 0 | ) | const |
Return a pointer to the current read cache.
Definition at line 1196 of file TFile.cxx.
Referenced by TTreeCloner::CreateCache(), TBranch::GetBasket(), GetBytesToPrefetch(), TTree::TClusterIterator::GetEstimatedClusterSize(), TTree::GetReadCache(), TEventIterTree::GetTrees(), TBasket::LoadBasketBuffers(), TChain::LoadTree(), TTree::PrintCacheStats(), TTreePlayer::Process(), TBasket::ReadBasketBuffers(), TXNetFile::ReadBuffer(), TXNetFile::ReadBuffers(), TXNetFile::SynchronizeCacheSize(), and TChain::~TChain().
TFileCacheWrite * TFile::GetCacheWrite | ( | ) | const |
Return a pointer to the current write cache.
Definition at line 1213 of file TFile.cxx.
Referenced by TFileCacheRead::ReadBufferExtNormal(), and TFileCacheRead::ReadBufferExtPrefetch().
|
inline |
Definition at line 186 of file TFile.h.
Referenced by TStreamerInfo::ForceWriteInfo(), TStreamerInfo::TagFile(), and TBufferFile::TagStreamerInfo().
|
inline |
Definition at line 351 of file TFile.h.
Referenced by TKey::TKey().
Float_t TFile::GetCompressionFactor | ( | ) |
|
inline |
Definition at line 357 of file TFile.h.
Referenced by TFileMerger::AddFile(), TFileMerger::OpenExcessFiles(), TXMLFile::SaveToFile(), TTree::SetCacheSizeAux(), TBranch::SetFile(), TBufferSQL2::TBufferSQL2(), and TKey::TKey().
|
inline |
Definition at line 363 of file TFile.h.
Referenced by TTree::ChangeFile(), TTree::CloneTree(), TBranchObject::Init(), TBranchClones::Init(), TBranch::Init(), TBranchElement::Init(), TChain::Merge(), TTree::SetCircular(), and TFileIter::TFileIter().
|
inlinevirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 191 of file TFile.h.
Referenced by TFileDrawMap::AnimateTree(), TKey::Build(), Memstat::TMemStatMng::Close(), TTree::CopyEntries(), TKey::Create(), TTree::Fill(), TFileDrawMap::TFileDrawMap(), TKey::TKey(), TParallelMergingFile::UploadAndReset(), and TDirectoryFile::WriteKeys().
|
inlinevirtual |
Reimplemented in TNetFile.
Definition at line 195 of file TFile.h.
Referenced by TProofOutputFile::AdoptFile(), GetEndpointUrl(), TDataSetManager::ScanFile(), TMonaLisaWriter::SendFileCloseEvent(), TMonaLisaWriter::SendFileOpenProgress(), and TFileCacheRead::TFileCacheRead().
|
static |
|
virtual |
Method returning errno. Is overriden in TRFIOFile.
Reimplemented in TSQLFile, TXMLFile, and TRFIOFile.
Definition at line 1180 of file TFile.cxx.
Referenced by TVirtualPacketizer::GetEntries(), TEventIter::LoadDir(), ReadBuffer(), and WriteBuffer().
|
inline |
Definition at line 194 of file TFile.h.
Referenced by TEventIterTree::Load().
|
static |
Static function returning the total number of bytes read from all files.
Definition at line 4319 of file TFile.cxx.
Referenced by TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TTreePlayer::Process(), TProofPlayer::Process(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TDCacheFile::ReadBuffers(), TNetFile::ReadBuffers(), TXNetFile::ReadBuffers(), TProofServ::SendStatistics(), and TProofPlayer::UpdateProgressInfo().
|
static |
Static function returning the total number of bytes written to all files.
Does not take into account what might still be in the write caches.
Definition at line 4328 of file TFile.cxx.
Referenced by TEventIterUnit::GetNextEvent(), TEventIterUnit::GetNextPacket(), TNetFile::WriteBuffer(), and TXNetFile::WriteBuffer().
|
static |
Definition at line 4362 of file TFile.cxx.
Referenced by TMonaLisaWriter::SendFileCloseEvent(), and TMonaLisaWriter::SendFileOpenProgress().
|
static |
Static function returning the total number of read calls from all files.
Definition at line 4336 of file TFile.cxx.
Referenced by TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TProofPlayer::Process(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TNetFile::ReadBuffers(), TXNetFile::ReadBuffers(), and TProofPlayer::UpdateProgressInfo().
|
inline |
Definition at line 197 of file TFile.h.
Referenced by TKey::Create(), and TDirectoryFile::SaveSelf().
|
inline |
Definition at line 196 of file TFile.h.
Referenced by TTreeCloner::CopyProcessIds(), TBufferFile::GetLastProcessID(), ReadProcessID(), and WriteProcessID().
|
inlinevirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 209 of file TFile.h.
Referenced by TFileDrawMap::GetObjectInfoDir(), and TFileDrawMap::PaintDir().
|
inlinevirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 208 of file TFile.h.
Referenced by TFileDrawMap::GetObjectInfoDir(), and TFileDrawMap::PaintDir().
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Definition at line 199 of file TFile.h.
Referenced by TTreeCloner::CopyProcessIds(), TBufferFile::GetLastProcessID(), and WriteProcessID().
|
static |
Returns staged only flag.
Definition at line 4499 of file TFile.cxx.
Referenced by TXNetFile::CreateXClient().
|
static |
Returns open timeout (in ms).
Definition at line 4479 of file TFile.cxx.
Referenced by TXNetFile::CreateXClient().
|
inlinevirtual |
|
static |
Static function returning the readahead buffer size.
Definition at line 4344 of file TFile.cxx.
Referenced by TTreePerfStats::Finish(), and TFileCacheRead::Print().
|
inlinevirtual |
Definition at line 204 of file TFile.h.
Referenced by TFileCacheRead::ReadBuffer().
|
static |
If the streamerinfos are to be read at file opening.
See TFile::SetReadStreamerInfo for more documentation.
Int_t TFile::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.
[in] | maxbytes | Bytes which are read into buf. |
[out] | nbytes | Number of bytes in record if negative, this is a deleted record if 0, cannot read record, wrong value of argument first |
[out] | objlen | Uncompressed object size |
[out] | keylen | Length of logical record header |
The function reads nread bytes where nread is the minimum of maxbytes and the number of bytes before the end of file. The function returns nread. Note that the arguments objlen and keylen are returned only if maxbytes >=16
Definition at line 1233 of file TFile.cxx.
Referenced by TTree::Delete(), and TBasket::ReadBasketBytes().
|
inline |
Definition at line 211 of file TFile.h.
Referenced by TTreePerfStats::FileReadEvent(), TNetXNGFile::ReadBuffer(), ReadBufferViaCache(), and WriteBufferViaCache().
|
inlinevirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 212 of file TFile.h.
Referenced by TFileDrawMap::GetObjectInfoDir(), and TFileDrawMap::PaintDir().
|
inlinevirtual |
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 213 of file TFile.h.
Referenced by TFileDrawMap::GetObjectInfoDir(), and TFileDrawMap::PaintDir().
|
virtual |
Returns the current file size.
Returns -1 in case the file could not be stat'ed.
Reimplemented in TSQLFile, TDavixFile, TWebFile, TXMLFile, TMemFile, and TNetXNGFile.
Definition at line 1279 of file TFile.cxx.
Referenced by TAlienFile::Close(), Cp(), TZIPFile::FindEndHeader(), TProofServ::HandleRetrieve(), TDataSetManagerFile::Init(), Init(), TSelEventGen::Process(), TProof::Process(), TDirectoryFile::ReadKeys(), ReadProcessID(), ReadStreamerInfo(), Recover(), and TDataSetManager::ScanFile().
const TList * TFile::GetStreamerInfoCache | ( | ) |
Returns the cached list of StreamerInfos used in this file.
Definition at line 1298 of file TFile.cxx.
Referenced by TStreamerInfo::CompareContent(), ROOT::Internal::TTreeGeneratorBase::GetStreamerInfo(), and MakeProject().
|
virtual |
Read the list of TStreamerInfo objects written to this file.
The function returns a TList. It is the user's responsibility to delete the list created by this function.
Using the list, one can access additional information, e.g.:
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 1319 of file TFile.cxx.
Referenced by TTreeCloner::CopyStreamerInfos(), TRootSniffer::CreateMemFile(), GetStreamerInfoCache(), TRootSniffer::ProduceBinary(), ReadStreamerInfo(), and ShowStreamerInfo().
|
static |
Resolve the file type as a function of the protocol field in 'name'.
If defined, the string 'prefix' is added when testing the locality of a 'name' with network-like structure (i.e. root://host//path); if the file is local, on return 'prefix' will contain the actual local path of the file.
Definition at line 4566 of file TFile.cxx.
Referenced by AsyncOpen(), Cp(), TDSetElement::GetEntries(), TDSet::GetEntries(), TDataSetManagerFile::Init(), TEventIterTree::Load(), TEventIter::LoadDir(), TDSetElement::Lookup(), TProofPlayerRemote::MergeOutputFiles(), Open(), and TSelHandleDataSet::Process().
|
inline |
Definition at line 205 of file TFile.h.
Referenced by TStreamerInfo::BuildCheck(), TStreamerInfo::BuildEmulated(), TDirectoryFile::FillBuffer(), TBufferFile::GetVersionOwner(), TBufferFile::ReadArray(), TStreamerInfo::ReadBuffer(), TBufferFile::ReadClassBuffer(), TBufferFile::ReadFastArray(), TBufferFile::ReadLong(), TBufferFile::ReadStaticArray(), TDirectoryFile::Sizeof(), TTreeCacheUnzip::UnzipBuffer(), and TStreamerInfo::WriteBufferAux().
|
static |
|
inlinevirtual |
Definition at line 217 of file TFile.h.
Referenced by TTreeCloner::CopyProcessIds(), and WriteProcessID().
Initialize a TFile object.
[in] | create | Create a new file. |
TFile implementations providing asynchronous open functionality need to override this method to run the appropriate checks before calling this standard initialization part. See TXNetFile::Init for an example.
Reimplemented in TXNetFile, TDavixFile, TNetXNGFile, TNetFile, and TWebFile.
Definition at line 581 of file TFile.cxx.
Referenced by TNetFile::Init(), TWebFile::Init(), TNetXNGFile::Init(), TDavixFile::Init(), TXNetFile::Init(), Open(), TMemFile::ResetAfterMerge(), TFile(), TMemFile::TMemFile(), and TNetXNGFile::TNetXNGFile().
|
inline |
Definition at line 219 of file TFile.h.
Referenced by TDirectoryFile::Init(), TDirectoryFile::ReadKeys(), TDirectoryFile::WriteDirHeader(), and TDirectoryFile::WriteKeys().
|
virtual |
Returns kTRUE in case file is open and kFALSE if file is not open.
Reimplemented in TSQLFile, TXNetFile, TWebFile, TXMLFile, TNetFile, and TNetXNGFile.
Definition at line 1373 of file TFile.cxx.
Referenced by Close(), TMVA::CorrGui(), TMVA::efficiencies(), Flush(), FlushWriteCache(), TRecorderReplaying::Initialize(), TRecorderInactive::ListCmd(), TRecorderInactive::ListGui(), TASPaletteEditor::Open(), ReadBuffer(), TRFIOFile::ReadBuffers(), ReOpen(), TProof::Retrieve(), TMonaLisaWriter::SendFileCheckpoint(), TRecorderRecording::StartRecording(), TGFALFile::WriteBuffer(), TDCacheFile::WriteBuffer(), and WriteBuffer().
List file contents.
Indentation is used to identify the file tree. Subdirectories are listed first, then objects in memory, then objects on the file.
Reimplemented from TDirectoryFile.
Mark unused bytes on the file.
The list of free segments is in the fFree linked list. When an object is deleted from the file, the freed space is added into the FREE linked list (fFree). The FREE list consists of a chain of consecutive free segments on the file. At the same time, the first 4 bytes of the freed record on the file are overwritten by GAPSIZE where GAPSIZE = -(Number of bytes occupied by the record).
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 1388 of file TFile.cxx.
Referenced by TKey::Delete(), TTree::Delete(), TBranch::DeleteBaskets(), WriteFree(), TDirectoryFile::WriteKeys(), and WriteStreamerInfo().
|
virtual |
Generate source code necessary to access the objects stored in the file.
Generate code in directory dirname for all classes specified in argument classes If classes = "*" (default and currently the only supported value), the function generates an include file for each class in the StreamerInfo list for which a TClass object does not exist.
The code generated includes:
In the generated classes, map, multimap when the first template parameter is a class are replaced by a vector of pair. set and multiset when the tempalte parameter is a class are replaced by a vector. This is required since we do not have the code needed to order and/or compare the object of the classes. This is a quick explanation of the options available:
Option | Details |
---|---|
new (default) | A new directory dirname is created. If dirname already exist, an error message is printed and the function returns. |
recreate | If dirname does not exist, it is created (like in "new"). If dirname already exist, all existing files in dirname are deleted before creating the new files. |
update | New classes are added to the existing directory. Existing classes with the same name are replaced by the new definition. If the directory dirname doest not exist, same effect as "new". |
genreflex | Use genreflex rather than rootcint to generate the dictionary. |
par | Create a PAR file with the minimal set of code needed to read the content of the ROOT file. The name of the PAR file is basename(dirname), with extension '.par' enforced; the PAR file will be created at dirname(dirname). |
If, in addition to one of the 3 above options, the option "+" is specified, the function will generate:
gSystem->load("demo/demo.so");
The following feature is not yet enabled: One can restrict the list of classes to be generated by using expressions like:
classes = "Ali*" generate code only for classes starting with Ali classes = "myClass" generate code for class MyClass only.
|
protected |
Create makefile at 'filemake' for PAR package 'pack'.
Called by MakeProject when option 'par' is given. Return 0 on success, -1 on error.
Definition at line 3143 of file TFile.cxx.
Referenced by MakeProject().
|
protected |
Create BUILD.sh and SETUP.C under 'proofinf' for PAR package 'pack'.
Called by MakeProject when option 'par' is given. Return 0 on success, -1 on error.
Definition at line 3265 of file TFile.cxx.
Referenced by MakeProject().
|
virtual |
List the contents of a file sequentially.
For each logical record found, it prints:
Date/Time Record_Adress Logical_Record_Length ClassName CompressionFactor
Example of output
20010404/150437 At:64 N=150 TFile 20010404/150440 At:214 N=28326 TBasket CX = 1.13 20010404/150440 At:28540 N=29616 TBasket CX = 1.08 20010404/150440 At:58156 N=29640 TBasket CX = 1.08 20010404/150440 At:87796 N=29076 TBasket CX = 1.10 20010404/150440 At:116872 N=10151 TBasket CX = 3.15 20010404/150441 At:127023 N=28341 TBasket CX = 1.13 20010404/150441 At:155364 N=29594 TBasket CX = 1.08 20010404/150441 At:184958 N=29616 TBasket CX = 1.08 20010404/150441 At:214574 N=29075 TBasket CX = 1.10 20010404/150441 At:243649 N=9583 TBasket CX = 3.34 20010404/150442 At:253232 N=28324 TBasket CX = 1.13 20010404/150442 At:281556 N=29641 TBasket CX = 1.08 20010404/150442 At:311197 N=29633 TBasket CX = 1.08 20010404/150442 At:340830 N=29091 TBasket CX = 1.10 20010404/150442 At:369921 N=10341 TBasket CX = 3.09 20010404/150442 At:380262 N=509 TH1F CX = 1.93 20010404/150442 At:380771 N=1769 TH2F CX = 4.32 20010404/150442 At:382540 N=1849 TProfile CX = 1.65 20010404/150442 At:384389 N=18434 TNtuple CX = 4.51 20010404/150442 At:402823 N=307 KeysList 20010404/150443 At:403130 N=4548 StreamerInfo CX = 3.65 20010404/150443 At:407678 N=86 FreeSegments 20010404/150443 At:407764 N=1 END
|
virtual |
Return kTRUE if 'url' matches the coordinates of this file.
The check is implementation dependent and may need to be overload by each TFile implementation relying on this check. The default implementation checks the file name only.
Reimplemented in TNetFile.
Definition at line 4511 of file TFile.cxx.
Referenced by GetAsyncOpenStatus(), GetEndpointUrl(), TNetFile::Matches(), and TFileOpenHandle::Matches().
|
inlinevirtual |
Definition at line 228 of file TFile.h.
Referenced by TDirectoryFile::WriteDirHeader().
|
static |
Create / open a file.
The type of the file can be either a TFile, TNetFile, TWebFile or any TFile derived class for which an plugin library handler has been registered with the plugin manager (for the plugin manager see the TPluginManager class). The returned type of TFile depends on the file name specified by 'url'. If 'url' is a '|'-separated list of file URLs, the 'URLs' are tried sequentially in the specified order until a successful open. If the file starts with "root:", "roots:" or "rootk:" a TNetFile object will be returned, with "http:" a TWebFile, with "file:" a local TFile, etc. (see the list of TFile plugin handlers in $ROOTSYS/etc/system.rootrc for regular expressions that will be checked) and as last a local file will be tried. Before opening a file via TNetFile a check is made to see if the URL specifies a local file. If that is the case the file will be opened via a normal TFile. To force the opening of a local file via a TNetFile use either TNetFile directly or specify as host "localhost". The netopt argument is only used by TNetFile. For the meaning of the options and other arguments see the constructors of the individual file classes. In case of error returns 0.
For TFile implementations supporting asynchronous file open, see TFile::AsyncOpen(...), it is possible to request a timeout with the option TIMEOUT=<secs>: the timeout must be specified in seconds and it will be internally checked with granularity of one millisec. For remote files there is the option: CACHEREAD opens an existing file for reading through the file cache. The file will be downloaded to the cache and opened from there. If the download fails, it will be opened remotely. The file will be downloaded to the directory specified by SetCacheFileDir().
Definition at line 3851 of file TFile.cxx.
Referenced by TChain::AddFile(), TFileMerger::AddFile(), TTree::ChangeFile(), TDataSetManager::CheckStagedStatus(), Classification(), ClassImp(), Cp(), do_anadist(), do_anadist_ds(), do_anadist_plot(), TProofPerfAnalysis::DoDraw(), TProofBench::DrawCPU(), TProofBench::DrawDataSet(), TProofBench::DrawEfficiency(), TGeoVolume::Export(), TGeoManager::Export(), TDSet::ExportFileList(), TAlienCollection::ExportXML(), RooStats::HLFactory::fParseLine(), TSelEventGen::GenerateFiles(), TDataSetManagerFile::GetDataSet(), TDSetElement::GetEntries(), TVirtualPacketizer::GetEntries(), TDSet::GetEntries(), TFriendElement::GetFile(), TBranch::GetFile(), RooStats::HistFactory::Channel::GetHistogram(), TProof::GetInputData(), TProof::GetOutput(), TProofBench::GetPerfSpecs(), TParallelCoord::GetTree(), TProofLite::GetTreeHeader(), TProofServ::HandleArchive(), TProofPlayerSlave::HandleGetTreeHeader(), TProof::HandleOutputOptions(), TProofServ::HandleRetrieve(), RooWorkspace::import(), TGeoVolume::Import(), TGeoManager::Import(), TDataSetManagerFile::Init(), TRecorderReplaying::Initialize(), TFileStager::IsStaged(), TRecorderInactive::ListCmd(), TRecorderInactive::ListGui(), TEventIterTree::Load(), TEventIter::LoadDir(), TEntryListFromFile::LoadList(), TChain::LoadTree(), TLockFile::Lock(), RooStats::HistFactory::MakeModelAndMeasurementFast(), TChain::Merge(), Open(), TFileMerger::OpenExcessFiles(), TMVA::TMVAGlob::OpenFile(), TPoolProcessor< F >::OpenFile(), TDirectoryFile::OpenFile(), TAlienCollection::OpenFile(), TProofOutputFile::OpenFile(), OpenFromCache(), TProofBench::OpenOutFile(), TFileMerger::OutputFile(), TMVA::Plot(), TMVA::PlotCellTree(), TMVA::PlotFoams(), TProof::PrepareInputDataFile(), TRecorderInactive::PrevCanvases(), TEntryListFromFile::Print(), TChain::Print(), TSelEventGen::Process(), TProof::Process(), TMVA::MethodBase::ReadStateFromFile(), RooStats::HypoTestInverter::RebuildDistributions(), TEntryList::Relocate(), TProof::Retrieve(), RooDataSet::RooDataSet(), TFilePrefetch::SaveBlockInCache(), TParallelCoord::SaveEntryLists(), TProof::SaveInputData(), TDirectoryFile::SaveObjectAs(), TProofPlayer::SavePartialResults(), TQueryResultManager::SaveQuery(), TParallelCoord::SaveTree(), TEntryList::Scan(), TDataSetManager::ScanFile(), TQueryResultManager::ScanPreviousQueries(), TProofPerfAnalysis::SetSaveResult(), TMemStatShow::Show(), ShrinkCacheFileDir(), TFileIter::TFileIter(), TMVA::TMVAGui(), TMVA::TMVAMultiClassGui(), TMVA::TMVARegGui(), topDriver(), TProofPerfAnalysis::TProofPerfAnalysis(), and TDataSetManagerFile::WriteDataSet().
|
static |
|
staticprivate |
Open a file for reading through the file cache.
The file will be downloaded to the cache and opened from there. If the download fails, it will be opened remotely. The file will be downloaded to the directory specified by SetCacheFileDir().
Definition at line 3644 of file TFile.cxx.
Referenced by Open().
Paint all objects in the file.
Reimplemented from TDirectory.
Print all objects in the file.
Reimplemented from TDirectory.
Reimplemented in TSQLFile, TXNetFile, TXMLFile, TMemFile, and TNetFile.
Definition at line 1532 of file TFile.cxx.
Referenced by TXNetFile::Print().
Read a buffer from the file.
This is the basic low level read operation. Returns kTRUE in case of failure.
Reimplemented in TSQLFile, TXNetFile, TDavixFile, TXMLFile, TWebFile, TNetFile, TNetXNGFile, TDCacheFile, and TGFALFile.
Definition at line 1596 of file TFile.cxx.
Referenced by TDataSetManager::CheckStagedStatus(), Cp(), TZIPFile::FindEndHeader(), TFilePrefetch::GetBlockFromCache(), GetCompressionFactor(), TProofBench::GetPerfSpecs(), GetRecordHeader(), GetStreamerInfoList(), TTreeCacheUnzip::GetUnzipBuffer(), TDataSetManagerFile::Init(), Init(), TBasket::LoadBasketBuffers(), Map(), OpenFromCache(), TProof::Process(), TBasket::ReadBasketBuffers(), TGFALFile::ReadBuffer(), TDCacheFile::ReadBuffer(), TFileCacheRead::ReadBufferExtNormal(), ReadBuffers(), TZIPFile::ReadDirectory(), TZIPFile::ReadEndHeader(), TKey::ReadFile(), TDirectoryFile::ReadKeys(), TZIPFile::ReadMemberHeader(), TZIPFile::ReadZip64EndLocator(), TZIPFile::ReadZip64EndRecord(), Recover(), and TKey::TKey().
Read a buffer from the file at the offset 'pos' in the file.
Returns kTRUE in case of failure. Compared to ReadBuffer(char*, Int_t), this routine does not change the cursor on the physical file representation (fD) if the data is in this TFile's cache.
Reimplemented in TSQLFile, TXNetFile, TDavixFile, TXMLFile, TWebFile, TNetFile, TNetXNGFile, TDCacheFile, and TGFALFile.
Reimplemented in TXNetFile, and TDavixFile.
Definition at line 4955 of file TFile.cxx.
Referenced by TTreeCacheUnzip::Init(), ReadBuffers(), TFileCacheRead::SetEnablePrefetchingImpl(), and TFileCacheRead::SetFile().
Read the nbuf blocks described in arrays pos and len.
The value pos[i] is the seek position of block i of length len[i]. Note that for nbuf=1, this call is equivalent to TFile::ReafBuffer. This function is overloaded by TNetFile, TWebFile, etc. Returns kTRUE in case of failure.
Reimplemented in TXNetFile, TS3WebFile, TDavixFile, TWebFile, TNetFile, TNetXNGFile, TDCacheFile, TChirpFile, and TRFIOFile.
Definition at line 1647 of file TFile.cxx.
Referenced by TFileCacheRead::ReadBufferExtNormal(), TNetFile::ReadBuffers(), and TXNetFile::ReadBuffers().
Read buffer via cache.
Returns 0 if the requested block is not in the cache, 1 in case read via cache was successful, 2 in case read via cache failed.
Definition at line 1715 of file TFile.cxx.
Referenced by TGFALFile::ReadBuffer(), TDCacheFile::ReadBuffer(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TWebFile::ReadBuffer(), TXNetFile::ReadBuffer(), and ReadBuffer().
|
virtual |
|
virtual |
The TProcessID with number pidf is read from this file.
If the object is not already entered in the gROOT list, it is added.
Definition at line 1777 of file TFile.cxx.
Referenced by TBufferFile::ReadProcessID().
|
virtual |
Read the list of StreamerInfo from this file.
The key with name holding the list of TStreamerInfo objects is read. The corresponding TClass objects are updated. Note that this function is not called if the static member fgReadInfo is false. (see TFile::SetReadStreamerInfo)
Definition at line 3384 of file TFile.cxx.
Referenced by Init(), TSQLFile::InitSqlDatabase(), and TXMLFile::ReadFromFile().
|
virtual |
Attempt to recover file if not correctly closed.
The function returns the number of keys that have been recovered. If no keys can be recovered, the file will be declared Zombie by the calling function. This function is automatically called when opening a file. If the file is open in read only mode, the file is not modified. If open in update mode and the function finds something to recover, a new directory header is written to the file. When opening the file gain no message from Recover will be reported. If keys have been recovered, the file is usable and you can safely read the corresponding objects. If the file is not usable (a zombie), you can test for this case with code like:
If the file has been recovered, the bit kRecovered is set in the TFile object in memory. You can test if the file has been recovered with
if (f.TestBit(TFile::kRecovered)) {... the file has been recovered}
When writing TTrees to a file, it is important to save the Tree header at regular intervals (see TTree::AutoSave). If a file containing a Tree is recovered, the last Tree header written to the file will be used. In this case all the entries in all the branches written before writing the header are valid entries. One can disable the automatic recovery procedure by setting
TFile.Recover 0
in the system.rootrc file.
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 1857 of file TFile.cxx.
Referenced by Init().
Reopen a file with a different access mode.
For example, it is possible to change from READ to UPDATE or from NEW, CREATE, RECREATE, UPDATE to READ. Thus the mode argument can be either "READ" or "UPDATE". The method returns 0 in case the mode was successfully modified, 1 in case the mode did not change (was already as requested or wrong input arguments) and -1 in case of failure, in which case the file cannot be used anymore. The current directory (gFile) is changed to this file.
Reimplemented in TSQLFile, TXMLFile, TWebFile, TNetFile, and TNetXNGFile.
Definition at line 1971 of file TFile.cxx.
Referenced by TNetFile::ReOpen(), and TXNetFile::ReOpen().
|
virtual |
Method resetting the errno. Is overridden in TRFIOFile.
Reimplemented in TSQLFile, TMemFile, TXMLFile, TDCacheFile, THDFSFile, and TRFIOFile.
Definition at line 1188 of file TFile.cxx.
Referenced by ReadBuffer(), and WriteBuffer().
|
virtual |
Seek to a specific position in the file. Pos it either kBeg, kCur or kEnd.
Reimplemented in TSQLFile, TXMLFile, TDavixFile, TWebFile, TNetFile, and TNetXNGFile.
Definition at line 2085 of file TFile.cxx.
Referenced by Cp(), TZIPFile::FindEndHeader(), TFileCacheWrite::Flush(), GetCompressionFactor(), GetRecordHeader(), GetStreamerInfoList(), TTreeCacheUnzip::GetUnzipBuffer(), Init(), TBasket::LoadBasketBuffers(), MakeFree(), Map(), OpenFromCache(), ReadBuffer(), TDCacheFile::ReadBuffers(), ReadBuffers(), ReadBufferViaCache(), TZIPFile::ReadDirectory(), TZIPFile::ReadEndHeader(), TKey::ReadFile(), TDirectoryFile::ReadKeys(), TZIPFile::ReadMemberHeader(), TZIPFile::ReadZip64EndLocator(), TZIPFile::ReadZip64EndRecord(), Recover(), TKey::TKey(), WriteBufferViaCache(), TDirectoryFile::WriteDirHeader(), TKey::WriteFile(), TKey::WriteFileKeepBuffer(), and WriteHeader().
|
virtual |
Set a pointer to the read cache.
This relinquishes ownership of the previous cache, so if you do not already have a pointer to the previous cache (and there was a previous cache), you ought to retrieve (and delete it if needed) using:
TFileCacheRead *older = myfile->GetCacheRead();
The action specifies how to behave when detaching a cache from the the TFile. If set to (default) kDisconnect, the contents of the cache will be flushed when it is removed from the file, and it will disconnect the cache object from the file. In almost all cases, this is what you want. If you want to disconnect the cache temporarily from this tree and re-attach later to the same fil, you can set action to kDoNotDisconnect. This will allow things like prefetching to continue in the background while it is no longer the default cache for the TTree. Except for a few expert use cases, kDisconnect is likely the correct setting.
WARNING: if action=kDoNotDisconnect, you MUST delete the cache before TFile.
Definition at line 2177 of file TFile.cxx.
Referenced by TTreeCloner::CreateCache(), TEventIterTree::GetTrees(), TChain::LoadTree(), TTree::MoveReadCache(), TTreeCloner::RestoreCache(), TTreeCloner::SetCacheSize(), TTree::SetCacheSizeAux(), TTreeCache::SetFile(), TTree::SetName(), TTree::SetObject(), TFileCacheRead::TFileCacheRead(), TChain::~TChain(), TEventIterTree::TFileTree::~TFileTree(), and TTreeCache::~TTreeCache().
|
virtual |
Set a pointer to the write cache.
If file is null the existing write cache is deleted.
Definition at line 2200 of file TFile.cxx.
Referenced by TFileCacheWrite::TFileCacheWrite().
See comments for function SetCompressionSettings.
Definition at line 2131 of file TFile.cxx.
Referenced by TSQLFile::TSQLFile().
Used to specify the compression level and algorithm.
See the TFile constructor for the details.
Definition at line 2150 of file TFile.cxx.
Referenced by TXMLFile::TXMLFile().
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 246 of file TFile.h.
Referenced by TKey::Create().
Definition at line 4353 of file TFile.cxx.
Referenced by TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TDCacheFile::ReadBuffers(), TNetFile::ReadBuffers(), and TXNetFile::ReadBuffers().
Definition at line 4356 of file TFile.cxx.
Referenced by TNetFile::WriteBuffer(), and TXNetFile::WriteBuffer().
Definition at line 4359 of file TFile.cxx.
Referenced by TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TNetFile::ReadBuffers(), and TXNetFile::ReadBuffers().
|
virtual |
Set position from where to start reading.
Definition at line 2064 of file TFile.cxx.
Referenced by TBasket::LoadBasketBuffers(), TGFALFile::ReadBuffer(), TDCacheFile::ReadBuffer(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TWebFile::ReadBuffer(), ReadBuffer(), TFileCacheRead::ReadBufferExtNormal(), TFileCacheRead::ReadBufferExtPrefetch(), ReadBufferViaCache(), TNetXNGFile::Seek(), and TNetFile::Seek().
Specify if the streamerinfos must be read at file opening.
If fgReadInfo is true (default) TFile::ReadStreamerInfo is called when opening the file. It may be interesting to set fgReadInfo to false to speedup the file opening time or in case libraries containing classes referenced by the file have not yet been loaded. if fgReadInfo is false, one can still read the StreamerInfo with myfile.ReadStreamerInfo();
|
virtual |
Show the StreamerInfo of all classes written to this file.
Definition at line 3519 of file TFile.cxx.
Referenced by RooStats::HistFactory::loadSavedInputs().
|
virtual |
Return the size in bytes of the file header.
Reimplemented from TDirectoryFile.
Increment statistics for buffer sizes of objects in this file.
Definition at line 2229 of file TFile.cxx.
Referenced by TDirectoryFile::WriteObjectAny(), WriteStreamerInfo(), and TDirectoryFile::WriteTObject().
Interface to system read. All arguments like in POSIX read().
Reimplemented in TMemFile, TSQLFile, TDCacheFile, TXMLFile, TGFALFile, THDFSFile, TRFIOFile, and TChirpFile.
Definition at line 4251 of file TFile.cxx.
Referenced by ReadBuffer().
Interface to system lseek.
All arguments like in POSIX lseek() except that the offset and return value are of a type which are able to handle 64 bit file systems.
Reimplemented in TMemFile, TSQLFile, TDCacheFile, TXMLFile, TGFALFile, THDFSFile, TRFIOFile, and TChirpFile.
Definition at line 4270 of file TFile.cxx.
Referenced by Seek().
|
protectedvirtual |
Return file stat information.
The interface and return value is identical to TSystem::GetPathInfo(). The function returns 0 in case of success and 1 if the file could not be stat'ed.
Reimplemented in TXNetFile, TNetFile, TMemFile, TSQLFile, TDCacheFile, TXMLFile, TGFALFile, THDFSFile, TRFIOFile, and TChirpFile.
Definition at line 4288 of file TFile.cxx.
Referenced by GetSize().
Interface to system write. All arguments like in POSIX write().
Reimplemented in TMemFile, TSQLFile, TDCacheFile, TXMLFile, TGFALFile, THDFSFile, TRFIOFile, and TChirpFile.
Definition at line 4259 of file TFile.cxx.
Referenced by WriteBuffer().
Write memory objects to this file.
Loop on all objects in memory (including subdirectories). A new key is created in the KEYS linked list for each object. The list of keys is then saved on the file (via WriteKeys) as a single data record. For values of opt see TObject::Write(). The directory header info is rewritten on the directory header record. The linked list of FREE segments is written. The file header is written (bytes 1->fBEGIN).
Reimplemented from TDirectoryFile.
Reimplemented in TSQLFile, TXMLFile, and TParallelMergingFile.
Definition at line 2248 of file TFile.cxx.
Referenced by TGeoChecker::CheckGeometryFull(), main(), TFileMerger::PartialMerge(), Recover(), TRecorderRecording::Stop(), TParallelMergingFile::Write(), Write(), writeCArray(), Roo2DKeysPdf::writeHistToFile(), Roo2DKeysPdf::writeNTupleToFile(), writeTMatrix(), writeTMatrixSym(), writeTrackD(), and writeTrackD32().
One can not save a const TDirectory object.
Reimplemented from TDirectoryFile.
Reimplemented in TSQLFile, TXMLFile, and TParallelMergingFile.
Write a buffer to the file.
This is the basic low level write operation. Returns kTRUE in case of failure.
Reimplemented in TSQLFile, TXNetFile, TXMLFile, TDavixFile, TNetFile, TNetXNGFile, TDCacheFile, TGFALFile, and TCastorFile.
Definition at line 2288 of file TFile.cxx.
Referenced by Cp(), TAlienCollection::ExportXML(), TFileCacheWrite::Flush(), MakeFree(), TFilePrefetch::SaveBlockInCache(), ShrinkCacheFileDir(), TFileCacheWrite::WriteBuffer(), TGFALFile::WriteBuffer(), TDCacheFile::WriteBuffer(), TDirectoryFile::WriteDirHeader(), TKey::WriteFile(), TKey::WriteFileKeepBuffer(), and WriteHeader().
Write buffer via cache.
Returns 0 if cache is not active, 1 in case write via cache was successful, 2 in case write via cache failed.
Definition at line 2331 of file TFile.cxx.
Referenced by TGFALFile::WriteBuffer(), TDCacheFile::WriteBuffer(), TNetXNGFile::WriteBuffer(), TNetFile::WriteBuffer(), TXNetFile::WriteBuffer(), and WriteBuffer().
|
virtual |
Write FREE linked list on the file.
The linked list of FREE segments (fFree) is written as a single data record.
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 2355 of file TFile.cxx.
Referenced by Close(), TDirectoryFile::Delete(), TDirectoryFile::Purge(), ReOpen(), and Write().
|
virtual |
Write File Header.
Reimplemented in TSQLFile, and TXMLFile.
Definition at line 2396 of file TFile.cxx.
Referenced by TTree::AutoSave(), Close(), TDirectoryFile::Delete(), Init(), TDirectoryFile::Purge(), ReOpen(), and Write().
|
virtual |
Check if the ProcessID pidd is already in the file, if not, add it and return the index number in the local file list.
Definition at line 3532 of file TFile.cxx.
Referenced by TBufferFile::WriteProcessID().
|
virtual |
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.
See class TStreamerInfo.
Reimplemented in TSQLFile, TXMLFile, and TParallelMergingFile.
Definition at line 3561 of file TFile.cxx.
Referenced by TTree::AutoSave(), Close(), TRootSniffer::CreateMemFile(), TRootSniffer::ProduceBinary(), ReOpen(), Write(), and TParallelMergingFile::WriteStreamerInfo().
|
friend |
|
friend |
|
protected |
|
protected |
!Offset at which file starts in archive
Definition at line 88 of file TFile.h.
Referenced by Init(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TDCacheFile::ReadBuffers(), TNetXNGFile::ReadBuffers(), TNetFile::ReadBuffers(), TWebFile::ReadBuffers(), TXNetFile::ReadBuffers(), TWebFile::ReadBuffers10(), TWebFile::Seek(), TDavixFile::Seek(), Seek(), SetOffset(), and TFile().
|
protected |
|
protected |
!Status of an asynchronous open request
Definition at line 96 of file TFile.h.
Referenced by TXNetFile::CreateXClient(), TXNetFile::GetAsyncOpenStatus(), TNetXNGFile::Init(), TXNetFile::Open(), TNetXNGFile::SetAsyncOpenStatus(), and TFile().
|
protected |
First used byte in file.
Definition at line 65 of file TFile.h.
Referenced by GetCompressionFactor(), GetRecordHeader(), Init(), Map(), Recover(), ReOpen(), TFile(), and WriteHeader().
|
protected |
Number of bytes read from this file.
Definition at line 63 of file TFile.h.
Referenced by TDavixFile::eventStop(), TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TNetFile::Print(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TDCacheFile::ReadBuffers(), TNetXNGFile::ReadBuffers(), TNetFile::ReadBuffers(), TXNetFile::ReadBuffers(), ReadBuffers(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().
|
protected |
Number of extra bytes (overhead) read by the readahead buffer.
Definition at line 64 of file TFile.h.
Referenced by ReadBuffers(), TMemFile::ResetAfterMerge(), and TFile().
|
protected |
Number of bytes written to this file.
Definition at line 62 of file TFile.h.
Referenced by GetBytesWritten(), TNetFile::Print(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), TNetXNGFile::WriteBuffer(), TNetFile::WriteBuffer(), TXNetFile::WriteBuffer(), and WriteBuffer().
|
protected |
!Pointer to the read cache (if any)
Definition at line 85 of file TFile.h.
Referenced by Close(), GetCacheRead(), TDCacheFile::ReadBuffers(), ReadBuffers(), ReadBufferViaCache(), TMemFile::ResetAfterMerge(), SetCacheRead(), TFile(), and ~TFile().
|
protected |
!Pointer to the read cache (if any)
Definition at line 86 of file TFile.h.
Referenced by Close(), GetCacheRead(), SetCacheRead(), TFile(), and ~TFile().
|
protected |
!Pointer to the write cache (if any)
Definition at line 87 of file TFile.h.
Referenced by FlushWriteCache(), GetBytesWritten(), GetCacheWrite(), ReadBufferViaCache(), TMemFile::ResetAfterMerge(), SetCacheWrite(), TFile(), WriteBufferViaCache(), and ~TFile().
|
protected |
!Index of TStreamerInfo classes written to this file
Definition at line 81 of file TFile.h.
Referenced by TXMLFile::Close(), Close(), TSQLFile::Close(), Init(), TSQLFile::InitSqlDatabase(), TXMLFile::InitXmlFile(), ReadStreamerInfo(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), TParallelMergingFile::UploadAndReset(), TParallelMergingFile::WriteStreamerInfo(), TXMLFile::WriteStreamerInfo(), WriteStreamerInfo(), and TSQLFile::WriteStreamerInfo().
|
protected |
Compression level and algorithm.
Definition at line 71 of file TFile.h.
Referenced by Init(), SetCompressionAlgorithm(), SetCompressionLevel(), SetCompressionSettings(), TFile(), WriteHeader(), and WriteStreamerInfo().
|
protected |
File descriptor.
Definition at line 69 of file TFile.h.
Referenced by TNetFile::Close(), TXNetFile::Close(), Close(), TMemFile::CopyTo(), Flush(), GetSize(), TNetFile::Init(), TWebFile::Init(), TDavixFile::Init(), TXNetFile::Init(), IsOpen(), ReadBuffer(), TRFIOFile::ReadBuffers(), TDCacheFile::ReadBuffers(), ReOpen(), Seek(), TFile(), TMemFile::TMemFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), and WriteBuffer().
|
protected |
Last used byte in file.
Definition at line 66 of file TFile.h.
Referenced by GetCompressionFactor(), GetRecordHeader(), Init(), MakeFree(), Map(), ReadFree(), Recover(), TWebFile::Seek(), TDavixFile::Seek(), SetOffset(), TFile(), and WriteHeader().
|
protected |
Free segments linked list table.
Definition at line 80 of file TFile.h.
Referenced by Close(), Init(), MakeFree(), ReadFree(), Recover(), ReOpen(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), WriteFree(), WriteHeader(), and ~TFile().
|
staticprotected |
Definition at line 102 of file TFile.h.
Referenced by AsyncOpen(), GetAsyncOpenStatus(), GetEndpointUrl(), and Open().
|
staticprotected |
Number of bytes read by all TFile objects.
Definition at line 111 of file TFile.h.
Referenced by GetFileBytesRead(), TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TNetXNGFile::ReadBuffers(), TNetFile::ReadBuffers(), TXNetFile::ReadBuffers(), ReadBuffers(), and SetFileBytesRead().
|
staticprotected |
Number of bytes written by all TFile objects.
Definition at line 110 of file TFile.h.
Referenced by GetFileBytesWritten(), SetFileBytesWritten(), TNetXNGFile::WriteBuffer(), TNetFile::WriteBuffer(), TXNetFile::WriteBuffer(), and WriteBuffer().
|
staticprotected |
Directory where to locally stage files.
Definition at line 104 of file TFile.h.
Referenced by GetCacheFileDir(), OpenFromCache(), SetCacheFileDir(), and ShrinkCacheFileDir().
Indicates, we trust in the files in the cache dir without stat on the cached file.
Definition at line 105 of file TFile.h.
Referenced by OpenFromCache(), and SetCacheFileDir().
Indicates, to force all READ to CACHEREAD.
Definition at line 106 of file TFile.h.
Referenced by Open(), OpenFromCache(), and SetCacheFileDir().
|
staticprotected |
Counter for all opened files.
Definition at line 112 of file TFile.h.
Referenced by GetFileCounter(), and IncrementFileCounter().
|
staticprotected |
Before the file is opened, it is checked, that the file is staged, if not, the open fails.
Definition at line 108 of file TFile.h.
Referenced by GetOnlyStaged(), and SetOnlyStaged().
|
staticprotected |
Timeout for open operations in ms - 0 corresponds to blocking i/o.
Definition at line 107 of file TFile.h.
Referenced by GetOpenTimeout(), OpenFromCache(), and SetOpenTimeout().
|
staticprotected |
Readahead buffer size.
Definition at line 114 of file TFile.h.
Referenced by GetReadaheadSize(), ReadBuffers(), and SetReadaheadSize().
|
staticprotected |
Number of bytes read from all TFile objects.
Definition at line 113 of file TFile.h.
Referenced by GetFileReadCalls(), TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TNetXNGFile::ReadBuffers(), TNetFile::ReadBuffers(), TXNetFile::ReadBuffers(), and SetFileReadCalls().
if true (default) ReadStreamerInfo is called when opening a file
Definition at line 115 of file TFile.h.
Referenced by GetReadStreamerInfo(), Init(), and SetReadStreamerInfo().
|
protected |
!Cached list of the streamer infos in this file
Definition at line 99 of file TFile.h.
Referenced by GetStreamerInfoCache(), Recover(), TFile(), WriteHeader(), WriteStreamerInfo(), and ~TFile().
|
protected |
!True if the file has been initialized
Definition at line 92 of file TFile.h.
Referenced by TNetXNGFile::Init(), TXNetFile::Init(), Init(), TXNetFile::IsOpen(), TMemFile::ResetAfterMerge(), and TFile().
|
protected |
|
protected |
!True if the file is a ROOT pcm file.
Definition at line 94 of file TFile.h.
Referenced by GetStreamerInfoList(), TFile(), and WriteStreamerInfo().
|
protected |
|
protected |
!True if the file buffers must be flushed
Definition at line 93 of file TFile.h.
Referenced by Close(), MakeFree(), TMemFile::ResetAfterMerge(), TFile(), and Write().
|
protected |
Number of bytes for free segments structure.
Definition at line 72 of file TFile.h.
Referenced by Init(), ReadFree(), TFile(), WriteFree(), and WriteHeader().
|
protected |
Number of bytes for StreamerInfo record.
Definition at line 73 of file TFile.h.
Referenced by GetStreamerInfoList(), Init(), Recover(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), WriteHeader(), and WriteStreamerInfo().
|
protected |
|
protected |
Number of TProcessID written to this file.
Definition at line 75 of file TFile.h.
Referenced by Init(), TSQLFile::InitSqlDatabase(), TXMLFile::InitXmlFile(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().
|
protected |
!Seek offset cache
Definition at line 83 of file TFile.h.
Referenced by TDavixFile::DavixReadBuffer(), TDavixFile::DavixWriteBuffer(), TWebFile::GetFromWeb10(), TDavixFile::Init(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TWebFile::ReadBuffer(), TXNetFile::ReadBuffer(), TWebFile::ReadBuffer10(), TNetXNGFile::ReadBuffers(), TXNetFile::ReadBuffers(), TMemFile::ResetAfterMerge(), TWebFile::Seek(), TDavixFile::Seek(), Seek(), SetOffset(), TChirpFile::SysRead(), TChirpFile::SysSeek(), TChirpFile::SysWrite(), TFile(), TNetXNGFile::WriteBuffer(), TNetFile::WriteBuffer(), and TXNetFile::WriteBuffer().
|
protected |
!Time info about open phases
Definition at line 100 of file TFile.h.
Referenced by TNetXNGFile::Init(), TXNetFile::Init(), TFile(), TNetXNGFile::TNetXNGFile(), TXNetFile::TXNetFile(), and ~TFile().
|
protected |
File options.
Definition at line 78 of file TFile.h.
Referenced by TAlienFile::Close(), TNetFile::ConnectServer(), TNetFile::Create(), TCastorFile::FindServerAndPath(), Init(), TXNetFile::Open(), TNetFile::Print(), TNetXNGFile::ReOpen(), TXMLFile::ReOpen(), ReOpen(), TSQLFile::ReOpen(), TNetFile::SysOpen(), TXNetFile::SysOpen(), TGFALFile::SysStat(), TDCacheFile::SysStat(), TFile(), TMemFile::TMemFile(), TNetXNGFile::TNetXNGFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().
|
protected |
!Array of pointers to TProcessIDs
Definition at line 82 of file TFile.h.
Referenced by TXMLFile::Close(), Close(), TSQLFile::Close(), Init(), TSQLFile::InitSqlDatabase(), TXMLFile::InitXmlFile(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), and ~TFile().
|
protected |
Number of read calls ( not counting the cache calls )
Definition at line 76 of file TFile.h.
Referenced by TDavixFile::eventStop(), TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TNetXNGFile::ReadBuffer(), TNetFile::ReadBuffer(), TXNetFile::ReadBuffer(), ReadBuffer(), TXNetFile::ReadBufferAsync(), TRFIOFile::ReadBuffers(), TNetXNGFile::ReadBuffers(), TNetFile::ReadBuffers(), TXNetFile::ReadBuffers(), TMemFile::ResetAfterMerge(), and TFile().
|
protected |
Effective real file name (not original url)
Definition at line 77 of file TFile.h.
Referenced by TXMLFile::ReadFromFile(), ReOpen(), TXMLFile::SaveToFile(), TChirpFile::SysStat(), TGFALFile::SysStat(), SysStat(), TFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().
|
protected |
Location on disk of free segments structure.
Definition at line 67 of file TFile.h.
Referenced by Init(), Map(), ReadFree(), ReOpen(), TFile(), WriteFree(), and WriteHeader().
|
protected |
Location on disk of StreamerInfo record.
Definition at line 68 of file TFile.h.
Referenced by GetStreamerInfoList(), Init(), Map(), Recover(), TMemFile::ResetAfterMerge(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), WriteHeader(), and WriteStreamerInfo().
|
protected |
Sum of squares of buffer sizes of objects written so far.
Definition at line 61 of file TFile.h.
Referenced by GetBestBuffer(), TMemFile::ResetAfterMerge(), SumBuffer(), TFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().
|
protected |
Sum of buffer sizes of objects written so far.
Definition at line 60 of file TFile.h.
Referenced by GetBestBuffer(), TMemFile::ResetAfterMerge(), SumBuffer(), TFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().
|
protected |
Number of bytes for file pointers.
Definition at line 79 of file TFile.h.
Referenced by Init(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), and WriteHeader().
|
protected |
!URL of file
Definition at line 97 of file TFile.h.
Referenced by TWebFile::BasicAuthentication(), TNetFile::ConnectServer(), TNetFile::Create(), TXNetFile::CreateXClient(), TCastorFile::FindServerAndPath(), TWebFile::GetFromWeb(), TWebFile::GetFromWeb10(), TWebFile::GetHead(), TWebFile::GetHunk(), TWebFile::GetLine(), TDavixFile::GetSize(), TS3WebFile::GetUrl(), TXNetFile::Init(), Matches(), TXNetFile::Open(), TNetFile::Print(), TWebFile::SetMsgReadBuffer10(), TNetFile::SysOpen(), TXNetFile::SysOpen(), TFile(), and TParallelMergingFile::TParallelMergingFile().
|
protected |
File format version.
Definition at line 70 of file TFile.h.
Referenced by Init(), TXMLFile::ReadFromFile(), ReadStreamerInfo(), TXMLFile::SaveToFile(), TFile(), TSQLFile::TSQLFile(), TXMLFile::TXMLFile(), and WriteHeader().
|
protected |
Number of objects written so far.
Definition at line 74 of file TFile.h.
Referenced by TWebSystem::AccessPathName(), GetBestBuffer(), TWebSystem::GetPathInfo(), TWebFile::Init(), TMemFile::ResetAfterMerge(), SumBuffer(), TFile(), TSQLFile::TSQLFile(), and TXMLFile::TXMLFile().