Logo ROOT  
Reference Guide
ROOT::Detail::TBranchProxy Class Reference

Base class for all the proxy object.

It includes the implementation of the autoloading of branches as well as all the generic setup routine.

Definition at line 74 of file TBranchProxy.h.

Public Member Functions

 TBranchProxy ()
 Constructor. More...
 
 TBranchProxy (Internal::TBranchProxyDirector *boss, const char *branchname, TBranch *branch, const char *membername)
 Constructor taking the branch name, possibly of a friended tree. More...
 
 TBranchProxy (Internal::TBranchProxyDirector *boss, const char *top, const char *name, const char *membername)
 Constructor. More...
 
 TBranchProxy (Internal::TBranchProxyDirector *boss, const char *top, const char *name=0)
 Constructor. More...
 
 TBranchProxy (Internal::TBranchProxyDirector *boss, TBranch *branch, const char *membername)
 Constructor. More...
 
 TBranchProxy (Internal::TBranchProxyDirector *boss, TBranchProxy *parent, const char *membername, const char *top=0, const char *name=0)
 Constructor. More...
 
virtual ~TBranchProxy ()
 Typical Destructor. More...
 
virtual void * GetAddressOfElement (UInt_t)
 Return the address of the element number i. More...
 
virtual Int_t GetArrayLength ()
 
const char * GetBranchName () const
 
TClassGetClass ()
 
void * GetClaStart (UInt_t i=0)
 
TVirtualCollectionProxyGetCollection ()
 
virtual Int_t GetEntries ()
 
Int_t GetOffset ()
 
TBranchProxyGetProxy ()
 
virtual void * GetStart (UInt_t=0)
 
void * GetStlStart (UInt_t i=0)
 
void * GetWhere () const
 
Bool_t IsaPointer () const
 
Bool_t IsInitialized ()
 
Bool_t Notify ()
 
virtual void Print ()
 Display the content of the object. More...
 
Bool_t Read ()
 
Bool_t ReadEntries ()
 
void Reset ()
 Completely reset the object. More...
 
Bool_t Setup ()
 Initialize/cache the necessary information. More...
 

Protected Attributes

union {
   TBranch *   fBranchCount
 
   TLeaf *   fLeafCount
 
}; 
 
Int_t fArrayLength
 
TBranchfBranch
 
const TString fBranchName
 
TClassfClass
 
TString fClassName
 
TVirtualCollectionProxyfCollection
 
const TString fDataMember
 
Internal::TBranchProxyDirectorfDirector
 
TStreamerElementfElement
 
Bool_t fHasLeafCount: 1
 
Bool_t fInitialized: 1
 
Bool_t fIsaPointer: 1
 
Bool_t fIsClone: 1
 
const Bool_t fIsMember: 1
 
Int_t fMemberOffset
 
TNotifyLink< TBranchProxyfNotify
 
Int_t fOffset
 
TBranchProxyfParent
 
Long64_t fRead
 
void * fWhere
 

Private Types

enum class  EReadType {
  kDefault , kNoDirector , kReadParentNoCollection , kReadParentCollectionNoPointer ,
  kReadParentCollectionPointer , kReadNoParentNoBranchCountCollectionPointer , kReadNoParentNoBranchCountCollectionNoPointer , kReadNoParentNoBranchCountNoCollection ,
  kReadNoParentBranchCountCollectionPointer , kReadNoParentBranchCountCollectionNoPointer , kReadNoParentBranchCountNoCollection
}
 

Private Member Functions

EReadType GetReadType ()
 
Bool_t ReadNoDirector ()
 
Bool_t ReadNoParentBranchCountCollectionNoPointer ()
 
Bool_t ReadNoParentBranchCountCollectionPointer ()
 
Bool_t ReadNoParentBranchCountNoCollection ()
 
Bool_t ReadNoParentNoBranchCountCollectionNoPointer ()
 
Bool_t ReadNoParentNoBranchCountCollectionPointer ()
 
Bool_t ReadNoParentNoBranchCountNoCollection ()
 
Bool_t ReadParentCollectionNoPointer ()
 
Bool_t ReadParentCollectionPointer ()
 
Bool_t ReadParentNoCollection ()
 

Friends

class ROOT::Internal::TTreeReaderValueBase
 

#include <TBranchProxy.h>

Inheritance diagram for ROOT::Detail::TBranchProxy:
[legend]

Member Enumeration Documentation

◆ EReadType

enum class ROOT::Detail::TBranchProxy::EReadType
strongprivate
Enumerator
kDefault 
kNoDirector 
kReadParentNoCollection 
kReadParentCollectionNoPointer 
kReadParentCollectionPointer 
kReadNoParentNoBranchCountCollectionPointer 
kReadNoParentNoBranchCountCollectionNoPointer 
kReadNoParentNoBranchCountNoCollection 
kReadNoParentBranchCountCollectionPointer 
kReadNoParentBranchCountCollectionNoPointer 
kReadNoParentBranchCountNoCollection 

Definition at line 180 of file TBranchProxy.h.

Constructor & Destructor Documentation

◆ TBranchProxy() [1/6]

ROOT::Detail::TBranchProxy::TBranchProxy ( )

Constructor.

Definition at line 31 of file TBranchProxy.cxx.

◆ TBranchProxy() [2/6]

ROOT::Detail::TBranchProxy::TBranchProxy ( Internal::TBranchProxyDirector boss,
const char *  top,
const char *  name = 0 
)

Constructor.

Definition at line 44 of file TBranchProxy.cxx.

◆ TBranchProxy() [3/6]

ROOT::Detail::TBranchProxy::TBranchProxy ( Internal::TBranchProxyDirector boss,
const char *  top,
const char *  name,
const char *  membername 
)

Constructor.

Definition at line 63 of file TBranchProxy.cxx.

◆ TBranchProxy() [4/6]

ROOT::Detail::TBranchProxy::TBranchProxy ( Internal::TBranchProxyDirector boss,
Detail::TBranchProxy parent,
const char *  membername,
const char *  top = 0,
const char *  name = 0 
)

Constructor.

Definition at line 83 of file TBranchProxy.cxx.

◆ TBranchProxy() [5/6]

ROOT::Detail::TBranchProxy::TBranchProxy ( Internal::TBranchProxyDirector boss,
TBranch branch,
const char *  membername 
)

Constructor.

Definition at line 104 of file TBranchProxy.cxx.

◆ TBranchProxy() [6/6]

ROOT::Detail::TBranchProxy::TBranchProxy ( Internal::TBranchProxyDirector boss,
const char *  branchname,
TBranch branch,
const char *  membername 
)

Constructor taking the branch name, possibly of a friended tree.

Used by TTreeReaderValue in place of TFriendProxy.

Definition at line 141 of file TBranchProxy.cxx.

◆ ~TBranchProxy()

ROOT::Detail::TBranchProxy::~TBranchProxy ( )
virtual

Typical Destructor.

Definition at line 157 of file TBranchProxy.cxx.

Member Function Documentation

◆ GetAddressOfElement()

virtual void * ROOT::Detail::TBranchProxy::GetAddressOfElement ( UInt_t  )
inlinevirtual

Return the address of the element number i.

Returns nullptr for non-collections. It assumed that Setip() has been called.

Reimplemented in ROOT::Internal::TArrayCharProxy, ROOT::Internal::TClaProxy, ROOT::Internal::TStlProxy, and ROOT::Internal::TArrayProxy< T >.

Definition at line 406 of file TBranchProxy.h.

◆ GetArrayLength()

virtual Int_t ROOT::Detail::TBranchProxy::GetArrayLength ( )
inlinevirtual

Definition at line 385 of file TBranchProxy.h.

◆ GetBranchName()

const char * ROOT::Detail::TBranchProxy::GetBranchName ( ) const
inline

Definition at line 122 of file TBranchProxy.h.

◆ GetClass()

TClass * ROOT::Detail::TBranchProxy::GetClass ( )
inline

Definition at line 389 of file TBranchProxy.h.

◆ GetClaStart()

void * ROOT::Detail::TBranchProxy::GetClaStart ( UInt_t  i = 0)
inline

Definition at line 428 of file TBranchProxy.h.

◆ GetCollection()

TVirtualCollectionProxy * ROOT::Detail::TBranchProxy::GetCollection ( )
inline

Definition at line 410 of file TBranchProxy.h.

◆ GetEntries()

virtual Int_t ROOT::Detail::TBranchProxy::GetEntries ( )
inlinevirtual

◆ GetOffset()

Int_t ROOT::Detail::TBranchProxy::GetOffset ( )
inline

Definition at line 518 of file TBranchProxy.h.

◆ GetProxy()

TBranchProxy * ROOT::Detail::TBranchProxy::GetProxy ( )
inline

Definition at line 121 of file TBranchProxy.h.

◆ GetReadType()

EReadType ROOT::Detail::TBranchProxy::GetReadType ( )
inlineprivate

Definition at line 194 of file TBranchProxy.h.

◆ GetStart()

virtual void * ROOT::Detail::TBranchProxy::GetStart ( UInt_t  = 0)
inlinevirtual

Definition at line 413 of file TBranchProxy.h.

◆ GetStlStart()

void * ROOT::Detail::TBranchProxy::GetStlStart ( UInt_t  i = 0)
inline

Definition at line 474 of file TBranchProxy.h.

◆ GetWhere()

void * ROOT::Detail::TBranchProxy::GetWhere ( ) const
inline

Definition at line 402 of file TBranchProxy.h.

◆ IsaPointer()

Bool_t ROOT::Detail::TBranchProxy::IsaPointer ( ) const
inline

Definition at line 138 of file TBranchProxy.h.

◆ IsInitialized()

Bool_t ROOT::Detail::TBranchProxy::IsInitialized ( )
inline

Definition at line 133 of file TBranchProxy.h.

◆ Notify()

Bool_t ROOT::Detail::TBranchProxy::Notify ( )
inline

Definition at line 126 of file TBranchProxy.h.

◆ Print()

void ROOT::Detail::TBranchProxy::Print ( void  )
virtual

◆ Read()

Bool_t ROOT::Detail::TBranchProxy::Read ( )
inline

Definition at line 142 of file TBranchProxy.h.

◆ ReadEntries()

Bool_t ROOT::Detail::TBranchProxy::ReadEntries ( )
inline

Definition at line 352 of file TBranchProxy.h.

◆ ReadNoDirector()

Bool_t ROOT::Detail::TBranchProxy::ReadNoDirector ( )
inlineprivate

Definition at line 232 of file TBranchProxy.h.

◆ ReadNoParentBranchCountCollectionNoPointer()

Bool_t ROOT::Detail::TBranchProxy::ReadNoParentBranchCountCollectionNoPointer ( )
inlineprivate

Definition at line 324 of file TBranchProxy.h.

◆ ReadNoParentBranchCountCollectionPointer()

Bool_t ROOT::Detail::TBranchProxy::ReadNoParentBranchCountCollectionPointer ( )
inlineprivate

Definition at line 310 of file TBranchProxy.h.

◆ ReadNoParentBranchCountNoCollection()

Bool_t ROOT::Detail::TBranchProxy::ReadNoParentBranchCountNoCollection ( )
inlineprivate

Definition at line 338 of file TBranchProxy.h.

◆ ReadNoParentNoBranchCountCollectionNoPointer()

Bool_t ROOT::Detail::TBranchProxy::ReadNoParentNoBranchCountCollectionNoPointer ( )
inlineprivate

Definition at line 286 of file TBranchProxy.h.

◆ ReadNoParentNoBranchCountCollectionPointer()

Bool_t ROOT::Detail::TBranchProxy::ReadNoParentNoBranchCountCollectionPointer ( )
inlineprivate

Definition at line 273 of file TBranchProxy.h.

◆ ReadNoParentNoBranchCountNoCollection()

Bool_t ROOT::Detail::TBranchProxy::ReadNoParentNoBranchCountNoCollection ( )
inlineprivate

Definition at line 299 of file TBranchProxy.h.

◆ ReadParentCollectionNoPointer()

Bool_t ROOT::Detail::TBranchProxy::ReadParentCollectionNoPointer ( )
inlineprivate

Definition at line 247 of file TBranchProxy.h.

◆ ReadParentCollectionPointer()

Bool_t ROOT::Detail::TBranchProxy::ReadParentCollectionPointer ( )
inlineprivate

Definition at line 260 of file TBranchProxy.h.

◆ ReadParentNoCollection()

Bool_t ROOT::Detail::TBranchProxy::ReadParentNoCollection ( )
inlineprivate

Definition at line 236 of file TBranchProxy.h.

◆ Reset()

void ROOT::Detail::TBranchProxy::Reset ( void  )

Completely reset the object.

Definition at line 166 of file TBranchProxy.cxx.

◆ Setup()

Bool_t ROOT::Detail::TBranchProxy::Setup ( )

Initialize/cache the necessary information.

Definition at line 198 of file TBranchProxy.cxx.

Friends And Related Function Documentation

◆ ROOT::Internal::TTreeReaderValueBase

Definition at line 178 of file TBranchProxy.h.

Member Data Documentation

◆ 

union { ... } ROOT::Detail::TBranchProxy::@212

◆ fArrayLength

Int_t ROOT::Detail::TBranchProxy::fArrayLength
protected

Definition at line 95 of file TBranchProxy.h.

◆ fBranch

TBranch* ROOT::Detail::TBranchProxy::fBranch
protected

Definition at line 97 of file TBranchProxy.h.

◆ fBranchCount

TBranch* ROOT::Detail::TBranchProxy::fBranchCount

Definition at line 99 of file TBranchProxy.h.

◆ fBranchName

const TString ROOT::Detail::TBranchProxy::fBranchName
protected

Definition at line 84 of file TBranchProxy.h.

◆ fClass

TClass* ROOT::Detail::TBranchProxy::fClass
protected

Definition at line 91 of file TBranchProxy.h.

◆ fClassName

TString ROOT::Detail::TBranchProxy::fClassName
protected

Definition at line 90 of file TBranchProxy.h.

◆ fCollection

TVirtualCollectionProxy* ROOT::Detail::TBranchProxy::fCollection
protected

Definition at line 108 of file TBranchProxy.h.

◆ fDataMember

const TString ROOT::Detail::TBranchProxy::fDataMember
protected

Definition at line 87 of file TBranchProxy.h.

◆ fDirector

Internal::TBranchProxyDirector* ROOT::Detail::TBranchProxy::fDirector
protected

Definition at line 76 of file TBranchProxy.h.

◆ fElement

TStreamerElement* ROOT::Detail::TBranchProxy::fElement
protected

Definition at line 92 of file TBranchProxy.h.

◆ fHasLeafCount

Bool_t ROOT::Detail::TBranchProxy::fHasLeafCount
protected

Definition at line 82 of file TBranchProxy.h.

◆ fInitialized

Bool_t ROOT::Detail::TBranchProxy::fInitialized
protected

Definition at line 78 of file TBranchProxy.h.

◆ fIsaPointer

Bool_t ROOT::Detail::TBranchProxy::fIsaPointer
protected

Definition at line 81 of file TBranchProxy.h.

◆ fIsClone

Bool_t ROOT::Detail::TBranchProxy::fIsClone
protected

Definition at line 80 of file TBranchProxy.h.

◆ fIsMember

const Bool_t ROOT::Detail::TBranchProxy::fIsMember
protected

Definition at line 79 of file TBranchProxy.h.

◆ fLeafCount

TLeaf* ROOT::Detail::TBranchProxy::fLeafCount

Definition at line 100 of file TBranchProxy.h.

◆ fMemberOffset

Int_t ROOT::Detail::TBranchProxy::fMemberOffset
protected

Definition at line 93 of file TBranchProxy.h.

◆ fNotify

TNotifyLink<TBranchProxy> ROOT::Detail::TBranchProxy::fNotify
protected

Definition at line 103 of file TBranchProxy.h.

◆ fOffset

Int_t ROOT::Detail::TBranchProxy::fOffset
protected

Definition at line 94 of file TBranchProxy.h.

◆ fParent

TBranchProxy* ROOT::Detail::TBranchProxy::fParent
protected

Definition at line 85 of file TBranchProxy.h.

◆ fRead

Long64_t ROOT::Detail::TBranchProxy::fRead
protected

Definition at line 105 of file TBranchProxy.h.

◆ fWhere

void* ROOT::Detail::TBranchProxy::fWhere
protected

Definition at line 107 of file TBranchProxy.h.

Libraries for ROOT::Detail::TBranchProxy:
[legend]

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