16#ifndef ROO_TREE_DATA_STORE 
   17#define ROO_TREE_DATA_STORE 
   71  double weight() 
const override ;
 
   78    std::cerr << 
"This functionality is not yet implemented for tree data stores." << std::endl;
 
   79    throw std::logic_error(
"getBatches() not implemented in RooTreeDataStore.");
 
   80    (void)first; (void)
len;
 
 
   83  std::span<const double> 
getWeightBatch(std::size_t first, std::size_t 
len) 
const override;
 
  100  void reset() 
override ;
 
  119      std::size_t 
nStart=0, std::size_t 
nStop = std::numeric_limits<std::size_t>::max()) 
override;
 
 
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
 
#define ClassDefOverride(name, id)
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t index
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t UChar_t len
 
Common abstract base class for objects that represent a value and a "shape" in RooFit.
 
Abstract base class for a data collection.
 
const RooArgSet & cachedVars() const
 
virtual double weight() const =0
 
virtual const RooArgSet * get() const
 
std::map< RooFit::Detail::DataKey, std::span< const double > > RealSpans
 
RooArgList is a container object that can hold multiple RooAbsArg objects.
 
RooArgSet is a container object that can hold multiple RooAbsArg objects.
 
Variable that can be changed from the outside.
 
The RooStringView is a wrapper around a C-style string that can also be constructed from a std::strin...
 
TTree-backed data storage.
 
void initialize()
One-time initialization common to all constructor forms.
 
double _curWgtErr
Weight of current event.
 
double weightError(RooAbsData::ErrorType etype=RooAbsData::Poisson) const override
 
bool isWeighted() const override
 
void resetBuffers() override
 
RooAbsDataStore * clone(const char *newname=nullptr) const override
 
double _curWgt
Buffer for weights in case a batch of values is requested.
 
void attachCache(const RooAbsArg *newOwner, const RooArgSet &cachedVars) override
Initialize cache of dataset: attach variables of cache ArgSet to the corresponding TTree branches.
 
double _curWgtErrHi
Weight of current event.
 
Int_t numEntries() const override
 
std::string makeTreeName() const
Generate a name for the storage tree from the name and title of this instance.
 
RooArgSet varsNoWeight(const RooArgSet &allVars, const char *wgtName=nullptr)
Utility function for constructors Return RooArgSet that is copy of allVars minus variable matching wg...
 
~RooTreeDataStore() override
Destructor.
 
RooAbsDataStore * clone(const RooArgSet &vars, const char *newname=nullptr) const override
 
void createTree(RooStringView name, RooStringView title)
Create TTree object that lives in memory, independent of current location of gDirectory.
 
const double * _extWgtErrHiArray
! External weight array - high error
 
void setBranchBufferSize(Int_t size)
 
void attachBuffers(const RooArgSet &extObs) override
 
RooAbsDataStore * merge(const RooArgSet &allvars, std::list< RooAbsDataStore * > dstoreList) override
Merge columns of supplied data set(s) with this data set.
 
static Int_t _defTreeBufSize
 
RooArgSet _attachedBuffers
! Currently attached buffers (if different from _varsww)
 
Int_t fill() override
Interface function to TTree::Fill.
 
double sumEntries() const override
 
std::unique_ptr< RooAbsDataStore > reduce(RooStringView name, RooStringView title, const RooArgSet &vars, const RooFormulaVar *cutVar, const char *cutRange, std::size_t nStart, std::size_t nStop) override
 
bool _defCtor
Object owning cache contents.
 
RooAbsArg * addColumn(RooAbsArg &var, bool adjustRange=true) override
Add a new column to the data set which holds the pre-calculated values of 'newVar'.
 
double weight() const override
Return the weight of the n-th data point (n='index') in memory.
 
void restoreAlternateBuffers()
 
void loadValues(const TTree *t, const RooFormulaVar *select=nullptr, const char *rangeName=nullptr, Int_t nStart=0, Int_t nStop=2000000000)
Load values from tree 't' into this data collection, optionally selecting events using the RooFormula...
 
void append(RooAbsDataStore &other) override
 
const RooAbsArg * cacheOwner() override
 
Int_t getBranchBufferSize() const
 
std::span< const double > getWeightBatch(std::size_t first, std::size_t len) const override
Get the weights of the events in the range [first, first+len).
 
const double * _extWgtErrLoArray
! External weight array - low error
 
void checkInit() const override
 
RooAbsData::RealSpans getBatches(std::size_t first, std::size_t len) const override
Retrieve batches for all observables in this data store.
 
std::unique_ptr< std::vector< double > > _weightBuffer
 
const double * _extSumW2Array
! External sum of weights array
 
RooRealVar * weightVar(const RooArgSet &allVars, const char *wgtName=nullptr)
Utility function for constructors Return pointer to weight variable if it is defined.
 
const double * _extWgtArray
! External weight array
 
double _curWgtErrLo
Weight of current event.
 
bool changeObservableName(const char *from, const char *to) override
Change name of internal observable named 'from' into 'to'.
 
TTree const * tree() const
 
void resetCache() override
Remove tree with values of cached observables and clear list of cached observables.
 
void setArgStatus(const RooArgSet &set, bool active) override
Activate or deactivate the branch status of the TTree branch associated with the given set of dataset...
 
void cacheArgs(const RooAbsArg *owner, RooArgSet &varSet, const RooArgSet *nset=nullptr, bool skipZeroWeights=false) override
Cache given RooAbsArgs with this tree: The tree is given direct write access of the args internal cac...
 
virtual const RooArgSet * get() const
 
const RooAbsArg * _cacheOwner
TTree holding the cached function values.
 
RooArgSet _varsww
Was object constructed with default ctor?
 
void setExternalWeightArray(const double *arrayWgt, const double *arrayWgtErrLo, const double *arrayWgtErrHi, const double *arraySumW2) override
 
Uses std::vector to store data columns.
 
A TTree represents a columnar dataset.