12#ifndef ROOT_TTreeReaderValueFast
13#define ROOT_TTreeReaderValueFast
35namespace Experimental {
144 virtual const char *
GetTypeName()
override {
return "{INCOMPLETE}";}
234 virtual const char *
GetTypeName()
override {
return "unsigned integer";}
257 virtual const char *
GetTypeName()
override {
return "unsigned integer";}
void frombuf(char *&buf, Bool_t *x)
#define R__unlikely(expr)
Int_t GetEntriesSerialized(Long64_t evt, TBuffer &user_buf)
virtual const char * GetTypeName()
TTreeReaderFast * fTreeReader
void CreateProxy()
Attach this value to the appropriate branch on the tree.
ROOT::Internal::TTreeReaderValueBase::ESetupStatus fSetupStatus
Long64_t fLastChainOffset
virtual Int_t Adjust(Int_t eventCount)
void MarkTreeReaderUnavailable()
TTreeReaderValueFastBase(const TTreeReaderValueFastBase &)=delete
TTreeReaderValueFastBase(TTreeReaderFast *reader, const std::string &branchName)
Construct a tree value reader and register it with the reader object.
ROOT::Internal::TTreeReaderValueBase::ESetupStatus GetSetupStatus() const
virtual UInt_t GetSize()=0
virtual const char * BranchTypeName()=0
virtual ~TTreeReaderValueFastBase()
Unregister from tree reader, cleanup.
ROOT::Internal::TTreeReaderValueBase::EReadStatus fReadStatus
virtual ROOT::Internal::TTreeReaderValueBase::EReadStatus GetReadStatus() const
Int_t GetEvents(Long64_t eventNum)
void RegisterValueReader(ROOT::Experimental::Internal::TTreeReaderValueFastBase *reader)
Add a value reader for this tree.
TTreeReaderValueFast(TTreeReaderFast &tr, const std::string &branchname)
virtual UInt_t GetSize() override
virtual const char * BranchTypeName() override
virtual const char * GetTypeName() override
Bool_t * Deserialize(char *input)
virtual const char * GetTypeName() override
virtual const char * BranchTypeName() override
virtual UInt_t GetSize() override
TTreeReaderValueFast(TTreeReaderFast &tr, const std::string &branchname)
Int_t * Deserialize(char *input)
virtual UInt_t GetSize() override
virtual const char * BranchTypeName() override
virtual const char * GetTypeName() override
TTreeReaderValueFast(TTreeReaderFast &tr, const std::string &branchname)
UInt_t * Deserialize(char *input)
virtual const char * GetTypeName() override
virtual UInt_t GetSize() override
virtual const char * BranchTypeName() override
TTreeReaderValueFast(TTreeReaderFast &tr, const std::string &branchname)
double * Deserialize(char *input)
virtual const char * GetTypeName() override
float * Deserialize(char *input)
virtual const char * BranchTypeName() override
virtual UInt_t GetSize() override
TTreeReaderValueFast(TTreeReaderFast &tr, const std::string &branchname)
virtual UInt_t GetSize() override
virtual const char * GetTypeName() override
TTreeReaderValueFast(TTreeReaderFast *reader, const std::string &branchname)
A TTree is a list of TBranches.
ROOT::Experimental::Internal::TBulkBranchRead & GetBulkRead()
The concrete implementation of TBuffer for writing/reading to/from a ROOT file or socket.
Buffer base class used for serializing objects.
char * GetCurrent() const
void SetBufferOffset(Int_t offset=0)
A TLeaf describes individual elements of a TBranch See TBranch structure in TTree.
Namespace for new ROOT classes and functions.