58 class TBranchIMTHelper;
77 kAutoDelete =
BIT(15),
79 kDoNotUseBufferMap =
BIT(22)
135 void Init(
const char *
name,
const char *leaflist,
Int_t compress);
141 TString GetRealFileName()
const;
152 TBranch(
TBranch *parent,
const char *name,
void *address,
const char *leaflist,
Int_t basketsize=32000,
Int_t compress=-1);
156 virtual void AddLastBasket(
Long64_t startEntry);
159 virtual void DeleteBaskets(
Option_t* option=
"");
161 void ExpandBasketArrays();
175 virtual TList *GetBrowsables();
176 virtual const char* GetClassName()
const;
177 Int_t GetCompressionAlgorithm()
const;
178 Int_t GetCompressionLevel()
const;
179 Int_t GetCompressionSettings()
const;
213 Bool_t IsAutoDelete()
const;
218 void PrintCacheInfo()
const;
219 virtual void ReadBasket(
TBuffer &b);
223 virtual void ResetAddress();
225 virtual void SetAddress(
void *add);
229 virtual void SetBufferAddress(
TBuffer *entryBuffer);
230 void SetCompressionAlgorithm(
Int_t algorithm=0);
231 void SetCompressionLevel(
Int_t level=1);
232 void SetCompressionSettings(
Int_t settings=1);
235 virtual void SetFirstEntry(
Long64_t entry );
237 virtual void SetFile(
const char *filename);
241 virtual void SetStatus(
Bool_t status=1);
243 virtual void SetupAddresses();
245 virtual void UpdateFile();
247 static void ResetCount();
255 return (fCompress < 0) ? -1 : fCompress / 100;
261 return (fCompress < 0) ? -1 : fCompress % 100;
267 return (fCompress < 0) ? -1 : fCompress;
virtual void UpdateAddress()
virtual TBranch * FindBranch(const char *name)
Return the branch that correspond to the path 'branchname', which can include the name of the tree or...
Int_t fNBaskets
! Number of baskets in memory
A TLeaf describes individual elements of a TBranch See TBranch structure in TTree.
Long64_t * GetBasketEntry() const
Int_t GetSplitLevel() const
Int_t fOffset
Offset of this branch.
virtual Int_t GetBasketSize() const
Namespace for new ROOT classes and functions.
virtual Int_t FlushBaskets(Bool_t create_cluster=true) const
Write to disk all the basket that have not yet been individually written and create an event cluster ...
TObjArray * GetListOfBaskets()
Long64_t fEntries
Number of entries.
virtual Int_t LoadBaskets(Long64_t maxmemory=2000000000)
Read in memory all baskets from all branches up to the limit of maxmemory bytes.
Int_t GetCompressionLevel() const
virtual const char * GetIconName() const
Returns mime type name of object.
Long64_t fZipBytes
Total number of bytes in all leaves after compression.
ReadLeaves_t fReadLeaves
! Pointer to the ReadLeaves implementation to use.
Int_t GetMakeClass() const
A specialized TFileCacheRead object for a TTree.
virtual TLeaf * GetLeaf(const char *branchname, const char *leafname)
Return pointer to the 1st Leaf named name in any Branch of this Tree or any branch in the list of fri...
A ROOT file is a suite of consecutive data records (TKey instances) with a well defined format...
Buffer base class used for serializing objects.
TDirectory * fDirectory
! Pointer to directory holding this tree
TBasket * fCurrentBasket
! Pointer to the current basket.
const Int_t kBranchObject
TDirectory * GetDirectory() const
virtual Int_t GetEntry(Long64_t entry=0, Int_t getall=0)
Read all branches of entry and return total number of bytes read.
TObjArray fBaskets
-> List of baskets of this branch
virtual void Browse(TBrowser *)
Browse content of the TTree.
Int_t fNleaves
! Number of leaves
Int_t GetCompressionAlgorithm() const
TIOFeatures provides the end-user with the ability to change the IO behavior of data written via a TT...
TObjArray fLeaves
-> List of leaves of this branch
Long64_t * fBasketSeek
[fMaxBaskets] Addresses of baskets on file
virtual void KeepCircular()
Keep a maximum of fMaxEntries in memory.
Int_t GetEntryOffsetLen() const
void SetSkipZip(Bool_t skip=kTRUE)
Long64_t fFirstBasketEntry
! First entry in the current basket.
virtual void Refresh()
Refresh contents of this tree and its branches from the current status on disk.
Int_t * fBasketBytes
[fMaxBaskets] Length of baskets on file
Long64_t fEntryNumber
Current entry number (last one filled in this branch)
virtual void SetTree(TTree *tree)
Int_t fWriteBasket
Last basket number written.
Long64_t fTotBytes
Total number of bytes in all leaves before compression.
Fill Area Attributes class.
Int_t * GetBasketBytes() const
#define ClassDef(name, id)
virtual void SetObject(const char *name, const char *title)
Change the name and title of this tree.
The TNamed class is the base class for all named ROOT classes.
void Init(TClassEdit::TInterpreterLookupHelper *helper)
const Int_t kDoNotProcess
TObjArray * GetListOfBranches()
Int_t fMaxBaskets
Maximum number of Baskets so far.
Long64_t GetEntryNumber() const
Int_t fSplitLevel
Branch split level.
TObjArray fLeaves
Direct pointers to individual branch leaves.
Int_t GetEvent(Long64_t entry=0)
Int_t GetCompressionSettings() const
Using a TBrowser one can browse all ROOT objects.
Int_t WriteBasket(TBasket *basket, Int_t where)
TBuffer * fEntryBuffer
! Buffer used to directly pass the content without streaming
Int_t GetReadBasket() const
static Int_t fgCount
! branch counter
virtual void SetOffset(Int_t offset=0)
Int_t fBasketSize
Initial Size of Basket Buffer.
CacheInfo_t fCacheInfo
! Hold info about which basket are in the cache and if they have been retrieved from the cache...
TList * fBrowsables
! List of TVirtualBranchBrowsables used for Browse()
Long64_t GetFirstEntry() const
Long64_t fReadEntry
! Number of the entry being processed
Int_t GetWriteBasket() const
TObjArray fBranches
List of Branches.
FillLeaves_t fFillLeaves
! Pointer to the FillLeaves implementation to use.
Long64_t fNextBasketEntry
! Next entry that will requires us to go to the next basket
Manages buffers for branches of a Tree.
Int_t GetMaxBaskets() const
virtual TLeaf * FindLeaf(const char *name)
Find leaf..
The ROOT global object gROOT contains a list of all defined classes.
const char * GetFileName() const
ROOT::TIOFeatures GetIOFeatures() const
Returns the current set of IO settings.
void Reset(Detail::TBranchProxy *x)
void SetIOFeatures(TIOFeatures &features)
Bool_t IsFolder() const
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects)...
virtual void SetMakeClass(Int_t make)
Set all the branches in this TTree to be in decomposed object mode (also known as MakeClass mode)...
Bool_t fSkipZip
! After being read, the buffer will not be unzipped.
Int_t fReadBasket
! Current basket number when reading
void Print(std::ostream &os, const OptionType &opt)
Describe directory structure in memory.
TTree * fTree
! Pointer to Tree header
TObjArray * GetListOfLeaves()
TDirectory * fDirectory
! Pointer to directory where this branch buffers are stored
virtual void SetBasketSize(const char *bname, Int_t buffsize=16000)
Set a branch's basket size.
Binding & operator=(OUT(*fun)(void))
virtual void ResetAfterMerge(TFileMergeInfo *)
Resets the state of this TTree after a merge (keep the customization but forget the data)...
typedef void((*Func_t)())
Long64_t fEntries
Number of entries.
Long64_t GetEntries() const
An array of clone (identical) objects.
TBuffer * GetTransientBuffer(Int_t size)
Returns the transient buffer currently used by this TTree for reading/writing baskets.
virtual Long64_t GetTotBytes() const
Class implementing or helping the various TTree cloning method.
Long64_t * fBasketEntry
[fMaxBaskets] Table of first entry in each basket
virtual Long64_t GetZipBytes() const
TIOFeatures fIOFeatures
IO features for newly-created baskets.
Long64_t fReadEntry
! Current entry number when reading
Long64_t GetReadEntry() const
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
TBranch * fMother
! Pointer to top-level parent branch in the tree.
virtual char * GetAddress() const
A TTree object has a header with a name and a title.
Int_t fEntryOffsetLen
Initial Length of fEntryOffset table in the basket buffers.
virtual void DropBaskets()
Remove some baskets from memory.
TObjArray fBranches
-> List of Branches of this branch
virtual void ResetReadEntry()
virtual Long64_t SetEntries(Long64_t n=-1)
Change number of entries in the tree.
A TTree is a list of TBranches.
TBuffer * fTransientBuffer
! Pointer to the current transient buffer.
Int_t fCompress
Compression level and algorithm.
TString fFileName
Name of file where buffers are stored ("" if in same file as Tree header)
TBranch * fParent
! Pointer to parent branch.
Long64_t fFirstEntry
Number of the first entry in this branch.
const char * Data() const
char * fAddress
! Address of 1st leaf (variable or object)