15#ifndef RooFit_TreeReadBuffer_h
16#define RooFit_TreeReadBuffer_h
20struct TreeReadBuffer {
21 virtual ~TreeReadBuffer() =
default;
22 virtual operator double() = 0;
23 virtual operator int() = 0;
28struct TypedTreeReadBuffer final :
public TreeReadBuffer {
29 operator double()
override {
return _value; }
30 operator int()
override {
return _value; }
39std::unique_ptr<TreeReadBuffer> createTreeReadBuffer(
const TString &branchName,
TTree &tree)
41 auto buf =
new TypedTreeReadBuffer<T>();
43 return std::unique_ptr<TreeReadBuffer>(buf);
const char * Data() const
A TTree represents a columnar dataset.
virtual Int_t SetBranchAddress(const char *bname, void *add, TBranch **ptr, TClass *realClass, EDataType datatype, bool isptr, bool suppressMissingBranchError)