TBranchElement
class description - source file - inheritance tree
public:
TBranchElement TBranchElement()
TBranchElement TBranchElement(const char* name, TStreamerInfo* sinfo, Int_t id, char* pointer, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t btype = 0)
TBranchElement TBranchElement(const char* name, TClonesArray* clones, Int_t basketsize = 32000, Int_t splitlevel = 0, Int_t compress = -1)
TBranchElement TBranchElement(TBranchElement&)
virtual void ~TBranchElement()
virtual void Browse(TBrowser* b)
void BuildTitle(const char* name)
static TClass* Class()
virtual Int_t Fill()
virtual void FillLeaves(TBuffer& b)
TBranchElement* GetBranchCount() const
TBranchElement* GetBranchCount2() const
virtual const char* GetClassName() const
virtual Int_t GetEntry(Int_t entry = 0, Int_t getall = 0)
Int_t GetID() const
TStreamerInfo* GetInfo()
virtual Int_t GetMaximum() const
TBranchElement* GetMother() const
Int_t GetNdata() const
char* GetObject() const
virtual const char* GetParentName() const
Int_t GetStreamerType() const
TBranchElement* GetSubBranch(const TBranchElement* br) const
Int_t GetType() const
virtual const char* GetTypeName() const
Double_t GetValue(Int_t i, Int_t len, Bool_t subarr = kFALSE) const
virtual void* GetValuePointer() const
virtual TClass* IsA() const
Bool_t IsBranchFolder() const
virtual Bool_t IsFolder() const
virtual Bool_t Notify()
virtual void Print(Option_t* option) const
void PrintValue(Int_t i) const
virtual void ReadLeaves(TBuffer& b)
virtual void Reset(Option_t* option)
virtual void SetAddress(void* addobj)
virtual void SetAutoDelete(Bool_t autodel = kTRUE)
virtual void SetBasketSize(Int_t buffsize)
virtual void SetBranchCount(TBranchElement* bre)
virtual void SetBranchCount2(TBranchElement* bre)
virtual void SetBranchFolder()
virtual void SetClassName(const char* name)
virtual void SetParentName(const char* name)
virtual void SetType(Int_t btype)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
virtual Int_t Unroll(const char* name, TClass* cltop, TClass* cl, Int_t basketsize, Int_t splitlevel, Int_t btype)
private:
protected:
TString fClassName Class name of referenced object
TString fParentName Name of parent class
TString fClonesName Name of class in TClonesArray (if any)
Int_t fClassVersion Version number of class
Int_t fID element serial number in fInfo
Int_t fType branch type
Int_t fStreamerType branch streamer type
Int_t fMaximum Maximum entries for a TClonesArray or variable array
Int_t fNdata !Number of data in this branch
TBranchElement* fBranchCount pointer to primary branchcount branch
TBranchElement* fBranchCount2 pointer to secondary branchcount branch
TStreamerInfo* fInfo !Pointer to StreamerInfo
char* fObject !Pointer to object at *fAddress
char* fBranchPointer !Pointer to object for a master branch
public:
static const enum TBranchElement:: kWarn
static const enum TBranchElement:: kBranchFolder
static const enum TBranchElement:: kDeleteObject
TBranchElement
A Branch for the case of an object
TBranchElement(): TBranch()
*-*-*-*-*-*Default constructor for BranchElement*-*-*-*-*-*-*-*-*-*
*-* ====================================
TBranchElement(const char *bname, TStreamerInfo *sinfo, Int_t id, char *pointer, Int_t basketsize, Int_t splitlevel, Int_t btype)
:TBranch()
Create a BranchElement
If splitlevel > 0 this branch in turn is split into sub branches
TBranchElement(const char *bname, TClonesArray *clones, Int_t basketsize, Int_t splitlevel, Int_t compress)
:TBranch()
Create a BranchElement
If splitlevel > 0 this branch in turn is split into sub branches
~TBranchElement()
*-*-*-*-*-*Default destructor for a BranchElement*-*-*-*-*-*-*-*-*-*-*-*
*-* =====================================
void Browse(TBrowser *b)
void BuildTitle(const char *name)
set branch/leaf name/title in case of a TClonesArray sub-branch
Int_t Fill()
*-*-*-*-*-*-*-*Loop on all leaves of this branch to fill Basket buffer*-*-*
*-* =======================================================
void FillLeaves(TBuffer &b)
Fill buffers of this branch
Int_t GetEntry(Int_t entry, Int_t getall)
*-*-*-*-*Read all branches of a BranchElement and return total number of bytes
*-* ====================================================================
If entry = 0 take current entry number + 1
If entry < 0 reset entry number to 0
The function returns the number of bytes read from the input buffer.
If entry does not exist or an I/O error occurs, the function returns 0.
See IMPORTANT REMARKS in TTree::GetEntry
TStreamerInfo* GetInfo()
return pointer to TStreamerinfo object for the class of this branch
rebuild the info if not yet done
Int_t GetMaximum() const
Return maximum count value of the branchcount if any
TBranchElement* GetMother() const
Get top level branch parent of this branch
A top level branch has its fID negative.
TBranchElement* GetSubBranch(const TBranchElement *br) const
recursively find branch br in the list of branches of this branch.
return null if br is not in this branch hierarchy.
const char* GetTypeName() const
return type name of element in the branch
Double_t GetValue(Int_t j, Int_t len, Bool_t subarr) const
Returns branch value. If the leaf is an array, j is the index in the array
If leaf is an array inside a TClonesArray, len should be the length of the
array. If subarr is true, then len is actually the index within the sub-array
void* GetValuePointer() const
Returns pointer to first data element of this branch
Currently used only for members of type character
Bool_t IsFolder() const
*-*-*-*-*Return TRUE if more than one leaf, FALSE otherwise*-*
*-* ==================================================
void Print(Option_t *option) const
*-*-*-*-*-*-*-*-*-*-*-*Print TBranch parameters*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-* ========================
void PrintValue(Int_t len) const
Prints leaf value
void ReadLeaves(TBuffer &b)
Read buffers for this branch
void Reset(Option_t *option)
*-*-*-*-*-*-*-*Reset a Branch*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-* ====================
Existing buffers are deleted
Entries, max and min are reset
void SetAddress(void *add)
*-*-*-*-*-*-*-*Set address of this branch*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
*-* ====================
void SetAutoDelete(Bool_t autodel)
*-*-*-*-*-*-*-*Set the AutoDelete bit
*-* ====================
This function can be used to instruct Root in TBranchElement::ReadBasket
to not delete the object referenced by a branchelement before reading a
new entry. By default, the object is deleted.
If autodel is kTRUE, this existing object will be deleted, a new object
created by the default constructor, then object->Streamer called.
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 Streamer itself.
If this branch has sub-branches, the function sets autodel for these
branches as well.
We STRONGLY suggest to activate this option by default when you create
the top level branch. This will make the read phase more efficient
because it minimizes the numbers of new/delete operations.
Once this option has been set and the Tree is written to a file, it is
not necessary to specify the option again when reading, unless you
want to set the opposite mode.
void SetBasketSize(Int_t buffsize)
Reset basket size for all subbranches of this branchelement
void SetBranchCount(TBranchElement *bre)
Set the branch count for this branch
Int_t Unroll(const char *name, TClass *cltop, TClass *cl,Int_t basketsize, Int_t splitlevel, Int_t btype)
unroll base classes and loop on all elements of class cl
Inline Functions
TBranchElement* GetBranchCount() const
TBranchElement* GetBranchCount2() const
const char* GetClassName() const
Int_t GetID() const
char* GetObject() const
const char* GetParentName() const
Int_t GetNdata() const
Int_t GetType() const
Int_t GetStreamerType() const
Bool_t IsBranchFolder() const
Bool_t Notify()
void SetBranchCount2(TBranchElement* bre)
void SetBranchFolder()
void SetClassName(const char* name)
void SetParentName(const char* name)
void SetType(Int_t btype)
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
TBranchElement TBranchElement(TBranchElement&)
Author: Rene Brun 14/01/2001
Last update: root/tree:$Name: $:$Id: TBranchElement.cxx,v 1.76 2002/01/13 07:43:03 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
ROOT page - Class index - Top of the page
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.