Base class of TTreeReaderArray.
Definition at line 29 of file TTreeReaderArray.h.
Public Member Functions | |
TTreeReaderArrayBase (TTreeReader *reader, const char *branchname, TDictionary *dict) | |
EReadStatus | GetReadStatus () const override |
std::size_t | GetSize () const |
bool | IsEmpty () const |
Public Member Functions inherited from ROOT::Internal::TTreeReaderValueBase | |
virtual | ~TTreeReaderValueBase () |
Unregister from tree reader, cleanup. | |
void * | GetAddress () |
Returns the memory address of the object being read. | |
const char * | GetBranchName () const |
TLeaf * | GetLeaf () |
If we are reading a leaf, return the corresponding TLeaf. | |
ESetupStatus | GetSetupStatus () const |
Return this TTreeReaderValue's setup status. | |
bool | IsValid () const |
Return true if the branch was setup and read correctly. | |
EReadStatus | ProxyRead () |
EReadStatus | ProxyReadDefaultImpl () |
template<BranchProxyRead_t Func> | |
ROOT::Internal::TTreeReaderValueBase::EReadStatus | ProxyReadTemplate () |
Try to read the value from the TBranchProxy, returns the status of the read. | |
Protected Member Functions | |
void | CreateProxy () override |
Create the proxy object for our branch. | |
bool | GetBranchAndLeaf (TBranch *&branch, TLeaf *&myLeaf, TDictionary *&branchActualType, bool suppressErrorsForMissingBranch=false) |
Determine the branch / leaf and its type; reset fProxy / fSetupStatus on error. | |
const char * | GetBranchContentDataType (TBranch *branch, TString &contentTypeName, TDictionary *&dict) |
Access a branch's collection content (not the collection itself) through a proxy. | |
void | SetImpl (TBranch *branch, TLeaf *myLeaf) |
Create the TVirtualCollectionReader object for our branch. | |
void * | UntypedAt (std::size_t idx) const |
Protected Member Functions inherited from ROOT::Internal::TTreeReaderValueBase | |
TTreeReaderValueBase (const TTreeReaderValueBase &) | |
Copy-construct. | |
TTreeReaderValueBase (TTreeReader *reader, const char *branchname, TDictionary *dict, bool opaqueRead=false) | |
Construct a tree value reader and register it with the reader object. | |
void | ErrorAboutMissingProxyIfNeeded () |
virtual const char * | GetDerivedTypeName () const =0 |
Detail::TBranchProxy * | GetProxy () const |
void | MarkTreeReaderUnavailable () |
void | NotifyNewTree (TTree *newTree) |
The TTreeReader has switched to a new TTree. Update the leaf. | |
TTreeReaderValueBase & | operator= (const TTreeReaderValueBase &) |
Copy-assign. | |
void | RegisterWithTreeReader () |
Register with tree reader. | |
TBranch * | SearchBranchWithCompositeName (TLeaf *&myleaf, TDictionary *&branchActualType, std::string &err) |
Search a branch the name of which contains a ".". | |
Protected Attributes | |
std::unique_ptr< TVirtualCollectionReader > | fImpl |
Protected Attributes inherited from ROOT::Internal::TTreeReaderValueBase | |
TString | fBranchName |
Name of the branch to read data from. | |
TDictionary * | fDict |
Type that the branch should contain. | |
bool | fHaveLeaf: 1 |
Whether the data is in a leaf. | |
bool | fHaveStaticClassOffsets: 1 |
Whether !fStaticClassOffsets.empty() | |
TLeaf * | fLeaf = nullptr |
TString | fLeafName |
bool | fOpaqueRead {false} |
If true, the reader will not do any type-checking against the actual type held by the branch. | |
Detail::TBranchProxy * | fProxy = nullptr |
Proxy for this branch, owned by TTreeReader. | |
Read_t | fProxyReadFunc = &TTreeReaderValueBase::ProxyReadDefaultImpl |
! Pointer to the Read implementation to use. | |
EReadStatus | fReadStatus: 2 |
Read status of this data access. | |
ESetupStatus | fSetupStatus = kSetupNotSetup |
Setup status of this data access. | |
std::vector< Long64_t > | fStaticClassOffsets |
TTreeReader * | fTreeReader |
Tree reader we belong to. | |
Additional Inherited Members | |
Public Types inherited from ROOT::Internal::TTreeReaderValueBase | |
typedef bool(ROOT::Detail::TBranchProxy::* | BranchProxyRead_t) () |
enum | EReadStatus { kReadSuccess = 0 , kReadNothingYet , kReadError } |
enum | ESetupStatus { kSetupNotSetup = -7 , kSetupTreeDestructed = -8 , kSetupMakeClassModeMismatch = -9 , kSetupMissingCounterBranch = -6 , kSetupMissingBranch = -5 , kSetupInternalError = -4 , kSetupMissingDictionary = -3 , kSetupMismatch = -2 , kSetupNotACollection = -1 , kSetupMatch = 0 , kSetupMatchBranch = 7 , kSetupNoCheck = 5 , kSetupMatchLeaf = 6 } |
Status flags, 0 is good. More... | |
Protected Types inherited from ROOT::Internal::TTreeReaderValueBase | |
typedef EReadStatus(TTreeReaderValueBase::* | Read_t) () |
Static Protected Member Functions inherited from ROOT::Internal::TTreeReaderValueBase | |
static const char * | GetBranchDataType (TBranch *branch, TDictionary *&dict, TDictionary const *curDict) |
Retrieve the type of data stored by branch; put its dictionary into dict, return its type name. | |
static std::string | GetElementTypeName (const std::type_info &ti) |
Stringify the template argument. | |
#include <TTreeReaderArray.h>
|
inline |
Definition at line 31 of file TTreeReaderArray.h.
|
overrideprotectedvirtual |
Create the proxy object for our branch.
Reimplemented from ROOT::Internal::TTreeReaderValueBase.
Definition at line 405 of file TTreeReaderArray.cxx.
|
protected |
Determine the branch / leaf and its type; reset fProxy / fSetupStatus on error.
Definition at line 595 of file TTreeReaderArray.cxx.
|
protected |
Access a branch's collection content (not the collection itself) through a proxy.
Retrieve the type of data contained in the collection stored by branch; put its dictionary into dict, If there is no dictionary, put its type name into contentTypeName. The contentTypeName is set to NULL if the branch does not contain a collection; in that case, the type of the branch is returned. In all other cases, NULL is returned.
Definition at line 816 of file TTreeReaderArray.cxx.
|
inlineoverridevirtual |
Reimplemented from ROOT::Internal::TTreeReaderValueBase.
Definition at line 38 of file TTreeReaderArray.h.
|
inline |
Definition at line 35 of file TTreeReaderArray.h.
|
inline |
Definition at line 36 of file TTreeReaderArray.h.
Create the TVirtualCollectionReader object for our branch.
Definition at line 672 of file TTreeReaderArray.cxx.
|
inlineprotected |
Definition at line 41 of file TTreeReaderArray.h.
|
protected |
Definition at line 50 of file TTreeReaderArray.h.