ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
RooAbsData.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * Package: RooFitCore *
4  * File: $Id: RooAbsData.h,v 1.33 2007/07/16 21:04:28 wouter Exp $
5  * Authors: *
6  * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7  * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8  * *
9  * Copyright (c) 2000-2005, Regents of the University of California *
10  * and Stanford University. All rights reserved. *
11  * *
12  * Redistribution and use in source and binary forms, *
13  * with or without modification, are permitted according to the terms *
14  * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15  *****************************************************************************/
16 #ifndef ROO_ABS_DATA
17 #define ROO_ABS_DATA
18 
19 #include "TNamed.h"
20 #include "RooPrintable.h"
21 #include "RooArgSet.h"
22 #include "RooFormulaVar.h"
23 #include <math.h>
24 #include "TMatrixDSym.h"
25 
26 class RooAbsArg;
27 class RooAbsReal ;
28 class RooAbsCategory ;
29 class Roo1DTable ;
30 class RooPlot;
31 class RooArgList;
32 class TH1;
33 class RooAbsBinning ;
34 class Roo1DTable ;
35 class RooAbsDataStore ;
36 
37 class RooAbsData : public TNamed, public RooPrintable {
38 public:
39 
40  // Constructors, factory methods etc.
41  RooAbsData() ;
42  RooAbsData(const char *name, const char *title, const RooArgSet& vars, RooAbsDataStore* store=0) ;
43  RooAbsData(const RooAbsData& other, const char* newname = 0) ;
44  virtual ~RooAbsData() ;
45  virtual RooAbsData* emptyClone(const char* newName=0, const char* newTitle=0, const RooArgSet* vars=0, const char* wgtVarName=0) const = 0 ;
46 
47  // Reduction methods
48  RooAbsData* reduce(const RooCmdArg& arg1,const RooCmdArg& arg2=RooCmdArg(),const RooCmdArg& arg3=RooCmdArg(),const RooCmdArg& arg4=RooCmdArg(),
49  const RooCmdArg& arg5=RooCmdArg(),const RooCmdArg& arg6=RooCmdArg(),const RooCmdArg& arg7=RooCmdArg(),const RooCmdArg& arg8=RooCmdArg()) ;
50  RooAbsData* reduce(const char* cut) ;
51  RooAbsData* reduce(const RooFormulaVar& cutVar) ;
52  RooAbsData* reduce(const RooArgSet& varSubset, const char* cut=0) ;
53  RooAbsData* reduce(const RooArgSet& varSubset, const RooFormulaVar& cutVar) ;
54 
55  RooAbsDataStore* store() { return _dstore ; }
56  const RooAbsDataStore* store() const { return _dstore ; }
57  const TTree* tree() const ;
58 
59  void convertToVectorStore() ;
60 
61  void attachBuffers(const RooArgSet& extObs) ;
62  void resetBuffers() ;
63 
64 
65  virtual void Draw(Option_t* option = "") ;
66 
67  void checkInit() const ;
68 
69  // Change name of observable
70  virtual Bool_t changeObservableName(const char* from, const char* to) ;
71 
72  // Add one ore more rows of data
73  virtual void add(const RooArgSet& row, Double_t weight=1, Double_t weightError=0) = 0 ; // DERIVED
74  virtual void fill() ;
75 
76  // Load a given row of data
77  virtual inline const RooArgSet* get() const {
78  // Return current row of dataset
79  return &_vars ;
80  }
81  virtual Double_t weight() const = 0 ; // DERIVED
82  virtual Double_t weightSquared() const = 0 ; // DERIVED
83  virtual Bool_t valid() const { return kTRUE ; }
85  virtual Double_t weightError(ErrorType etype=Poisson) const ;
86  virtual void weightError(Double_t& lo, Double_t& hi, ErrorType etype=Poisson) const ;
87  virtual const RooArgSet* get(Int_t index) const ;
88 
89  virtual Int_t numEntries() const ;
90  virtual Double_t sumEntries() const = 0 ;
91  virtual Double_t sumEntries(const char* cutSpec, const char* cutRange=0) const = 0 ; // DERIVED
92  virtual Bool_t isWeighted() const {
93  // Do events in dataset have weights?
94  return kFALSE ;
95  }
96  virtual Bool_t isNonPoissonWeighted() const {
97  // Do events in dataset have non-integer weights?
98  return kFALSE ;
99  }
100  virtual void reset() ;
101 
102 
103  Bool_t getRange(RooRealVar& var, Double_t& lowest, Double_t& highest, Double_t marginFrac=0, Bool_t symMode=kFALSE) const ;
104 
105  // Plot the distribution of a real valued arg
106  virtual Roo1DTable* table(const RooArgSet& catSet, const char* cuts="", const char* opts="") const ;
107  virtual Roo1DTable* table(const RooAbsCategory& cat, const char* cuts="", const char* opts="") const ;
108  virtual RooPlot* plotOn(RooPlot* frame,
109  const RooCmdArg& arg1=RooCmdArg::none(), const RooCmdArg& arg2=RooCmdArg::none(),
110  const RooCmdArg& arg3=RooCmdArg::none(), const RooCmdArg& arg4=RooCmdArg::none(),
111  const RooCmdArg& arg5=RooCmdArg::none(), const RooCmdArg& arg6=RooCmdArg::none(),
112  const RooCmdArg& arg7=RooCmdArg::none(), const RooCmdArg& arg8=RooCmdArg::none()) const ;
113 
114  virtual RooPlot* plotOn(RooPlot* frame, const RooLinkedList& cmdList) const ;
115 
116  // WVE --- This needs to be public to avoid CINT problems
117  struct PlotOpt {
120  scaleFactor(1.) {} ;
121  const char* cuts ;
125  const char* cutRange ;
126  const char* histName ;
128  const char* addToHistName ;
135  } ;
136 
137  // Split a dataset by a category
138  virtual TList* split(const RooAbsCategory& splitCat, Bool_t createEmptyDataSets=kFALSE) const ;
139 
140  // Fast splitting for SimMaster setData
141  Bool_t canSplitFast() const ;
142  RooAbsData* getSimData(const char* idxstate) ;
143 
144  // Create 1,2, and 3D histograms from and fill it
145  TH1 *createHistogram(const char *name, const RooAbsRealLValue& xvar,
146  const RooCmdArg& arg1=RooCmdArg::none(), const RooCmdArg& arg2=RooCmdArg::none(),
147  const RooCmdArg& arg3=RooCmdArg::none(), const RooCmdArg& arg4=RooCmdArg::none(),
148  const RooCmdArg& arg5=RooCmdArg::none(), const RooCmdArg& arg6=RooCmdArg::none(),
149  const RooCmdArg& arg7=RooCmdArg::none(), const RooCmdArg& arg8=RooCmdArg::none()) const ;
150  TH1* createHistogram(const char *name, const RooAbsRealLValue& xvar, const RooLinkedList& argList) const ;
151  TH1 *createHistogram(const char* varNameList, Int_t xbins=0, Int_t ybins=0, Int_t zbins=0) const ;
152 
153  // Fill an existing histogram
154  virtual TH1 *fillHistogram(TH1 *hist, const RooArgList &plotVars, const char *cuts= "", const char* cutRange=0) const;
155 
156  // Printing interface (human readable)
157  inline virtual void Print(Option_t *options= 0) const {
158  // Print contents on stdout
160  }
161 
162  virtual void printName(std::ostream& os) const ;
163  virtual void printTitle(std::ostream& os) const ;
164  virtual void printClassName(std::ostream& os) const ;
165  void printMultiline(std::ostream& os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const ;
166 
167  virtual Int_t defaultPrintContents(Option_t* opt) const ;
168 
169  void setDirtyProp(Bool_t flag) ;
170 
171  Double_t moment(RooRealVar &var, Double_t order, const char* cutSpec=0, const char* cutRange=0) const ;
172  Double_t moment(RooRealVar &var, Double_t order, Double_t offset, const char* cutSpec=0, const char* cutRange=0) const ;
173  Double_t standMoment(RooRealVar &var, Double_t order, const char* cutSpec=0, const char* cutRange=0) const ;
174 
175  Double_t mean(RooRealVar& var, const char* cutSpec=0, const char* cutRange=0) const { return moment(var,1,0,cutSpec,cutRange) ; }
176  Double_t sigma(RooRealVar& var, const char* cutSpec=0, const char* cutRange=0) const { return sqrt(moment(var,2,cutSpec,cutRange)) ; }
177  Double_t skewness(RooRealVar& var, const char* cutSpec=0, const char* cutRange=0) const { return standMoment(var,3,cutSpec,cutRange) ; }
178  Double_t kurtosis(RooRealVar& var, const char* cutSpec=0, const char* cutRange=0) const { return standMoment(var,4,cutSpec,cutRange) ; }
179 
180  Double_t covariance(RooRealVar &x,RooRealVar &y, const char* cutSpec=0, const char* cutRange=0) const { return corrcov(x,y,cutSpec,cutRange,kFALSE) ; }
181  Double_t correlation(RooRealVar &x,RooRealVar &y, const char* cutSpec=0, const char* cutRange=0) const { return corrcov(x,y,cutSpec,cutRange,kTRUE) ; }
182 
183  TMatrixDSym* covarianceMatrix(const char* cutSpec=0, const char* cutRange=0) const { return covarianceMatrix(*get(),cutSpec,cutRange) ; }
184  TMatrixDSym* correlationMatrix(const char* cutSpec=0, const char* cutRange=0) const { return correlationMatrix(*get(),cutSpec,cutRange) ; }
185  TMatrixDSym* covarianceMatrix(const RooArgList& vars, const char* cutSpec=0, const char* cutRange=0) const { return corrcovMatrix(vars,cutSpec,cutRange,kFALSE) ; }
186  TMatrixDSym* correlationMatrix(const RooArgList& vars, const char* cutSpec=0, const char* cutRange=0) const { return corrcovMatrix(vars,cutSpec,cutRange,kTRUE) ; }
187 
188  RooRealVar* meanVar(RooRealVar &var, const char* cutSpec=0, const char* cutRange=0) const ;
189  RooRealVar* rmsVar(RooRealVar &var, const char* cutSpec=0, const char* cutRange=0) const ;
190 
191  virtual RooPlot* statOn(RooPlot* frame,
192  const RooCmdArg& arg1=RooCmdArg::none(), const RooCmdArg& arg2=RooCmdArg::none(),
193  const RooCmdArg& arg3=RooCmdArg::none(), const RooCmdArg& arg4=RooCmdArg::none(),
194  const RooCmdArg& arg5=RooCmdArg::none(), const RooCmdArg& arg6=RooCmdArg::none(),
195  const RooCmdArg& arg7=RooCmdArg::none(), const RooCmdArg& arg8=RooCmdArg::none()) ;
196 
197  virtual RooPlot* statOn(RooPlot* frame, const char *what,
198  const char *label= "", Int_t sigDigits= 2,
199  Option_t *options= "NELU", Double_t xmin=0.15,
200  Double_t xmax= 0.65,Double_t ymax=0.85,
201  const char* cutSpec=0, const char* cutRange=0,
202  const RooCmdArg* formatCmd=0);
203 
204 
205 
206  Bool_t hasFilledCache() const ;
207 
208  void addOwnedComponent(const char* idxlabel, RooAbsData& data) ;
209  static void claimVars(RooAbsData*) ;
210  static Bool_t releaseVars(RooAbsData*) ;
211 
213 
214  static void setDefaultStorageType(StorageType s) ;
215 
217 
218 protected:
219 
221 
222  Double_t corrcov(RooRealVar &x,RooRealVar &y, const char* cutSpec, const char* cutRange, Bool_t corr) const ;
223  TMatrixDSym* corrcovMatrix(const RooArgList& vars, const char* cutSpec, const char* cutRange, Bool_t corr) const ;
224 
225  virtual void optimizeReadingWithCaching(RooAbsArg& arg, const RooArgSet& cacheList, const RooArgSet& keepObsList) ;
227 
228 
229  // PlotOn implementation
230  virtual RooPlot *plotOn(RooPlot *frame, PlotOpt o) const ;
231  virtual RooPlot *plotAsymOn(RooPlot* frame, const RooAbsCategoryLValue& asymCat, PlotOpt o) const ;
232  virtual RooPlot *plotEffOn(RooPlot* frame, const RooAbsCategoryLValue& effCat, PlotOpt o) const ;
233 
234 
235  // Constant term optimizer interface
236  friend class RooAbsArg ;
237  friend class RooAbsReal ;
238  friend class RooAbsOptTestStatistic ;
239  friend class RooAbsCachedPdf ;
240 
241  virtual void cacheArgs(const RooAbsArg* owner, RooArgSet& varSet, const RooArgSet* nset=0, Bool_t skipZeroWeights=kFALSE) ;
242  virtual void resetCache() ;
243  virtual void setArgStatus(const RooArgSet& set, Bool_t active) ;
244  virtual void attachCache(const RooAbsArg* newOwner, const RooArgSet& cachedVars) ;
245 
246  virtual RooAbsData* cacheClone(const RooAbsArg* newCacheOwner, const RooArgSet* newCacheVars, const char* newName=0) = 0 ; // DERIVED
247  virtual RooAbsData* reduceEng(const RooArgSet& varSubset, const RooFormulaVar* cutVar, const char* cutRange=0,
248  Int_t nStart=0, Int_t nStop=2000000000, Bool_t copyCache=kTRUE) = 0 ; // DERIVED
249 
250  RooRealVar* dataRealVar(const char* methodname, RooRealVar& extVar) const ;
251 
252  // Column structure definition
253  RooArgSet _vars; // Dimensions of this data set
254  RooArgSet _cachedVars ; //! External variables cached with this data set
255 
256  TIterator *_iterator; //! Iterator over dimension variables
257  TIterator *_cacheIter ; //! Iterator over cached variables
258 
259  RooAbsDataStore* _dstore ; // Data storage implementation
260 
261  std::map<std::string,RooAbsData*> _ownedComponents ; // Owned external components
262 
263 private:
264 
265  ClassDef(RooAbsData,4) // Abstract data collection
266 };
267 
268 #endif
virtual Double_t sumEntries() const =0
tuple row
Definition: mrt.py:26
Double_t skewness(RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:177
void addOwnedComponent(const char *idxlabel, RooAbsData &data)
float xmin
Definition: THbookFile.cxx:93
const TTree * tree() const
RooAbsDataStore is the abstract base class for data collection that use a TTree as internal storage m...
virtual void optimizeReadingWithCaching(RooAbsArg &arg, const RooArgSet &cacheList, const RooArgSet &keepObsList)
Prepare dataset for use with cached constant terms listed in 'cacheList' of expression 'arg'...
RooRealVar * dataRealVar(const char *methodname, RooRealVar &extVar) const
Internal method to check if given RooRealVar maps to a RooRealVar in this dataset.
Double_t correlation(RooRealVar &x, RooRealVar &y, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:181
RooAbsData * getSimData(const char *idxstate)
virtual Roo1DTable * table(const RooArgSet &catSet, const char *cuts="", const char *opts="") const
Construct table for product of categories in catSet.
Definition: RooAbsData.cxx:835
virtual void printStream(std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
Print description of object on ostream, printing contents set by contents integer, which is interpreted as an OR of 'enum ContentsOptions' values and in the style given by 'enum StyleOption'.
const char Option_t
Definition: RtypesCore.h:62
tuple offset
Definition: tree.py:93
virtual Bool_t valid() const
Definition: RooAbsData.h:83
virtual Int_t defaultPrintContents(Option_t *opt) const
Define default print options, for a given print style.
Definition: RooAbsData.cxx:908
void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Interface for detailed printing of object.
Definition: RooAbsData.cxx:897
void convertToVectorStore()
Convert tree-based storage to vector-based storage.
Definition: RooAbsData.cxx:251
virtual Bool_t changeObservableName(const char *from, const char *to)
Definition: RooAbsData.cxx:265
virtual void Print(Option_t *options=0) const
Print TNamed name and title.
Definition: RooAbsData.h:157
RooAbsData::ErrorType etype
Definition: RooAbsData.h:124
Double_t addToWgtSelf
Definition: RooAbsData.h:129
Basic string class.
Definition: TString.h:137
void attachBuffers(const RooArgSet &extObs)
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
const char * histName
Definition: RooAbsData.h:126
static void setDefaultStorageType(StorageType s)
Definition: RooAbsData.cxx:77
RooAbsData * reduce(const RooCmdArg &arg1, const RooCmdArg &arg2=RooCmdArg(), const RooCmdArg &arg3=RooCmdArg(), const RooCmdArg &arg4=RooCmdArg(), const RooCmdArg &arg5=RooCmdArg(), const RooCmdArg &arg6=RooCmdArg(), const RooCmdArg &arg7=RooCmdArg(), const RooCmdArg &arg8=RooCmdArg())
Create a reduced copy of this dataset.
Definition: RooAbsData.cxx:399
const Bool_t kFALSE
Definition: Rtypes.h:92
virtual void resetCache()
Internal method – Remove cached function values.
Definition: RooAbsData.cxx:338
TIterator * _iterator
External variables cached with this data set.
Definition: RooAbsData.h:256
virtual StyleOption defaultPrintStyle(Option_t *opt) const
Double_t covariance(RooRealVar &x, RooRealVar &y, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:180
Double_t standMoment(RooRealVar &var, Double_t order, const char *cutSpec=0, const char *cutRange=0) const
Calculate standardized moment < (X - <X>)^n > / sigma^n, where n = order.
Definition: RooAbsData.cxx:922
virtual void copyCache(const RooAbsArg *source, Bool_t valueOnly=kFALSE, Bool_t setValDirty=kTRUE)
Copy the cached value of another RooAbsArg to our cache.
TMatrixDSym * correlationMatrix(const RooArgList &vars, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:186
Iterator abstract base class.
Definition: TIterator.h:32
RooAbsBinning * bins
Definition: RooAbsData.h:123
virtual Double_t weightSquared() const =0
static const RooCmdArg & none()
Return reference to null argument.
Definition: RooCmdArg.cxx:50
double sqrt(double)
Double_t x[n]
Definition: legend1.C:17
virtual void printName(std::ostream &os) const
Print name of dataset.
Definition: RooAbsData.cxx:868
virtual void reset()
Definition: RooAbsData.cxx:304
virtual void attachCache(const RooAbsArg *newOwner, const RooArgSet &cachedVars)
Internal method – Attach dataset copied with cache contents to copied instances of functions...
Definition: RooAbsData.cxx:349
virtual RooAbsData * emptyClone(const char *newName=0, const char *newTitle=0, const RooArgSet *vars=0, const char *wgtVarName=0) const =0
#define ClassDef(name, id)
Definition: Rtypes.h:254
RooPlotable is a 'mix-in' base class that define the standard RooFit plotting and printing methods...
Definition: RooPrintable.h:26
The TNamed class is the base class for all named ROOT classes.
Definition: TNamed.h:33
Double_t scaleFactor
Definition: RooAbsData.h:134
const char * addToHistName
Definition: RooAbsData.h:128
virtual void Draw(Option_t *option="")
Forward draw command to data store.
Double_t sigma(RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:176
virtual Bool_t isWeighted() const
Definition: RooAbsData.h:92
virtual ~RooAbsData()
Destructor.
Definition: RooAbsData.cxx:225
virtual RooPlot * plotOn(RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
Plot dataset on specified frame.
Definition: RooAbsData.cxx:626
RooAbsCategoryLValue is the common abstract base class for objects that represent a discrete value th...
virtual void add(const RooArgSet &row, Double_t weight=1, Double_t weightError=0)=0
RooAbsData()
Default constructor.
Definition: RooAbsData.cxx:117
RooRealVar represents a fundamental (non-derived) real valued object.
Definition: RooRealVar.h:37
A doubly linked list.
Definition: TList.h:47
static const char * what
Definition: stlLoader.cc:6
void checkInit() const
float ymax
Definition: THbookFile.cxx:93
virtual void printTitle(std::ostream &os) const
Print title of dataset.
Definition: RooAbsData.cxx:878
RooArgSet _cachedVars
Definition: RooAbsData.h:254
Double_t mean(RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:175
virtual void setArgStatus(const RooArgSet &set, Bool_t active)
Definition: RooAbsData.cxx:363
Double_t addToWgtOther
Definition: RooAbsData.h:130
virtual RooPlot * statOn(RooPlot *frame, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none())
Add a box with statistics information to the specified frame.
Double_t kurtosis(RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:178
virtual Int_t numEntries() const
Definition: RooAbsData.cxx:293
virtual RooPlot * plotAsymOn(RooPlot *frame, const RooAbsCategoryLValue &asymCat, PlotOpt o) const
Create and fill a histogram with the asymmetry N[+] - N[-] / ( N[+] + N[-] ), where N(+/-) is the num...
TMatrixDSym * covarianceMatrix(const RooArgList &vars, const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:185
bool verbose
RooAbsData is the common abstract base class for binned and unbinned datasets.
Definition: RooAbsData.h:37
float xmax
Definition: THbookFile.cxx:93
TH1 * createHistogram(const char *name, const RooAbsRealLValue &xvar, const RooCmdArg &arg1=RooCmdArg::none(), const RooCmdArg &arg2=RooCmdArg::none(), const RooCmdArg &arg3=RooCmdArg::none(), const RooCmdArg &arg4=RooCmdArg::none(), const RooCmdArg &arg5=RooCmdArg::none(), const RooCmdArg &arg6=RooCmdArg::none(), const RooCmdArg &arg7=RooCmdArg::none(), const RooCmdArg &arg8=RooCmdArg::none()) const
Create and fill a ROOT histogram TH1,TH2 or TH3 with the values of this dataset.
Definition: RooAbsData.cxx:735
TMatrixDSym * corrcovMatrix(const RooArgList &vars, const char *cutSpec, const char *cutRange, Bool_t corr) const
Return covariance matrix from data for given list of observables.
virtual void fill()
Definition: RooAbsData.cxx:282
Option_t * drawOptions
Definition: RooAbsData.h:122
static void indent(ostringstream &buf, int indent_level)
RooAbsDataStore * store()
Definition: RooAbsData.h:55
RooRealVar * rmsVar(RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
Create a RooRealVar containing the RMS of observable 'var' in this dataset.
Double_t corrcov(RooRealVar &x, RooRealVar &y, const char *cutSpec, const char *cutRange, Bool_t corr) const
Internal method to calculate single correlation and covariance elements.
virtual RooAbsData * reduceEng(const RooArgSet &varSubset, const RooFormulaVar *cutVar, const char *cutRange=0, Int_t nStart=0, Int_t nStop=2000000000, Bool_t copyCache=kTRUE)=0
Double_t moment(RooRealVar &var, Double_t order, const char *cutSpec=0, const char *cutRange=0) const
Calculate moment < (X - <X>)^n > where n = order.
Definition: RooAbsData.cxx:940
Bool_t getRange(RooRealVar &var, Double_t &lowest, Double_t &highest, Double_t marginFrac=0, Bool_t symMode=kFALSE) const
Fill Doubles 'lowest' and 'highest' with the lowest and highest value of observable 'var' in this dat...
void resetBuffers()
A RooPlot is a plot frame and a container for graphics objects within that frame. ...
Definition: RooPlot.h:41
virtual void printClassName(std::ostream &os) const
Print class name of dataset.
Definition: RooAbsData.cxx:888
RooLinkedList is an collection class for internal use, storing a collection of RooAbsArg pointers in ...
Definition: RooLinkedList.h:35
static std::ostream & defaultPrintStream(std::ostream *os=0)
Return a reference to the current default stream to use in Print().
RooAbsBinning is the abstract base class for RooRealVar binning definitions This class defines the in...
Definition: RooAbsBinning.h:26
RooRealVar * meanVar(RooRealVar &var, const char *cutSpec=0, const char *cutRange=0) const
Create a RooRealVar containing the mean of observable 'var' in this dataset.
static StorageType getDefaultStorageType()
Definition: RooAbsData.cxx:85
RooAbsCachedPdf is the abstract base class for p.d.f.s that need or want to cache their evaluate() ou...
double Double_t
Definition: RtypesCore.h:55
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Definition: RooAbsReal.h:53
RooAbsDataStore * _dstore
Iterator over cached variables.
Definition: RooAbsData.h:259
TMatrixDSym * covarianceMatrix(const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:183
virtual Bool_t isNonPoissonWeighted() const
Definition: RooAbsData.h:96
const char * cutRange
Definition: RooAbsData.h:125
Double_t y[n]
Definition: legend1.C:17
virtual void cacheArgs(const RooAbsArg *owner, RooArgSet &varSet, const RooArgSet *nset=0, Bool_t skipZeroWeights=kFALSE)
Internal method – Cache given set of functions with data.
Definition: RooAbsData.cxx:326
The TH1 histogram class.
Definition: TH1.h:80
static Bool_t releaseVars(RooAbsData *)
If return value is true variables can be deleted.
Definition: RooAbsData.cxx:103
virtual TList * split(const RooAbsCategory &splitCat, Bool_t createEmptyDataSets=kFALSE) const
Split dataset into subsets based on states of given splitCat in this dataset.
virtual RooPlot * plotEffOn(RooPlot *frame, const RooAbsCategoryLValue &effCat, PlotOpt o) const
Create and fill a histogram with the effiency N[1] / ( N[1] + N[0] ), where N(1/0) is the number of d...
virtual TH1 * fillHistogram(TH1 *hist, const RooArgList &plotVars, const char *cuts="", const char *cutRange=0) const
Loop over columns of our tree data and fill the input histogram.
static StorageType defaultStorageType
Definition: RooAbsData.h:220
std::map< std::string, RooAbsData * > _ownedComponents
Definition: RooAbsData.h:261
static void claimVars(RooAbsData *)
Definition: RooAbsData.cxx:93
RooAbsRealLValue is the common abstract base class for objects that represent a real value that may a...
RooAbsCategory is the common abstract base class for objects that represent a discrete value with a f...
virtual Double_t weight() const =0
Bool_t canSplitFast() const
Bool_t hasFilledCache() const
A TTree object has a header with a name and a title.
Definition: TTree.h:98
float type_of_call hi(const int &, const int &)
virtual Double_t weightError(ErrorType etype=Poisson) const
Return error on current weight (dummy implementation returning zero)
Definition: RooAbsData.cxx:566
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
Definition: RooAbsArg.h:66
RooArgSet _vars
Definition: RooAbsData.h:253
const Bool_t kTRUE
Definition: Rtypes.h:91
const RooAbsDataStore * store() const
Definition: RooAbsData.h:56
Roo1DTable implements a one-dimensional table.
Definition: Roo1DTable.h:25
TMatrixDSym * correlationMatrix(const char *cutSpec=0, const char *cutRange=0) const
Definition: RooAbsData.h:184
virtual RooAbsData * cacheClone(const RooAbsArg *newCacheOwner, const RooArgSet *newCacheVars, const char *newName=0)=0
const char * cuts
Definition: RooAbsData.h:120
Bool_t allClientsCached(RooAbsArg *, const RooArgSet &)
Utility function that determines if all clients of object 'var' appear in given list of cached nodes...
TIterator * _cacheIter
Iterator over dimension variables.
Definition: RooAbsData.h:257
RooAbsOptTestStatistic is the abstract base class for test statistics objects that evaluate a functio...
void setDirtyProp(Bool_t flag)
Control propagation of dirty flags from observables in dataset.
Definition: RooAbsData.cxx:374
RooCmdArg is a named container for two doubles, two integers two object points and three string point...
Definition: RooCmdArg.h:27
Bool_t correctForBinWidth
Definition: RooAbsData.h:133