Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TBranchRef Class Reference

A branch containing and managing a TRefTable for TRef autoloading.

It loads the TBranch containing a referenced object when requested by TRef::GetObject(), so the reference can be resolved. The information which branch to load is stored by TRefTable. Once a TBranch has read the TBranchRef's current entry it will not be told to re-read, in case the use has changed objects read from the branch.

LIMITATION :

Note that this does NOT allow for autoloading of references spanning different entries. The TBranchRef's current entry has to correspond to the entry of the TBranch containing the referenced object.

The TRef cannot be stored in a top-level branch which is a TBranchObject for the auto-loading to work. E.g. you cannot store the TRefs in TObjArray, and create a top-level branch storing this TObjArray.

Definition at line 34 of file TBranchRef.h.

Public Member Functions

 TBranchRef ()
 Default constructor.
 
 TBranchRef (TTree *tree)
 Main constructor called by TTree::BranchRef.
 
 ~TBranchRef () override
 Typical destructor.
 
void Clear (Option_t *option="") override
 Clear entries in the TRefTable.
 
TRefTableGetRefTable () const
 
TClassIsA () const override
 
Bool_t Notify () override
 This function is called by TRefTable::Notify, itself called by TRef::GetObject.
 
void Print (Option_t *option="") const override
 Print the TRefTable branch.
 
void Reset (Option_t *option="") override
 
void ResetAfterMerge (TFileMergeInfo *) override
 Reset a Branch after a Merge operation (drop data but keep customizations) TRefTable is cleared.
 
virtual Int_t SetParent (const TObject *obj, Int_t branchID)
 Set the current parent branch.
 
virtual void SetRequestedEntry (Long64_t entry)
 
void Streamer (TBuffer &) override
 Stream a class object.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TBranch
 TBranch ()
 Default constructor. Used for I/O by default.
 
 TBranch (TBranch *parent, const char *name, void *address, const char *leaflist, Int_t basketsize=32000, Int_t compress=ROOT::RCompressionSetting::EAlgorithm::kInherit)
 Create a Branch as a child of another Branch.
 
 TBranch (TTree *tree, const char *name, void *address, const char *leaflist, Int_t basketsize=32000, Int_t compress=ROOT::RCompressionSetting::EAlgorithm::kInherit)
 Create a Branch as a child of a Tree.
 
 ~TBranch () override
 Destructor.
 
virtual void AddBasket (TBasket &b, Bool_t ondisk, Long64_t startEntry)
 Add the basket to this branch.
 
virtual void AddLastBasket (Long64_t startEntry)
 Add the start entry of the write basket (not yet created)
 
Int_t BackFill ()
 Loop on all leaves of this branch to back fill Basket buffer.
 
void Browse (TBrowser *b) override
 Browser interface.
 
virtual void DeleteBaskets (Option_t *option="")
 Loop on all branch baskets.
 
virtual void DropBaskets (Option_t *option="")
 Loop on all branch baskets.
 
void ExpandBasketArrays ()
 Increase BasketEntry buffer of a minimum of 10 locations and a maximum of 50 per cent of current size.
 
Int_t Fill ()
 
virtual TBranchFindBranch (const char *name)
 Find the immediate sub-branch with passed name.
 
virtual TLeafFindLeaf (const char *name)
 Find the leaf corresponding to the name 'searchname'.
 
Int_t FlushBaskets ()
 Flush to disk all the baskets of this branch and any of subbranches.
 
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.
 
virtual char * GetAddress () const
 
TBasketGetBasket (Int_t basket)
 
Int_tGetBasketBytes () const
 
Long64_tGetBasketEntry () const
 
virtual Long64_t GetBasketSeek (Int_t basket) const
 Return address of basket in the file.
 
virtual Int_t GetBasketSize () const
 
virtual TListGetBrowsables ()
 Returns (and, if 0, creates) browsable objects for this branch See TVirtualBranchBrowsable::FillListOfBrowsables.
 
ROOT::Experimental::Internal::TBulkBranchReadGetBulkRead ()
 
virtual const char * GetClassName () const
 Return the name of the user class whose content is stored in this branch, if any.
 
Int_t GetCompressionAlgorithm () const
 
Int_t GetCompressionLevel () const
 
Int_t GetCompressionSettings () const
 
TDirectoryGetDirectory () const
 
Long64_t GetEntries () 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.
 
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.
 
Long64_t GetEntryNumber () const
 
Int_t GetEntryOffsetLen () const
 
Int_t GetEvent (Long64_t entry=0)
 
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.
 
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.
 
const char * GetFileName () const
 
Long64_t GetFirstEntry () const
 
virtual TString GetFullName () const
 Return the 'full' name of the branch.
 
const char * GetIconName () const override
 Return icon name depending on type of branch.
 
TIOFeatures GetIOFeatures () const
 Returns the IO settings currently in use for this branch.
 
virtual TLeafGetLeaf (const char *name) const
 Return pointer to the 1st Leaf named name in thisBranch.
 
TObjArrayGetListOfBaskets ()
 
TObjArrayGetListOfBranches ()
 
TObjArrayGetListOfLeaves ()
 
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).
 
Int_t GetMaxBaskets () const
 
TBranchGetMother () const
 Get our top-level parent branch in the tree.
 
Int_t GetNleaves () const
 
Int_t GetOffset () const
 
Int_t GetReadBasket () const
 
Long64_t GetReadEntry () const
 
virtual Int_t GetRow (Int_t row)
 Return all elements of one row unpacked in internal array fValues [Actually just returns 1 (?)].
 
Int_t GetSplitLevel () const
 
TBranchGetSubBranch (const TBranch *br) const
 Find the parent branch of child.
 
Long64_t GetTotalSize (Option_t *option="") const
 Return total number of bytes in the branch (including current buffer)
 
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.
 
TBufferGetTransientBuffer (Int_t size)
 Returns the transient buffer currently used by this TBranch for reading/writing baskets.
 
TTreeGetTree () const
 
Int_t GetWriteBasket () const
 
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.
 
Bool_t IsAutoDelete () const
 Return kTRUE if an existing object in a TBranchObject must be deleted.
 
Bool_t IsFolder () const override
 Return kTRUE if more than one leaf or browsables, kFALSE otherwise.
 
virtual void KeepCircular (Long64_t maxEntries)
 keep a maximum of fMaxEntries in memory
 
virtual Int_t LoadBaskets ()
 Baskets associated to this branch are forced to be in memory.
 
void PrintCacheInfo () const
 Print the information we have about which basket is currently cached and whether they have been 'used'/'read' from the cache.
 
virtual void ReadBasket (TBuffer &b)
 Loop on all leaves of this branch to read Basket buffer.
 
virtual void Refresh (TBranch *b)
 Refresh this branch using new information in b This function is called by TTree::Refresh.
 
virtual void ResetAddress ()
 Reset the address of the branch.
 
virtual void ResetReadEntry ()
 
virtual void SetAddress (void *add)
 Set address of this branch.
 
virtual void SetAutoDelete (Bool_t autodel=kTRUE)
 Set the automatic delete bit.
 
virtual void SetBasketSize (Int_t buffsize)
 Set the basket size The function makes sure that the basket size is greater than fEntryOffsetlen.
 
virtual void SetBufferAddress (TBuffer *entryBuffer)
 Set address of this branch directly from a TBuffer to avoid streaming.
 
void SetCompressionAlgorithm (Int_t algorithm=ROOT::RCompressionSetting::EAlgorithm::kUseGlobal)
 Set compression algorithm.
 
void SetCompressionLevel (Int_t level=ROOT::RCompressionSetting::ELevel::kUseMin)
 Set compression level.
 
void SetCompressionSettings (Int_t settings=ROOT::RCompressionSetting::EDefaults::kUseCompiledDefault)
 Set compression settings.
 
virtual void SetEntries (Long64_t entries)
 Set the number of entries in this branch.
 
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.
 
virtual void SetFile (const char *filename)
 Set file where this branch writes/reads its buffers.
 
virtual void SetFile (TFile *file=nullptr)
 Set file where this branch writes/reads its buffers.
 
virtual void SetFirstEntry (Long64_t entry)
 set the first entry number (case of TBranchSTL)
 
void SetIOFeatures (TIOFeatures &features)
 
virtual Bool_t SetMakeClass (Bool_t decomposeObj=kTRUE)
 Set the branch in a mode where the object are decomposed (Also known as MakeClass mode).
 
virtual void SetObject (void *objadd)
 Set object this branch is pointing to.
 
virtual void SetOffset (Int_t offset=0)
 
virtual void SetStatus (Bool_t status=1)
 Set branch status to Process or DoNotProcess.
 
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.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
Bool_t SupportsBulkRead () const
 Returns true if this branch supports bulk IO, false otherwise.
 
virtual void UpdateAddress ()
 
virtual void UpdateFile ()
 Refresh the value of fDirectory (i.e.
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor.
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor.
 
void Clear (Option_t *option="") override
 Set name and title to empty strings ("").
 
TObjectClone (const char *newname="") const override
 Make a clone of an object using the Streamer facility.
 
Int_t Compare (const TObject *obj) const override
 Compare two TNamed objects.
 
void Copy (TObject &named) const override
 Copy this to obj.
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer.
 
const char * GetName () const override
 Returns name of object.
 
const char * GetTitle () const override
 Returns title of object.
 
ULong_t Hash () const override
 Return hash value for this object.
 
TClassIsA () const override
 
Bool_t IsSortable () const override
 
void ls (Option_t *option="") const override
 List TNamed name and title.
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator.
 
void Print (Option_t *option="") const override
 Print TNamed name and title.
 
virtual void SetName (const char *name)
 Set the name of the TNamed.
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title).
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed.
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject.
 
void Streamer (TBuffer &) override
 Stream an object of class TObject.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor.
 
 TObject (const TObject &object)
 TObject copy ctor.
 
virtual ~TObject ()
 TObject destructor.
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract.
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad.
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object.
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs.
 
virtual void Delete (Option_t *option="")
 Delete this object.
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object.
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects.
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs.
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
 
virtual void Dump () const
 Dump contents of object on stdout.
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message.
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 Execute method on this object with the given parameter string, e.g.
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 Execute method on this object with parameters stored in the TObjArray.
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py).
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message.
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes.
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes.
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object.
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py).
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id.
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out.
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e.
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message.
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname".
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl.
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas.
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 IsDestructed.
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory).
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary).
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete.
 
void operator delete (void *ptr)
 Operator delete.
 
void operator delete (void *ptr, void *vp)
 Only called by placement new when throwing an exception.
 
void operator delete[] (void *ptr)
 Operator delete [].
 
void operator delete[] (void *ptr, void *vp)
 Only called by placement new[] when throwing an exception.
 
void * operator new (size_t sz)
 
void * operator new (size_t sz, void *vp)
 
void * operator new[] (size_t sz)
 
void * operator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator.
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself.
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list.
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory.
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list.
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename.
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out".
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f.
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object.
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message.
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked.
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory.
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory.
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 AttFill default constructor.
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor.
 
virtual ~TAttFill ()
 AttFill destructor.
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill.
 
virtual Color_t GetFillColor () const
 Return the fill area color.
 
virtual Style_t GetFillStyle () const
 Return the fill area style.
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary.
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values.
 
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.
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes.
 
virtual void SetFillColor (Color_t fcolor)
 Set the fill area color.
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color.
 
virtual void SetFillStyle (Style_t fstyle)
 Set the fill area style.
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 

Static Public Member Functions

static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TBranch
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static void ResetCount ()
 Static function resetting fgCount.
 
- Static Public Member Functions inherited from TNamed
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 Return destructor only flag.
 
static Bool_t GetObjectStat ()
 Get status of object stat flag.
 
static void SetDtorOnly (void *obj)
 Set destructor only flag.
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable.
 
- Static Public Member Functions inherited from TAttFill
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 

Protected Member Functions

void FillLeavesImpl (TBuffer &b)
 This function called by TBranch::Fill overloads TBranch::FillLeaves.
 
void ReadLeavesImpl (TBuffer &b)
 This function called by TBranch::GetEntry overloads TBranch::ReadLeaves.
 
- Protected Member Functions inherited from TBranch
void FillLeavesImpl (TBuffer &b)
 Loop on all leaves of this branch to fill Basket buffer.
 
TBasketGetFreshBasket (Int_t basketnumber, TBuffer *user_buffer)
 Return a fresh basket by either reusing an existing basket that needs to be drop (according to TTree::MemoryFull) or create a new one.
 
TBasketGetFreshCluster (TBuffer *user_buffer)
 Drops the cluster two behind the current cluster and returns a fresh basket by either reusing or creating a new one.
 
TString GetRealFileName () const
 Get real file name.
 
void Init (const char *name, const char *leaflist, Int_t compress)
 
void ReadLeaves0Impl (TBuffer &b)
 Read zero leaves without the overhead of a loop.
 
void ReadLeaves1Impl (TBuffer &b)
 Read one leaf without the overhead of a loop.
 
void ReadLeaves2Impl (TBuffer &b)
 Read two leaves without the overhead of a loop.
 
void ReadLeavesImpl (TBuffer &b)
 Loop on all leaves of this branch to read Basket buffer.
 
virtual void SetAddressImpl (void *addr, Bool_t)
 
void SetSkipZip (Bool_t skip=kTRUE)
 
Int_t WriteBasket (TBasket *basket, Int_t where)
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected).
 
void MakeZombie ()
 

Protected Attributes

TRefTablefRefTable
 pointer to the TRefTable
 
- Protected Attributes inherited from TBranch
char * fAddress
 ! Address of 1st leaf (variable or object)
 
Int_tfBasketBytes
 [fMaxBaskets] Length of baskets on file
 
Long64_tfBasketEntry
 [fMaxBaskets] Table of first entry in each basket
 
TObjArray fBaskets
 -> List of baskets of this branch
 
Long64_tfBasketSeek
 [fMaxBaskets] Addresses of baskets on file
 
Int_t fBasketSize
 Initial Size of Basket Buffer.
 
TObjArray fBranches
 -> List of Branches of this branch
 
TListfBrowsables
 ! List of TVirtualBranchBrowsables used for Browse()
 
BulkObj fBulk
 ! Helper for performing bulk IO
 
CacheInfo_t fCacheInfo
 ! Hold info about which basket are in the cache and if they have been retrieved from the cache.
 
Int_t fCompress
 Compression level and algorithm.
 
TBasketfCurrentBasket
 ! Pointer to the current basket.
 
TDirectoryfDirectory
 ! Pointer to directory where this branch buffers are stored
 
Long64_t fEntries
 Number of entries.
 
TBufferfEntryBuffer
 ! Buffer used to directly pass the content without streaming
 
Long64_t fEntryNumber
 Current entry number (last one filled in this branch)
 
Int_t fEntryOffsetLen
 Initial Length of fEntryOffset table in the basket buffers.
 
TBasketfExtraBasket
 ! Allocated basket not currently holding any data.
 
TString fFileName
 Name of file where buffers are stored ("" if in same file as Tree header)
 
FillLeaves_t fFillLeaves
 ! Pointer to the FillLeaves implementation to use.
 
Long64_t fFirstBasketEntry
 ! First entry in the current basket.
 
Long64_t fFirstEntry
 Number of the first entry in this branch.
 
TIOFeatures fIOFeatures
 IO features for newly-created baskets.
 
TObjArray fLeaves
 -> List of leaves of this branch
 
Int_t fMaxBaskets
 Maximum number of Baskets so far.
 
TBranchfMother
 ! Pointer to top-level parent branch in the tree.
 
Int_t fNBaskets
 ! Number of baskets in memory
 
Long64_t fNextBasketEntry
 ! Next entry that will requires us to go to the next basket
 
Int_t fNleaves
 ! Number of leaves
 
Int_t fOffset
 Offset of this branch.
 
TBranchfParent
 ! Pointer to parent branch.
 
Int_t fReadBasket
 ! Current basket number when reading
 
Long64_t fReadEntry
 ! Current entry number when reading
 
ReadLeaves_t fReadLeaves
 ! Pointer to the ReadLeaves implementation to use.
 
Bool_t fSkipZip
 ! After being read, the buffer will not be unzipped.
 
Int_t fSplitLevel
 Branch split level.
 
Long64_t fTotBytes
 Total number of bytes in all leaves before compression.
 
TBufferfTransientBuffer
 ! Pointer to the current transient buffer.
 
TTreefTree
 ! Pointer to Tree header
 
Int_t fWriteBasket
 Last basket number written.
 
Long64_t fZipBytes
 Total number of bytes in all leaves after compression.
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 Fill area color.
 
Style_t fFillStyle
 Fill area style.
 

Private Member Functions

Int_t FillImpl (ROOT::Internal::TBranchIMTHelper *) override
 Fill the branch basket with the referenced objects parent numbers.
 

Private Attributes

Long64_t fRequestedEntry
 ! Cursor indicating which entry is being requested.
 

Additional Inherited Members

- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = (1ULL << ( 0 )) , kOverwrite = (1ULL << ( 1 )) , kWriteDelete = (1ULL << ( 2 )) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = (1ULL << ( 3 )) }
 
enum  EStatusBits {
  kCanDelete = (1ULL << ( 0 )) , kMustCleanup = (1ULL << ( 3 )) , kIsReferenced = (1ULL << ( 4 )) , kHasUUID = (1ULL << ( 5 )) ,
  kCannotPick = (1ULL << ( 6 )) , kNoContextMenu = (1ULL << ( 8 )) , kInvalidObject = (1ULL << ( 13 ))
}
 
- Protected Types inherited from TBranch
using BulkObj = ROOT::Experimental::Internal::TBulkBranchRead
 
using CacheInfo_t = ROOT::Internal::TBranchCacheInfo
 
enum  EStatusBits {
  kDoNotProcess = ::kDoNotProcess , kIsClone = ::kIsClone , kBranchObject = ::kBranchObject , kBranchAny = ::kBranchAny ,
  kAutoDelete = (1ULL << ( 15 )) , kDoNotUseBufferMap = (1ULL << ( 22 ))
}
 TBranch status bits. More...
 
typedef void(TBranch::* FillLeaves_t) (TBuffer &b)
 
typedef void(TBranch::* ReadLeaves_t) (TBuffer &b)
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = (1ULL << ( 3 )) }
 
- Static Protected Attributes inherited from TBranch
static Int_t fgCount = 0
 ! branch counter
 

#include <TBranchRef.h>

Inheritance diagram for TBranchRef:
[legend]

Constructor & Destructor Documentation

◆ TBranchRef() [1/2]

TBranchRef::TBranchRef ( )

Default constructor.

Definition at line 46 of file TBranchRef.cxx.

◆ TBranchRef() [2/2]

TBranchRef::TBranchRef ( TTree tree)

Main constructor called by TTree::BranchRef.

Definition at line 55 of file TBranchRef.cxx.

◆ ~TBranchRef()

TBranchRef::~TBranchRef ( )
override

Typical destructor.

Definition at line 87 of file TBranchRef.cxx.

Member Function Documentation

◆ Class()

static TClass * TBranchRef::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

static const char * TBranchRef::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

static constexpr Version_t TBranchRef::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 60 of file TBranchRef.h.

◆ Clear()

void TBranchRef::Clear ( Option_t option = "")
overridevirtual

Clear entries in the TRefTable.

Reimplemented from TObject.

Definition at line 95 of file TBranchRef.cxx.

◆ DeclFileName()

static const char * TBranchRef::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 60 of file TBranchRef.h.

◆ FillImpl()

Int_t TBranchRef::FillImpl ( ROOT::Internal::TBranchIMTHelper imtHelper)
overrideprivatevirtual

Fill the branch basket with the referenced objects parent numbers.

Reimplemented from TBranch.

Definition at line 103 of file TBranchRef.cxx.

◆ FillLeavesImpl()

void TBranchRef::FillLeavesImpl ( TBuffer b)
protected

This function called by TBranch::Fill overloads TBranch::FillLeaves.

Definition at line 176 of file TBranchRef.cxx.

◆ GetRefTable()

TRefTable * TBranchRef::GetRefTable ( ) const
inline

Definition at line 49 of file TBranchRef.h.

◆ IsA()

TClass * TBranchRef::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TBranch.

Definition at line 60 of file TBranchRef.h.

◆ Notify()

Bool_t TBranchRef::Notify ( )
overridevirtual

This function is called by TRefTable::Notify, itself called by TRef::GetObject.

The function reads the branch containing the object referenced by the TRef.

Reimplemented from TObject.

Definition at line 115 of file TBranchRef.cxx.

◆ Print()

void TBranchRef::Print ( Option_t option = "") const
overridevirtual

Print the TRefTable branch.

Reimplemented from TBranch.

Definition at line 159 of file TBranchRef.cxx.

◆ ReadLeavesImpl()

void TBranchRef::ReadLeavesImpl ( TBuffer b)
protected

This function called by TBranch::GetEntry overloads TBranch::ReadLeaves.

Definition at line 167 of file TBranchRef.cxx.

◆ Reset()

void TBranchRef::Reset ( Option_t option = "")
overridevirtual
  • Existing buffers are deleted
  • Entries, max and min are reset
  • TRefTable is cleared.

Reimplemented from TBranch.

Definition at line 187 of file TBranchRef.cxx.

◆ ResetAfterMerge()

void TBranchRef::ResetAfterMerge ( TFileMergeInfo info)
overridevirtual

Reset a Branch after a Merge operation (drop data but keep customizations) TRefTable is cleared.

Reimplemented from TBranch.

Definition at line 198 of file TBranchRef.cxx.

◆ SetParent()

Int_t TBranchRef::SetParent ( const TObject object,
Int_t  branchID 
)
virtual

Set the current parent branch.

This function is called by TBranchElement::GetEntry() and TBranchElement::Fill() when reading or writing branches that may contain referenced objects.

Definition at line 212 of file TBranchRef.cxx.

◆ SetRequestedEntry()

virtual void TBranchRef::SetRequestedEntry ( Long64_t  entry)
inlinevirtual

Definition at line 55 of file TBranchRef.h.

◆ Streamer()

void TBranchRef::Streamer ( TBuffer b)
overridevirtual

Stream a class object.

Reimplemented from TBranch.

◆ StreamerNVirtual()

void TBranchRef::StreamerNVirtual ( TBuffer ClassDef_StreamerNVirtual_b)
inline

Definition at line 60 of file TBranchRef.h.

Member Data Documentation

◆ fRefTable

TRefTable* TBranchRef::fRefTable
protected

pointer to the TRefTable

Definition at line 39 of file TBranchRef.h.

◆ fRequestedEntry

Long64_t TBranchRef::fRequestedEntry
private

! Cursor indicating which entry is being requested.

Definition at line 36 of file TBranchRef.h.

Libraries for TBranchRef:

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