ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Static Protected Attributes | Private Member Functions | Friends | List of all members
TBranch Class Reference

A TTree is a list of TBranches.

A TBranch supports:

See TBranch structure in TTree.

See also specialized branches:

Definition at line 58 of file TBranch.h.

Public Member Functions

 TBranch ()
 
 TBranch (TTree *tree, const char *name, void *address, const char *leaflist, Int_t basketsize=32000, Int_t compress=-1)
 Create a Branch as a child of a Tree. More...
 
 TBranch (TBranch *parent, const char *name, void *address, const char *leaflist, Int_t basketsize=32000, Int_t compress=-1)
 Create a Branch as a child of another Branch. More...
 
virtual ~TBranch ()
 Destructor. More...
 
virtual void AddBasket (TBasket &b, Bool_t ondisk, Long64_t startEntry)
 Add the basket to this branch. More...
 
virtual void AddLastBasket (Long64_t startEntry)
 Add the start entry of the write basket (not yet created) More...
 
virtual void Browse (TBrowser *b)
 Browser interface. More...
 
virtual void DeleteBaskets (Option_t *option="")
 Loop on all branch baskets. More...
 
virtual void DropBaskets (Option_t *option="")
 Loop on all branch baskets. More...
 
void ExpandBasketArrays ()
 Increase BasketEntry buffer of a minimum of 10 locations and a maximum of 50 per cent of current size. More...
 
virtual Int_t Fill ()
 Loop on all leaves of this branch to fill Basket buffer. More...
 
virtual TBranchFindBranch (const char *name)
 Find the immediate sub-branch with passed name. More...
 
virtual TLeafFindLeaf (const char *name)
 Find the leaf corresponding to the name 'searchname'. More...
 
Int_t FlushBaskets ()
 Flush to disk all the baskets of this branch and any of subbranches. More...
 
Int_t FlushOneBasket (UInt_t which)
 If we have a write basket in memory and it contains some entries and has not yet been written to disk, we write it and delete it from memory. More...
 
virtual char * GetAddress () const
 
TBasketGetBasket (Int_t basket)
 Return pointer to basket basketnumber in this Branch. More...
 
Int_tGetBasketBytes () const
 
Long64_tGetBasketEntry () const
 
virtual Long64_t GetBasketSeek (Int_t basket) const
 Return address of basket in the file. More...
 
virtual Int_t GetBasketSize () const
 
virtual TListGetBrowsables ()
 Returns (and, if 0, creates) browsable objects for this branch See TVirtualBranchBrowsable::FillListOfBrowsables. More...
 
virtual const char * GetClassName () const
 Return the name of the user class whose content is stored in this branch, if any. More...
 
Int_t GetCompressionAlgorithm () const
 
Int_t GetCompressionLevel () const
 
Int_t GetCompressionSettings () const
 
TDirectoryGetDirectory () const
 
virtual Int_t GetEntry (Long64_t entry=0, Int_t getall=0)
 Read all leaves of entry and return total number of bytes read. More...
 
virtual Int_t GetEntryExport (Long64_t entry, Int_t getall, TClonesArray *list, Int_t n)
 Read all leaves of an entry and export buffers to real objects in a TClonesArray list. More...
 
Int_t GetEntryOffsetLen () const
 
Int_t GetEvent (Long64_t entry=0)
 
const char * GetIconName () const
 Return icon name depending on type of branch. More...
 
virtual Int_t GetExpectedType (TClass *&clptr, EDataType &type)
 Fill expectedClass and expectedType with information on the data type of the object/values contained in this branch (and thus the type of pointers expected to be passed to Set[Branch]Address return 0 in case of success and > 0 in case of failure. More...
 
virtual TLeafGetLeaf (const char *name) const
 Return pointer to the 1st Leaf named name in thisBranch. More...
 
virtual TFileGetFile (Int_t mode=0)
 Return pointer to the file where branch buffers reside, returns 0 in case branch buffers reside in the same file as tree header. More...
 
const char * GetFileName () const
 
Int_t GetOffset () const
 
Int_t GetReadBasket () const
 
Long64_t GetReadEntry () const
 
Int_t GetWriteBasket () const
 
Long64_t GetTotalSize (Option_t *option="") const
 Return total number of bytes in the branch (including current buffer) More...
 
Long64_t GetTotBytes (Option_t *option="") const
 Return total number of bytes in the branch (excluding current buffer) if option ="*" includes all sub-branches of this branch too. More...
 
Long64_t GetZipBytes (Option_t *option="") const
 Return total number of zip bytes in the branch if option ="*" includes all sub-branches of this branch too. More...
 
Long64_t GetEntryNumber () const
 
Long64_t GetFirstEntry () const
 
TObjArrayGetListOfBaskets ()
 
TObjArrayGetListOfBranches ()
 
TObjArrayGetListOfLeaves ()
 
Int_t GetMaxBaskets () const
 
Int_t GetNleaves () const
 
Int_t GetSplitLevel () const
 
Long64_t GetEntries () const
 
TTreeGetTree () const
 
virtual Int_t GetRow (Int_t row)
 Return all elements of one row unpacked in internal array fValues [Actually just returns 1 (?)]. More...
 
virtual Bool_t GetMakeClass () const
 Return whether this branch is in a mode where the object are decomposed or not (Also known as MakeClass mode). More...
 
TBranchGetMother () const
 Get our top-level parent branch in the tree. More...
 
TBranchGetSubBranch (const TBranch *br) const
 Find the parent branch of child. More...
 
Bool_t IsAutoDelete () const
 Return kTRUE if an existing object in a TBranchObject must be deleted. More...
 
Bool_t IsFolder () const
 Return kTRUE if more than one leaf or browsables, kFALSE otherwise. More...
 
virtual void KeepCircular (Long64_t maxEntries)
 keep a maximum of fMaxEntries in memory More...
 
virtual Int_t LoadBaskets ()
 Baskets associated to this branch are forced to be in memory. More...
 
virtual void Print (Option_t *option="") const
 Print TBranch parameters. More...
 
virtual void ReadBasket (TBuffer &b)
 Loop on all leaves of this branch to read Basket buffer. More...
 
virtual void Refresh (TBranch *b)
 Refresh this branch using new information in b This function is called by TTree::Refresh. More...
 
virtual void Reset (Option_t *option="")
 Reset a Branch. More...
 
virtual void ResetAfterMerge (TFileMergeInfo *)
 Reset a Branch. More...
 
virtual void ResetAddress ()
 Reset the address of the branch. More...
 
virtual void ResetReadEntry ()
 
virtual void SetAddress (void *add)
 Set address of this branch. More...
 
virtual void SetObject (void *objadd)
 Set object this branch is pointing to. More...
 
virtual void SetAutoDelete (Bool_t autodel=kTRUE)
 Set the automatic delete bit. More...
 
virtual void SetBasketSize (Int_t buffsize)
 Set the basket size The function makes sure that the basket size is greater than fEntryOffsetlen. More...
 
virtual void SetBufferAddress (TBuffer *entryBuffer)
 Set address of this branch directly from a TBuffer to avoid streaming. More...
 
void SetCompressionAlgorithm (Int_t algorithm=0)
 Set compression algorithm. More...
 
void SetCompressionLevel (Int_t level=1)
 Set compression level. More...
 
void SetCompressionSettings (Int_t settings=1)
 Set compression settings. More...
 
virtual void SetEntries (Long64_t entries)
 Set the number of entries in this branch. More...
 
virtual void SetEntryOffsetLen (Int_t len, Bool_t updateSubBranches=kFALSE)
 Update the default value for the branch's fEntryOffsetLen if and only if it was already non zero (and the new value is not zero) If updateExisting is true, also update all the existing branches. More...
 
virtual void SetFirstEntry (Long64_t entry)
 set the first entry number (case of TBranchSTL) More...
 
virtual void SetFile (TFile *file=0)
 Set file where this branch writes/reads its buffers. More...
 
virtual void SetFile (const char *filename)
 Set file where this branch writes/reads its buffers. More...
 
virtual Bool_t SetMakeClass (Bool_t decomposeObj=kTRUE)
 Set the branch in a mode where the object are decomposed (Also known as MakeClass mode). More...
 
virtual void SetOffset (Int_t offset=0)
 
virtual void SetStatus (Bool_t status=1)
 Set branch status to Process or DoNotProcess. More...
 
virtual void SetTree (TTree *tree)
 
virtual void SetupAddresses ()
 If the branch address is not set, we set all addresses starting with the top level parent branch. More...
 
virtual void UpdateAddress ()
 
virtual void UpdateFile ()
 Refresh the value of fDirectory (i.e. More...
 
 ClassDef (TBranch, 12)
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TString &name, const TString &title)
 
 TNamed (const TNamed &named)
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual ~TNamed ()
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (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 void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. 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 SetName (const char *name)
 Change (i.e. More...
 
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...
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
TObjectoperator= (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 void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (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 TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () 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 Option_tGetOption () const
 
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 Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. 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 RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. 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...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
voidoperator new (size_t sz)
 
voidoperator new[] (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator 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...
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor. More...
 
virtual ~TAttFill ()
 AttFill destructor. More...
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill. More...
 
virtual Color_t GetFillColor () const
 
virtual Style_t GetFillStyle () const
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary. More...
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values. More...
 
virtual void SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
 Save fill attributes as C++ statement(s) on output stream out. More...
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes. More...
 
virtual void SetFillColor (Color_t fcolor)
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color. More...
 
virtual void SetFillStyle (Style_t fstyle)
 

Static Public Member Functions

static void ResetCount ()
 Static function resetting fgCount. More...
 
- Static Public Member Functions inherited from TObject
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 Types

enum  EStatusBits { kAutoDelete = BIT(15), kDoNotUseBufferMap = BIT(22) }
 
typedef void(TBranch::* ReadLeaves_t )(TBuffer &b)
 After being read, the buffer will not be unziped. More...
 
typedef void(TBranch::* FillLeaves_t )(TBuffer &b)
 Pointer to the ReadLeaves implementation to use. More...
 

Protected Member Functions

void ReadLeavesImpl (TBuffer &b)
 Pointer to the FillLeaves implementation to use. More...
 
void ReadLeaves0Impl (TBuffer &b)
 Read zero leaves without the overhead of a loop. More...
 
void ReadLeaves1Impl (TBuffer &b)
 Read one leaf without the overhead of a loop. More...
 
void ReadLeaves2Impl (TBuffer &b)
 Read two leaves without the overhead of a loop. More...
 
void FillLeavesImpl (TBuffer &b)
 Loop on all leaves of this branch to fill Basket buffer. More...
 
void SetSkipZip (Bool_t skip=kTRUE)
 
void Init (const char *name, const char *leaflist, Int_t compress)
 
TBasketGetFreshBasket ()
 Return a fresh basket by either resusing an existing basket that needs to be drop (according to TTree::MemoryFull) or create a new one. More...
 
Int_t WriteBasket (TBasket *basket, Int_t where)
 Write the current basket to disk and return the number of bytes written to the file. More...
 
TString GetRealFileName () const
 Get real file name. More...
 
- Protected Member Functions inherited from TObject
void MakeZombie ()
 
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 

Protected Attributes

Int_t fCompress
 branch counter More...
 
Int_t fBasketSize
 
Int_t fEntryOffsetLen
 
Int_t fWriteBasket
 
Long64_t fEntryNumber
 
Int_t fOffset
 
Int_t fMaxBaskets
 
Int_t fNBaskets
 
Int_t fSplitLevel
 Number of baskets in memory. More...
 
Int_t fNleaves
 
Int_t fReadBasket
 Number of leaves. More...
 
Long64_t fReadEntry
 Current basket number when reading. More...
 
Long64_t fFirstBasketEntry
 Current entry number when reading. More...
 
Long64_t fNextBasketEntry
 First entry in the current basket. More...
 
TBasketfCurrentBasket
 Next entry that will requires us to go to the next basket. More...
 
Long64_t fEntries
 Pointer to the current basket. More...
 
Long64_t fFirstEntry
 
Long64_t fTotBytes
 
Long64_t fZipBytes
 
TObjArray fBranches
 
TObjArray fLeaves
 
TObjArray fBaskets
 
Int_tfBasketBytes
 
Long64_tfBasketEntry
 
Long64_tfBasketSeek
 
TTreefTree
 
TBranchfMother
 Pointer to Tree header. More...
 
TBranchfParent
 Pointer to top-level parent branch in the tree. More...
 
char * fAddress
 Pointer to parent branch. More...
 
TDirectoryfDirectory
 Address of 1st leaf (variable or object) More...
 
TString fFileName
 Pointer to directory where this branch buffers are stored. More...
 
TBufferfEntryBuffer
 
TListfBrowsables
 Buffer used to directly pass the content without streaming. More...
 
Bool_t fSkipZip
 List of TVirtualBranchBrowsables used for Browse() More...
 
ReadLeaves_t fReadLeaves
 
FillLeaves_t fFillLeaves
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 
Style_t fFillStyle
 

Static Protected Attributes

static Int_t fgCount = 0
 

Private Member Functions

Int_t FillEntryBuffer (TBasket *basket, TBuffer *buf, Int_t &lnew)
 Copy the data from fEntryBuffer into the current basket. More...
 
 TBranch (const TBranch &)
 
TBranchoperator= (const TBranch &)
 

Friends

class TTreeCloner
 

Additional Inherited Members

- Public Types inherited from TObject
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) }
 

#include <TBranch.h>

Inheritance diagram for TBranch:
[legend]

Member Typedef Documentation

typedef void(TBranch::* TBranch::FillLeaves_t)(TBuffer &b)
protected

Pointer to the ReadLeaves implementation to use.

Definition at line 107 of file TBranch.h.

typedef void(TBranch::* TBranch::ReadLeaves_t)(TBuffer &b)
protected

After being read, the buffer will not be unziped.

Definition at line 105 of file TBranch.h.

Member Enumeration Documentation

enum TBranch::EStatusBits
protected
Enumerator
kAutoDelete 
kDoNotUseBufferMap 

Definition at line 63 of file TBranch.h.

Constructor & Destructor Documentation

TBranch::TBranch ( const TBranch )
private
TBranch::TBranch ( )

Referenced by TBranchClones::Init().

TBranch::TBranch ( TTree tree,
const char *  name,
void address,
const char *  leaflist,
Int_t  basketsize = 32000,
Int_t  compress = -1 
)

Create a Branch as a child of a Tree.

  • address is the address of the first item of a structure or the address of a pointer to an object (see example in TTree.cxx).
  • leaflist is the concatenation of all the variable names and types separated by a colon character : The variable name and the variable type are separated by a slash (/). The variable type must be 1 character. (Characters after the first are legal and will be appended to the visible name of the leaf, but have no effect.) If no type is given, the type of the variable is assumed to be the same as the previous variable. If the first variable does not have a type, it is assumed of type F by default. The list of currently supported types is given below:

    • C : a character string terminated by the 0 character
    • B : an 8 bit signed integer (Char_t)
    • b : an 8 bit unsigned integer (UChar_t)
    • S : a 16 bit signed integer (Short_t)
    • s : a 16 bit unsigned integer (UShort_t)
    • I : a 32 bit signed integer (Int_t)
    • i : a 32 bit unsigned integer (UInt_t)
    • F : a 32 bit floating point (Float_t)
    • D : a 64 bit floating point (Double_t)
    • L : a 64 bit signed integer (Long64_t)
    • l : a 64 bit unsigned integer (ULong64_t)
    • O : [the letter 'o', not a zero] a boolean (Bool_t)

    Arrays of values are supported with the following syntax:

    • If leaf name has the form var[nelem], where nelem is alphanumeric, then if nelem is a leaf name, it is used as the variable size of the array, otherwise return 0. The leaf referred to by nelem MUST be an int (/I),
    • If leaf name has the form var[nelem], where nelem is a non-negative integers, then it is used as the fixed size of the array.
    • If leaf name has the form of a multi dimension array (e.g. var[nelem][nelem2]) where nelem and nelem2 are non-negative integers) then it is used as a 2 dimensional array of fixed size.
    • Any of other form is not supported.

Note that the TTree will assume that all the item are contiguous in memory. On some platform, this is not always true of the member of a struct or a class, due to padding and alignment. Sorting your data member in order of decreasing sizeof usually leads to their being contiguous in memory.

  • bufsize is the buffer size in bytes for this branch The default value is 32000 bytes and should be ok for most cases. You can specify a larger value (e.g. 256000) if your Tree is not split and each entry is large (Megabytes) A small value for bufsize is optimum if you intend to access the entries in the Tree randomly and your Tree is in split mode.

See an example of a Branch definition in the TTree constructor.

Note that in case the data type is an object, this branch can contain only this object.

Note that this function is invoked by TTree::Branch

Definition at line 183 of file TBranch.cxx.

TBranch::TBranch ( TBranch parent,
const char *  name,
void address,
const char *  leaflist,
Int_t  basketsize = 32000,
Int_t  compress = -1 
)

Create a Branch as a child of another Branch.

See documentation for TBranch::TBranch(TTree *, const char *, void *, const char *, Int_t, Int_t)

Definition at line 232 of file TBranch.cxx.

TBranch::~TBranch ( )
virtual

Destructor.

Definition at line 411 of file TBranch.cxx.

Member Function Documentation

void TBranch::AddBasket ( TBasket b,
Bool_t  ondisk,
Long64_t  startEntry 
)
virtual

Add the basket to this branch.

Definition at line 477 of file TBranch.cxx.

Referenced by TTreeCloner::CopyMemoryBaskets(), and TTreeCloner::WriteBaskets().

void TBranch::AddLastBasket ( Long64_t  startEntry)
virtual

Add the start entry of the write basket (not yet created)

Definition at line 550 of file TBranch.cxx.

Referenced by TTreeCloner::CopyMemoryBaskets().

void TBranch::Browse ( TBrowser b)
virtual

Browser interface.

Reimplemented from TObject.

Reimplemented in TBranchElement, TBranchClones, TBranchObject, THbookBranch, and TBranchSTL.

Definition at line 570 of file TBranch.cxx.

Referenced by THbookBranch::Browse().

TBranch::ClassDef ( TBranch  ,
12   
)
void TBranch::DeleteBaskets ( Option_t option = "")
virtual

Loop on all branch baskets.

If the file where branch buffers reside is writable, free the disk space associated to the baskets of the branch, then call Reset(). If the option contains "all", delete also the baskets for the subbranches. The branch is reset. NOTE that this function must be used with extreme care. Deleting branch baskets fragments the file and may introduce inefficiencies when adding new entries in the Tree or later on when reading the Tree.

Definition at line 596 of file TBranch.cxx.

Referenced by DeleteBaskets().

void TBranch::DropBaskets ( Option_t options = "")
virtual

Loop on all branch baskets.

Drop all baskets from memory except readbasket. If the option contains "all", drop all baskets including read- and write-baskets (unless they are not stored individually on disk). The option "all" also lead to DropBaskets being called on the sub-branches.

Definition at line 627 of file TBranch.cxx.

Referenced by DeleteBaskets(), DropBaskets(), TTree::DropBaskets(), and GetFreshBasket().

void TBranch::ExpandBasketArrays ( )

Increase BasketEntry buffer of a minimum of 10 locations and a maximum of 50 per cent of current size.

Definition at line 695 of file TBranch.cxx.

Referenced by AddBasket(), AddLastBasket(), and WriteBasket().

Int_t TBranch::Fill ( )
virtual

Loop on all leaves of this branch to fill Basket buffer.

The function returns the number of bytes committed to the memory basket. If a write error occurs, the number of bytes returned is -1. If no data are written, because e.g. the branch is disabled, the number of bytes returned is 0.

Reimplemented in TBranchElement, TBranchClones, TBranchRef, TBranchObject, and TBranchSTL.

Definition at line 724 of file TBranch.cxx.

Referenced by TBranchSTL::Fill(), TBranchObject::Fill(), TBranchRef::Fill(), TBranchClones::Fill(), TBranchElement::Fill(), TTree::Fill(), FillEntryBuffer(), RooAbsString::fillTreeBranch(), RooAbsCategory::fillTreeBranch(), and RooAbsReal::fillTreeBranch().

Int_t TBranch::FillEntryBuffer ( TBasket basket,
TBuffer buf,
Int_t lnew 
)
private

Copy the data from fEntryBuffer into the current basket.

Definition at line 795 of file TBranch.cxx.

Referenced by Fill().

void TBranch::FillLeavesImpl ( TBuffer b)
protected

Loop on all leaves of this branch to fill Basket buffer.

Definition at line 1863 of file TBranch.cxx.

Referenced by ClassImp(), and TBranchSTL::TBranchSTL().

TBranch * TBranch::FindBranch ( const char *  name)
virtual

Find the immediate sub-branch with passed name.

Reimplemented in TBranchElement.

Definition at line 894 of file TBranch.cxx.

Referenced by TBranchElement::FindBranch(), TTree::FindBranch(), TTreeFormula::FindLeafForExpression(), and R__FindBranchHelper().

TLeaf * TBranch::FindLeaf ( const char *  name)
virtual

Find the leaf corresponding to the name 'searchname'.

Reimplemented in TBranchElement.

Definition at line 940 of file TBranch.cxx.

Referenced by TBranchElement::FindLeaf(), and TTreeFormula::FindLeafForExpression().

Int_t TBranch::FlushBaskets ( )

Flush to disk all the baskets of this branch and any of subbranches.

Return the number of bytes written or -1 in case of write error.

Definition at line 995 of file TBranch.cxx.

Referenced by FlushBaskets(), and TTree::FlushBaskets().

Int_t TBranch::FlushOneBasket ( UInt_t  ibasket)

If we have a write basket in memory and it contains some entries and has not yet been written to disk, we write it and delete it from memory.

Return the number of bytes written;

Definition at line 1041 of file TBranch.cxx.

Referenced by TTreeCloner::CloseOutWriteBaskets(), FlushBaskets(), and TTreeCloner::WriteBaskets().

virtual char* TBranch::GetAddress ( ) const
inlinevirtual
TBasket * TBranch::GetBasket ( Int_t  basket)

Return pointer to basket basketnumber in this Branch.

Definition at line 1082 of file TBranch.cxx.

Referenced by TTreeSQL::CheckBasket(), TTreeSQL::CheckBranch(), TTreeCloner::CopyMemoryBaskets(), Fill(), GetEntry(), GetEntryExport(), TLeafC::ReadBasket(), and TTreeCloner::WriteBaskets().

Int_t* TBranch::GetBasketBytes ( ) const
inline
Long64_t* TBranch::GetBasketEntry ( ) const
inline
Long64_t TBranch::GetBasketSeek ( Int_t  basket) const
virtual
virtual Int_t TBranch::GetBasketSize ( ) const
inlinevirtual
TList * TBranch::GetBrowsables ( )
virtual

Returns (and, if 0, creates) browsable objects for this branch See TVirtualBranchBrowsable::FillListOfBrowsables.

Definition at line 1154 of file TBranch.cxx.

Referenced by TBranchObject::Browse(), TBranchElement::Browse(), TBranchObject::IsFolder(), IsFolder(), and TBranchElement::IsFolder().

const char * TBranch::GetClassName ( ) const
virtual

Return the name of the user class whose content is stored in this branch, if any.

If this branch was created using the 'leaflist' technique, this function returns an empty string.

Reimplemented in TBranchElement, TBranchClones, TBranchObject, and TBranchSTL.

Definition at line 1166 of file TBranch.cxx.

Referenced by ROOT::Internal::TTreeProxyGenerator::AnalyzeBranches(), ROOT::Internal::TTreeReaderGenerator::AnalyzeBranches(), ROOT::Internal::TTreeReaderArrayBase::GetBranchContentDataType(), ROOT::Internal::TTreeReaderValueBase::GetBranchDataType(), TTreePlayer::MakeClass(), and PyROOT::TTreeGetAttr().

Int_t TBranch::GetCompressionAlgorithm ( ) const
inline

Definition at line 226 of file TBranch.h.

Referenced by TBasket::WriteBuffer().

Int_t TBranch::GetCompressionLevel ( ) const
inline
Int_t TBranch::GetCompressionSettings ( ) const
inline

Definition at line 238 of file TBranch.h.

TDirectory* TBranch::GetDirectory ( ) const
inline
Long64_t TBranch::GetEntries ( ) const
inline
Int_t TBranch::GetEntry ( Long64_t  entry = 0,
Int_t  getall = 0 
)
virtual

Read all leaves of entry and return total number of bytes read.

The input argument "entry" is the entry number in the current tree. In case of a TChain, the entry number in the current Tree must be found before calling this function. For example:

TChain* chain = ...;
Long64_t localEntry = chain->LoadTree(entry);
branch->GetEntry(localEntry);

The function returns the number of bytes read from the input buffer. If entry does not exist, the function returns 0. If an I/O error occurs, the function returns -1.

See IMPORTANT REMARKS in TTree::GetEntry.

Reimplemented in TBranchElement, TBranchClones, TBranchObject, THbookBranch, and TBranchSTL.

Definition at line 1199 of file TBranch.cxx.

Referenced by ROOT::Internal::TTreeProxyGenerator::AnalyzeElement(), FillUnBinData(), TVirtualBranchBrowsable::GetCollectionContainedType(), TBranchSTL::GetEntry(), TBranchObject::GetEntry(), TBranchClones::GetEntry(), TBranchElement::GetEntry(), TTree::GetEntry(), TTree::GetEntryWithIndex(), GetEvent(), TTree::GetMaximum(), TTree::GetMinimum(), TRefProxy::GetObject(), TBranchRef::Notify(), TSelEvent::Process(), ROOT::Detail::TBranchProxy::Read(), TLeafD::ReadBasket(), TLeafF::ReadBasket(), TLeafO::ReadBasket(), TLeafS::ReadBasket(), TLeafB::ReadBasket(), TLeafI::ReadBasket(), TLeafL::ReadBasket(), TBranchElement::ReadLeavesCollection(), TBranchElement::ReadLeavesMakeClass(), StockReturn(), and tv3Read2().

Int_t TBranch::GetEntryExport ( Long64_t  entry,
Int_t  getall,
TClonesArray li,
Int_t  nentries 
)
virtual

Read all leaves of an entry and export buffers to real objects in a TClonesArray list.

Returns total number of bytes read.

Definition at line 1291 of file TBranch.cxx.

Referenced by TBranchClones::GetEntry().

Long64_t TBranch::GetEntryNumber ( ) const
inline

Definition at line 174 of file TBranch.h.

Int_t TBranch::GetEntryOffsetLen ( ) const
inline
Int_t TBranch::GetEvent ( Long64_t  entry = 0)
inline

Definition at line 161 of file TBranch.h.

Int_t TBranch::GetExpectedType ( TClass *&  expectedClass,
EDataType expectedType 
)
virtual

Fill expectedClass and expectedType with information on the data type of the object/values contained in this branch (and thus the type of pointers expected to be passed to Set[Branch]Address return 0 in case of success and > 0 in case of failure.

Reimplemented in TBranchElement, TBranchObject, and TBranchSTL.

Definition at line 1363 of file TBranch.cxx.

Referenced by TTree::CheckBranchAddressType().

TFile * TBranch::GetFile ( Int_t  mode = 0)
virtual

Return pointer to the file where branch buffers reside, returns 0 in case branch buffers reside in the same file as tree header.

If mode is 1 the branch buffer file is recreated.

Definition at line 1382 of file TBranch.cxx.

Referenced by TTree::Delete(), DeleteBaskets(), GetBasket(), GetEntry(), LoadBaskets(), TBasket::TBasket(), TTreeCloner::WriteBaskets(), and TBasket::WriteBuffer().

const char* TBranch::GetFileName ( ) const
inline

Definition at line 166 of file TBranch.h.

Long64_t TBranch::GetFirstEntry ( ) const
inline

Definition at line 175 of file TBranch.h.

TBasket * TBranch::GetFreshBasket ( )
protected

Return a fresh basket by either resusing an existing basket that needs to be drop (according to TTree::MemoryFull) or create a new one.

Definition at line 1417 of file TBranch.cxx.

Referenced by GetBasket(), and LoadBaskets().

const char * TBranch::GetIconName ( ) const
virtual

Return icon name depending on type of branch.

Reimplemented from TObject.

Reimplemented in TBranchElement.

Definition at line 1174 of file TBranch.cxx.

TLeaf * TBranch::GetLeaf ( const char *  name) const
virtual
TObjArray* TBranch::GetListOfBaskets ( )
inline
TObjArray* TBranch::GetListOfBranches ( )
inline
TObjArray* TBranch::GetListOfLeaves ( )
inline
Bool_t TBranch::GetMakeClass ( ) const
virtual

Return whether this branch is in a mode where the object are decomposed or not (Also known as MakeClass mode).

Reimplemented in TBranchElement.

Definition at line 1523 of file TBranch.cxx.

Int_t TBranch::GetMaxBaskets ( ) const
inline
TBranch * TBranch::GetMother ( ) const
Int_t TBranch::GetNleaves ( ) const
inline
Int_t TBranch::GetOffset ( ) const
inline
Int_t TBranch::GetReadBasket ( ) const
inline

Definition at line 168 of file TBranch.h.

Referenced by TTree::DropBuffers(), and TLeafC::ReadBasket().

Long64_t TBranch::GetReadEntry ( ) const
inline
TString TBranch::GetRealFileName ( ) const
protected

Get real file name.

Definition at line 1473 of file TBranch.cxx.

Referenced by GetFile(), and ~TBranch().

Int_t TBranch::GetRow ( Int_t  row)
virtual

Return all elements of one row unpacked in internal array fValues [Actually just returns 1 (?)].

Definition at line 1514 of file TBranch.cxx.

Int_t TBranch::GetSplitLevel ( ) const
inline
TBranch * TBranch::GetSubBranch ( const TBranch child) const
Long64_t TBranch::GetTotalSize ( Option_t option = "") const

Return total number of bytes in the branch (including current buffer)

Definition at line 1592 of file TBranch.cxx.

Referenced by Print().

Long64_t TBranch::GetTotBytes ( Option_t option = "") const

Return total number of bytes in the branch (excluding current buffer) if option ="*" includes all sub-branches of this branch too.

Definition at line 1618 of file TBranch.cxx.

Referenced by GetTotBytes(), TTree::OptimizeBaskets(), and TBasket::Reset().

TTree* TBranch::GetTree ( ) const
inline
Int_t TBranch::GetWriteBasket ( ) const
inline
Long64_t TBranch::GetZipBytes ( Option_t option = "") const

Return total number of zip bytes in the branch if option ="*" includes all sub-branches of this branch too.

Definition at line 1636 of file TBranch.cxx.

Referenced by TFileDrawMap::AnimateTree(), GetZipBytes(), TTree::OptimizeBaskets(), and TTree::Print().

void TBranch::Init ( const char *  name,
const char *  leaflist,
Int_t  compress 
)
protected

Definition at line 275 of file TBranch.cxx.

Referenced by TBranch().

Bool_t TBranch::IsAutoDelete ( ) const

Return kTRUE if an existing object in a TBranchObject must be deleted.

Definition at line 1653 of file TBranch.cxx.

Referenced by TBranchElement::GetEntry(), TLeafObject::ReadBasket(), and TBranchElement::ReleaseObject().

Bool_t TBranch::IsFolder ( ) const
virtual

Return kTRUE if more than one leaf or browsables, kFALSE otherwise.

Reimplemented from TObject.

Reimplemented in TBranchElement, TBranchClones, TBranchObject, and TBranchSTL.

Definition at line 1661 of file TBranch.cxx.

Referenced by TBranchElement::Browse(), and GetIconName().

void TBranch::KeepCircular ( Long64_t  maxEntries)
virtual

keep a maximum of fMaxEntries in memory

Definition at line 1673 of file TBranch.cxx.

Referenced by TTree::KeepCircular(), and KeepCircular().

Int_t TBranch::LoadBaskets ( )
virtual

Baskets associated to this branch are forced to be in memory.

You can call TTree::SetMaxVirtualSize(maxmemory) to instruct the system that the total size of the imported baskets does not exceed maxmemory bytes. The function returns the number of baskets that have been put in memory. This method may be called to force all baskets of one or more branches in memory when random access to entries in this branch is required. See also TTree::LoadBaskets to load all baskets of all branches in memory.

Definition at line 1698 of file TBranch.cxx.

Referenced by TTree::LoadBaskets().

TBranch& TBranch::operator= ( const TBranch )
private
void TBranch::Print ( Option_t option = "") const
virtual
void TBranch::ReadBasket ( TBuffer b)
virtual

Loop on all leaves of this branch to read Basket buffer.

Definition at line 1820 of file TBranch.cxx.

Referenced by ReadLeaves1Impl(), and ReadLeaves2Impl().

void TBranch::ReadLeaves0Impl ( TBuffer b)
protected

Read zero leaves without the overhead of a loop.

Definition at line 1839 of file TBranch.cxx.

void TBranch::ReadLeaves1Impl ( TBuffer b)
protected

Read one leaf without the overhead of a loop.

Definition at line 1846 of file TBranch.cxx.

void TBranch::ReadLeaves2Impl ( TBuffer b)
protected

Read two leaves without the overhead of a loop.

Definition at line 1854 of file TBranch.cxx.

void TBranch::ReadLeavesImpl ( TBuffer b)
protected

Pointer to the FillLeaves implementation to use.

Loop on all leaves of this branch to read Basket buffer.

Definition at line 1828 of file TBranch.cxx.

Referenced by ClassImp(), and TBranchSTL::TBranchSTL().

void TBranch::Refresh ( TBranch b)
virtual

Refresh this branch using new information in b This function is called by TTree::Refresh.

Definition at line 1875 of file TBranch.cxx.

Referenced by TTree::Refresh().

void TBranch::Reset ( Option_t option = "")
virtual

Reset a Branch.

  • Existing buffers are deleted.
  • Entries, max and min are reset.

Reimplemented in TBranchElement, TBranchClones, TBranchObject, and TBranchRef.

Definition at line 1924 of file TBranch.cxx.

Referenced by DeleteBaskets(), TBranchObject::Reset(), TBranchRef::Reset(), TBranchClones::Reset(), TBranchElement::Reset(), and TTree::Reset().

void TBranch::ResetAddress ( )
virtual

Reset the address of the branch.

Reimplemented in TBranchElement.

Definition at line 2018 of file TBranch.cxx.

Referenced by TTreeSQL::CreateBranches(), ResetAddress(), TBranchElement::ResetAddress(), TTree::ResetBranchAddress(), and TTree::ResetBranchAddresses().

void TBranch::ResetAfterMerge ( TFileMergeInfo )
virtual

Reset a Branch.

  • Existing buffers are deleted.
  • Entries, max and min are reset.

Reimplemented in TBranchElement, TBranchClones, TBranchObject, and TBranchRef.

Definition at line 1965 of file TBranch.cxx.

Referenced by TBranchObject::ResetAfterMerge(), TBranchRef::ResetAfterMerge(), TBranchClones::ResetAfterMerge(), TBranchElement::ResetAfterMerge(), and TTree::ResetAfterMerge().

void TBranch::ResetCount ( )
static

Static function resetting fgCount.

Definition at line 2041 of file TBranch.cxx.

Referenced by TTree::Print().

virtual void TBranch::ResetReadEntry ( )
inlinevirtual

Definition at line 198 of file TBranch.h.

Referenced by TTreeFormula::LoadCurrentDim(), and TTreeFormula::UpdateFormulaLeaves().

void TBranch::SetAddress ( void add)
virtual
void TBranch::SetAutoDelete ( Bool_t  autodel = kTRUE)
virtual

Set the automatic delete bit.

This bit is used by TBranchObject::ReadBasket to decide if an object referenced by a TBranchObject must be deleted or not before reading a new entry.

If autodel is kTRUE, this existing object will be deleted, a new object created by the default constructor, then read from disk by the streamer.

If autodel is kFALSE, the existing object is not deleted. Root assumes that the user is taking care of deleting any internal object or array (this can be done in the streamer).

Reimplemented in TBranchObject.

Definition at line 2083 of file TBranch.cxx.

Referenced by TBranchElement::Init(), TChain::LoadTree(), and TBranchObject::SetAutoDelete().

void TBranch::SetBasketSize ( Int_t  buffsize)
virtual

Set the basket size The function makes sure that the basket size is greater than fEntryOffsetlen.

Reimplemented in TBranchElement, TBranchClones, and TBranchObject.

Definition at line 2096 of file TBranch.cxx.

Referenced by TChain::Merge(), TTree::OptimizeBaskets(), TBranchObject::SetBasketSize(), TBranchClones::SetBasketSize(), TBranchElement::SetBasketSize(), and TTree::SetBasketSize().

void TBranch::SetBufferAddress ( TBuffer buf)
virtual

Set address of this branch directly from a TBuffer to avoid streaming.

Note: We do not take ownership of the buffer.

Definition at line 2112 of file TBranch.cxx.

void TBranch::SetCompressionAlgorithm ( Int_t  algorithm = 0)

Set compression algorithm.

Definition at line 2130 of file TBranch.cxx.

Referenced by SetCompressionAlgorithm().

void TBranch::SetCompressionLevel ( Int_t  level = 1)

Set compression level.

Definition at line 2150 of file TBranch.cxx.

Referenced by RooAbsString::attachToTree(), RooAbsCategory::attachToTree(), RooAbsReal::attachToTree(), and SetCompressionLevel().

void TBranch::SetCompressionSettings ( Int_t  settings = 1)

Set compression settings.

Definition at line 2172 of file TBranch.cxx.

Referenced by TTree::CloneTree(), TChain::Merge(), TTree::OptimizeBaskets(), TTree::SetCircular(), and SetCompressionSettings().

void TBranch::SetEntries ( Long64_t  entries)
virtual

Set the number of entries in this branch.

Reimplemented in THbookBranch.

Definition at line 2205 of file TBranch.cxx.

Referenced by TTreeCloner::CopyMemoryBaskets(), and TTreeSQL::CreateBranches().

void TBranch::SetEntryOffsetLen ( Int_t  newdefault,
Bool_t  updateExisting = kFALSE 
)
virtual

Update the default value for the branch's fEntryOffsetLen if and only if it was already non zero (and the new value is not zero) If updateExisting is true, also update all the existing branches.

Definition at line 2188 of file TBranch.cxx.

Referenced by TTree::SetDefaultEntryOffsetLen(), SetEntryOffsetLen(), and TBasket::Update().

void TBranch::SetFile ( TFile file = 0)
virtual

Set file where this branch writes/reads its buffers.

By default the branch buffers reside in the file where the Tree was created. If the file name where the tree was created is an absolute path name or an URL (e.g. /castor/... or root://host/...) and if the fname is not an absolute path name or an URL then the path of the tree file is prepended to fname to make the branch file relative to the tree file. In this case one can move the tree + all branch files to a different location in the file system and still access the branch files. The ROOT file will be connected only when necessary. If called by TBranch::Fill (via TBasket::WriteFile), the file will be created with the option "recreate". If called by TBranch::GetEntry (via TBranch::GetBasket), the file will be opened in read mode. To open a file in "update" mode or with a certain compression level, use TBranch::SetFile(TFile *file).

Definition at line 2230 of file TBranch.cxx.

Referenced by TTree::ChangeFile(), TTree::SetDirectory(), and SetFile().

void TBranch::SetFile ( const char *  fname)
virtual

Set file where this branch writes/reads its buffers.

By default the branch buffers reside in the file where the Tree was created. If the file name where the tree was created is an absolute path name or an URL (e.g. /castor/... or root://host/...) and if the fname is not an absolute path name or an URL then the path of the tree file is prepended to fname to make the branch file relative to the tree file. In this case one can move the tree + all branch files to a different location in the file system and still access the branch files. The ROOT file will be connected only when necessary. If called by TBranch::Fill (via TBasket::WriteFile), the file will be created with the option "recreate". If called by TBranch::GetEntry (via TBranch::GetBasket), the file will be opened in read mode. To open a file in "update" mode or with a certain compression level, use TBranch::SetFile(TFile *file).

Definition at line 2275 of file TBranch.cxx.

void TBranch::SetFirstEntry ( Long64_t  entry)
virtual

set the first entry number (case of TBranchSTL)

Definition at line 2619 of file TBranch.cxx.

Referenced by TBranchSTL::Fill().

Bool_t TBranch::SetMakeClass ( Bool_t  decomposeObj = kTRUE)
virtual

Set the branch in a mode where the object are decomposed (Also known as MakeClass mode).

Return whether the setting was possible (it is not possible for TBranch and TBranchObject).

Reimplemented in TBranchElement.

Definition at line 2294 of file TBranch.cxx.

Referenced by TTree::SetMakeClass().

void TBranch::SetObject ( void objadd)
virtual

Set object this branch is pointing to.

Reimplemented in TBranchElement.

Definition at line 2303 of file TBranch.cxx.

Referenced by TTree::BronchExec().

virtual void TBranch::SetOffset ( Int_t  offset = 0)
inlinevirtual

Reimplemented in TBranchElement.

Definition at line 213 of file TBranch.h.

Referenced by TTree::BranchOld().

void TBranch::SetSkipZip ( Bool_t  skip = kTRUE)
inlineprotected

Definition at line 115 of file TBranch.h.

void TBranch::SetStatus ( Bool_t  status = 1)
virtual

Set branch status to Process or DoNotProcess.

Definition at line 2314 of file TBranch.cxx.

virtual void TBranch::SetTree ( TTree tree)
inlinevirtual

Reimplemented in TBranchClones.

Definition at line 215 of file TBranch.h.

Referenced by TBranchClones::SetTree(), and TBranch__SetTree().

void TBranch::SetupAddresses ( )
virtual

If the branch address is not set, we set all addresses starting with the top level parent branch.

Reimplemented in TBranchElement, and TBranchObject.

Definition at line 2634 of file TBranch.cxx.

Referenced by TTree::CopyAddresses().

virtual void TBranch::UpdateAddress ( )
inlinevirtual

Reimplemented in TBranchObject.

Definition at line 217 of file TBranch.h.

Referenced by TTree::Fill().

void TBranch::UpdateFile ( )
virtual

Refresh the value of fDirectory (i.e.

where this branch writes/reads its buffers) with the current value of fTree->GetCurrentFile unless this branch has been redirected to a different file. Also update the sub-branches.

Reimplemented in TBranchElement, and TBranchClones.

Definition at line 2644 of file TBranch.cxx.

Referenced by TTree::DirectoryAutoAdd(), TBranchClones::UpdateFile(), UpdateFile(), and TBranchElement::UpdateFile().

Int_t TBranch::WriteBasket ( TBasket basket,
Int_t  where 
)
protected

Write the current basket to disk and return the number of bytes written to the file.

Definition at line 2558 of file TBranch.cxx.

Referenced by Fill(), FillEntryBuffer(), and FlushOneBasket().

Friends And Related Function Documentation

friend class TTreeCloner
friend

Definition at line 61 of file TBranch.h.

Member Data Documentation

char* TBranch::fAddress
protected
Int_t* TBranch::fBasketBytes
protected
Long64_t* TBranch::fBasketEntry
protected
TObjArray TBranch::fBaskets
protected
Long64_t* TBranch::fBasketSeek
protected
Int_t TBranch::fBasketSize
protected
TObjArray TBranch::fBranches
protected

Definition at line 88 of file TBranch.h.

Referenced by TBranchSTL::Browse(), TBranchObject::Browse(), TBranchClones::Browse(), TBranchElement::Browse(), TBranchElement::BuildTitle(), TBranchSTL::Fill(), TBranchObject::Fill(), TBranchClones::Fill(), TBranchElement::Fill(), FindBranch(), TBranchElement::FindBranch(), FlushBaskets(), TBranchSTL::GetEntry(), TBranchObject::GetEntry(), TBranchClones::GetEntry(), TBranchElement::GetEntry(), GetListOfBranches(), GetSubBranch(), GetTotBytes(), GetZipBytes(), TBranchClones::Init(), TBranchElement::Init(), TBranchElement::InitializeOffsets(), TBranchSTL::IsFolder(), TBranchObject::IsFolder(), TBranchElement::IsFolder(), KeepCircular(), TBranchSTL::Print(), TBranchObject::Print(), TBranchClones::Print(), TBranchElement::Print(), TBranchElement::ReadLeavesCollection(), TBranchElement::ReadLeavesMakeClass(), TBranchObject::Reset(), TBranchClones::Reset(), TBranchElement::Reset(), ResetAddress(), TBranchElement::ResetAddress(), TBranchObject::ResetAfterMerge(), TBranchClones::ResetAfterMerge(), TBranchElement::ResetAfterMerge(), TBranchElement::ResetDeleteObject(), TBranchObject::SetAddress(), TBranchElement::SetAddress(), TBranchObject::SetAutoDelete(), TBranchObject::SetBasketSize(), TBranchClones::SetBasketSize(), TBranchElement::SetBasketSize(), SetCompressionAlgorithm(), SetCompressionLevel(), SetCompressionSettings(), SetFirstEntry(), TBranchElement::SetMakeClass(), TBranchElement::SetTargetClass(), TBranchElement::Unroll(), ~TBranch(), TBranchClones::~TBranchClones(), and TBranchObject::~TBranchObject().

TList* TBranch::fBrowsables
protected

Buffer used to directly pass the content without streaming.

Definition at line 101 of file TBranch.h.

Referenced by GetBrowsables(), and ~TBranch().

Int_t TBranch::fCompress
protected
TBasket* TBranch::fCurrentBasket
protected

Next entry that will requires us to go to the next basket.

Definition at line 83 of file TBranch.h.

Referenced by DropBaskets(), FlushOneBasket(), GetEntry(), GetEntryExport(), GetFreshBasket(), Refresh(), Reset(), ResetAfterMerge(), WriteBasket(), and ~TBranch().

TDirectory* TBranch::fDirectory
protected
Long64_t TBranch::fEntries
protected
TBuffer* TBranch::fEntryBuffer
protected

Definition at line 100 of file TBranch.h.

Referenced by Fill(), FillEntryBuffer(), SetBufferAddress(), and ~TBranch().

Long64_t TBranch::fEntryNumber
protected
Int_t TBranch::fEntryOffsetLen
protected
TString TBranch::fFileName
protected

Pointer to directory where this branch buffers are stored.

Definition at line 99 of file TBranch.h.

Referenced by GetFile(), GetFileName(), GetRealFileName(), TBranchObject::Init(), TBranchClones::Init(), TBranchElement::Init(), SetFile(), TBranchRef::TBranchRef(), TBranchSTL::TBranchSTL(), and UpdateFile().

FillLeaves_t TBranch::fFillLeaves
protected
Long64_t TBranch::fFirstBasketEntry
protected
Long64_t TBranch::fFirstEntry
protected

Definition at line 85 of file TBranch.h.

Referenced by TBranchSTL::GetEntry(), GetEntry(), GetFirstEntry(), and SetFirstEntry().

Int_t TBranch::fgCount = 0
staticprotected

Definition at line 68 of file TBranch.h.

Referenced by Print(), and ResetCount().

TObjArray TBranch::fLeaves
protected
Int_t TBranch::fMaxBaskets
protected
TBranch* TBranch::fMother
protected
Int_t TBranch::fNBaskets
protected
Long64_t TBranch::fNextBasketEntry
protected
Int_t TBranch::fNleaves
protected
Int_t TBranch::fOffset
protected
TBranch* TBranch::fParent
protected

Pointer to top-level parent branch in the tree.

Definition at line 96 of file TBranch.h.

Referenced by GetSubBranch(), TBranchObject::Init(), TBranchClones::Init(), TBranchElement::Init(), and TBranchElement::InitializeOffsets().

Int_t TBranch::fReadBasket
protected
Long64_t TBranch::fReadEntry
protected
ReadLeaves_t TBranch::fReadLeaves
protected
Bool_t TBranch::fSkipZip
protected

List of TVirtualBranchBrowsables used for Browse()

Definition at line 103 of file TBranch.h.

Referenced by Fill(), GetBasket(), and SetSkipZip().

Int_t TBranch::fSplitLevel
protected
Long64_t TBranch::fTotBytes
protected
TTree* TBranch::fTree
protected
Int_t TBranch::fWriteBasket
protected
Long64_t TBranch::fZipBytes
protected
Collaboration diagram for TBranch:
[legend]

The documentation for this class was generated from the following files: