57 #if (__GNUC__==3&&__GNUC_MINOR__==2&&__GNUC_PATCHLEVEL__==3) 70 #define POOLSIZE 1048576 84 std::list<POOLDATA>::iterator iter =
_memPoolList.begin() ;
103 void* RooDataSet::operator
new (
size_t bytes)
107 if (!_poolBegin || _poolCur + (
sizeof(
RooDataSet)) >= _poolEnd) {
109 if (_poolBegin != 0) {
122 if ((*(
Int_t *)(poolIter->_base)) == 0) {
124 <<
"RooDataSet::operator new(), pruning empty memory pool " << (
void *)(poolIter->_base) << endl;
126 toFree = poolIter->_base;
138 _poolBegin = (
char *)mem;
140 _poolCur = _poolBegin +
sizeof(
Int_t);
144 *((
Int_t *)_poolBegin) = 0;
153 char* ptr = _poolCur ;
157 (*((
Int_t*)_poolBegin))++ ;
168 void RooDataSet::operator
delete (
void* ptr)
172 if ((
char*)ptr > (
char*)poolIter->_base && (
char*)ptr < (
char*)poolIter->_base +
POOLSIZE) {
173 (*(
Int_t*)(poolIter->_base))-- ;
241 RooAbsData(
name,title,
RooArgSet(vars,(
RooAbsArg*)
RooCmdConfig::decodeObjOnTheFly(
"RooDataSet::RooDataSet",
"IndexCat",0,0,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8)))
245 pc.defineInt(
"ownLinked",
"OwnLinked",0) ;
246 pc.defineObject(
"impTree",
"ImportTree",0) ;
247 pc.defineObject(
"impData",
"ImportData",0) ;
248 pc.defineObject(
"indexCat",
"IndexCat",0) ;
249 pc.defineObject(
"impSliceData",
"ImportDataSlice",0,0,
kTRUE) ;
250 pc.defineString(
"impSliceState",
"ImportDataSlice",0,
"",
kTRUE) ;
251 pc.defineObject(
"lnkSliceData",
"LinkDataSlice",0,0,
kTRUE) ;
252 pc.defineString(
"lnkSliceState",
"LinkDataSlice",0,
"",
kTRUE) ;
253 pc.defineString(
"cutSpec",
"CutSpec",0,
"") ;
254 pc.defineObject(
"cutVar",
"CutVar",0) ;
255 pc.defineString(
"cutRange",
"CutRange",0,
"") ;
256 pc.defineString(
"wgtVarName",
"WeightVarName",0,
"") ;
257 pc.defineInt(
"newWeight1",
"WeightVarName",0,0) ;
258 pc.defineString(
"fname",
"ImportFromFile",0,
"") ;
259 pc.defineString(
"tname",
"ImportFromFile",1,
"") ;
260 pc.defineObject(
"wgtVar",
"WeightVar",0) ;
261 pc.defineInt(
"newWeight2",
"WeightVar",0,0) ;
262 pc.defineObject(
"dummy1",
"ImportDataSliceMany",0) ;
263 pc.defineObject(
"dummy2",
"LinkDataSliceMany",0) ;
264 pc.defineSet(
"errorSet",
"StoreError",0) ;
265 pc.defineSet(
"asymErrSet",
"StoreAsymError",0) ;
266 pc.defineMutex(
"ImportTree",
"ImportData",
"ImportDataSlice",
"LinkDataSlice",
"ImportFromFile") ;
267 pc.defineMutex(
"CutSpec",
"CutVar") ;
268 pc.defineMutex(
"WeightVarName",
"WeightVar") ;
269 pc.defineDependency(
"ImportDataSlice",
"IndexCat") ;
270 pc.defineDependency(
"LinkDataSlice",
"IndexCat") ;
271 pc.defineDependency(
"OwnLinked",
"LinkDataSlice") ;
288 TTree* impTree =
static_cast<TTree*
>(
pc.getObject(
"impTree")) ;
291 const char* cutSpec =
pc.getString(
"cutSpec",
"",
kTRUE) ;
292 const char* cutRange =
pc.getString(
"cutRange",
"",
kTRUE) ;
293 const char* wgtVarName =
pc.getString(
"wgtVarName",
"",
kTRUE) ;
295 const char* impSliceNames =
pc.getString(
"impSliceState",
"",
kTRUE) ;
297 const char* lnkSliceNames =
pc.getString(
"lnkSliceState",
"",
kTRUE) ;
301 RooArgSet* asymErrorSet =
pc.getSet(
"asymErrSet") ;
302 const char* fname =
pc.getString(
"fname") ;
303 const char* tname =
pc.getString(
"tname") ;
304 Int_t ownLinked =
pc.getInt(
"ownLinked") ;
305 Int_t newWeight =
pc.getInt(
"newWeight1") +
pc.getInt(
"newWeight2") ;
311 map<string,RooAbsData*> hmap ;
314 strlcpy(tmp, lnkSliceNames, 64000);
315 char *token = strtok(tmp,
",");
319 token = strtok(0,
",");
327 wgtVarName = wgtVar->
GetName() ;
335 map<string,RooAbsDataStore*> storeMap ;
338 throw std::string(
"RooDataSet::RooDataSet() ERROR in constructor, cannot find index category") ;
340 for (map<string,RooAbsData*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
342 if (indexCat && !indexCat->
lookupType(hiter->first.c_str())) {
346 if (icat && !icat->
lookupType(hiter->first.c_str())) {
349 icat->
setLabel(hiter->first.c_str()) ;
350 storeMap[icat->
getLabel()]=hiter->second->store() ;
364 wgtVarName = wgtVar->
GetName() ;
368 if (!wgtVar && !wgtVarName && impData && impData->
_wgtVar) {
382 if (wgtVarName && newWeight) {
396 map<string,RooDataSet*> hmap ;
399 strlcpy(tmp,impSliceNames,100000) ;
400 char* token = strtok(tmp,
",") ;
404 token = strtok(0,
",") ;
430 delete intAsymErrorSet ;
435 wgtVarName = wgtVar->
GetName() ;
442 if (wgtVarName && *wgtVarName) {
452 }
else if (indexCat) {
466 if (cutSpec && *cutSpec) {
473 for (map<string,RooDataSet*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
475 if (!indexCat->
lookupType(hiter->first.c_str())) {
479 if (!icat->
lookupType(hiter->first.c_str())) {
482 icat->
setLabel(hiter->first.c_str()) ;
484 RooFormulaVar cutVarTmp(cutSpec,cutSpec,hiter->second->_vars) ;
488 }
else if (impData) {
493 }
else if (impTree) {
498 tstore->
loadValues(impTree,&cutVarTmp,cutRange);
501 tmpstore.
loadValues(impTree,&cutVarTmp,cutRange) ;
504 }
else if (fname && strlen(fname)) {
509 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' cannot be opened or does not exist" << endl ;
510 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s cannot be opened or does not exist",
GetName(),fname)) ;
512 TTree* t =
dynamic_cast<TTree*
>(f->Get(tname)) ;
514 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' does not contain a TTree named '" << tname <<
"'" << endl ;
515 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s does not contain a TTree named %s",
GetName(),fname,tname)) ;
537 for (map<string,RooDataSet*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
539 if (!indexCat->
lookupType(hiter->first.c_str())) {
543 if (!icat->
lookupType(hiter->first.c_str())) {
546 icat->
setLabel(hiter->first.c_str()) ;
551 }
else if (impData) {
554 }
else if (impTree) {
560 tmpstore.
loadValues(impTree,cutVar,cutRange) ;
563 }
else if (fname && strlen(fname)) {
567 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' cannot be opened or does not exist" << endl ;
568 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s cannot be opened or does not exist",
GetName(),fname)) ;
570 TTree* t =
dynamic_cast<TTree*
>(f->Get(tname)) ;
572 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' does not contain a TTree named '" << tname <<
"'" << endl ;
573 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s does not contain a TTree named %s",
GetName(),fname,tname)) ;
592 for (map<string,RooDataSet*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
594 if (!indexCat->
lookupType(hiter->first.c_str())) {
598 if (!icat->
lookupType(hiter->first.c_str())) {
601 icat->
setLabel(hiter->first.c_str()) ;
607 }
else if (impData) {
610 }
else if (impTree) {
619 }
else if (fname && strlen(fname)) {
623 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' cannot be opened or does not exist" << endl ;
624 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s cannot be opened or does not exist",
GetName(),fname)) ;
626 TTree* t =
dynamic_cast<TTree*
>(f->Get(tname)) ;
628 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' does not contain a TTree named '" << tname <<
"'" << endl ;
629 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s does not contain a TTree named %s",
GetName(),fname,tname)) ;
683 const RooArgSet& vars,
const char *cuts,
const char* wgtVarName) :
804 const RooArgSet& vars,
const char *selExpr,
const char* wgtVarName) :
852 copyCache, wgtVarName))
859 nStop, copyCache, wgtVarName)));
876 if (wgtVar) tmp.
add(*wgtVar) ;
892 delete selCacheVars ;
908 if (wgtVarName && vars && !
_wgtVar) {
941 << wgtVarName <<
" not found in set of variables, no weighting will be assigned" << endl ;
942 }
else if (!dynamic_cast<RooRealVar*>(wgt)) {
944 << wgtVarName <<
" is not of type RooRealVar, no weighting will be assigned" << endl ;
962 cout <<
"reduceEng varSubset = " << varSubset <<
" _wgtVar = " << (
_wgtVar ?
_wgtVar->
GetName() :
"") << endl;
996 TString title,
name ;
1083 carry = (t - sumw) -
y;
1100 select =
new RooFormula(
"select",cutSpec,*
get()) ;
1113 if (select && select->
eval()==0.) continue ;
1117 carry = (t - sumw) -
y;
1121 if (select)
delete select ;
1240 list<RooDataSet*> dsetList ;
1241 if (data1) dsetList.push_back(data1) ;
1242 if (data2) dsetList.push_back(data2) ;
1243 if (data3) dsetList.push_back(data3) ;
1244 if (data4) dsetList.push_back(data4) ;
1245 if (data5) dsetList.push_back(data5) ;
1246 if (data6) dsetList.push_back(data6) ;
1247 return merge(dsetList) ;
1263 for (list<RooDataSet*>::iterator iter = dsetList.begin() ; iter != dsetList.end() ; iter++) {
1271 list<RooAbsDataStore*> dstoreList ;
1272 for (list<RooDataSet*>::iterator iter = dsetList.begin() ; iter != dsetList.end() ; iter++) {
1274 dstoreList.push_back((*iter)->store()) ;
1367 static Int_t counter(0) ;
1376 <<
" is not in dataset and is also not dependent on data set" << endl ;
1382 ownPlotVarX =
kTRUE ;
1395 <<
" is not in dataset and is also not dependent on data set" << endl ;
1401 ownPlotVarY =
kTRUE ;
1409 if(0 != cuts && strlen(cuts)) {
1411 if (!select || !select->
ok()) {
1417 TString histName(
name);
1418 histName.Prepend(
"_");
1419 histName.Prepend(
fName);
1420 histName.Append(
"_") ;
1421 histName.Append(
Form(
"%08x",counter++)) ;
1433 for(
Int_t i=0; i < nevent; ++i)
1437 if (select && select->
eval()==0)
continue ;
1441 if (ownPlotVarX)
delete plotVarX ;
1442 if (ownPlotVarY)
delete plotVarY ;
1443 if (select)
delete select ;
1493 pc.defineString(
"drawOption",
"DrawOption",0,
"P") ;
1494 pc.defineString(
"histName",
"Name",0,
"") ;
1495 pc.defineInt(
"lineColor",
"LineColor",0,-999) ;
1496 pc.defineInt(
"lineStyle",
"LineStyle",0,-999) ;
1497 pc.defineInt(
"lineWidth",
"LineWidth",0,-999) ;
1498 pc.defineInt(
"markerColor",
"MarkerColor",0,-999) ;
1499 pc.defineInt(
"markerStyle",
"MarkerStyle",0,8) ;
1500 pc.defineDouble(
"markerSize",
"MarkerSize",0,-999) ;
1501 pc.defineInt(
"fillColor",
"FillColor",0,-999) ;
1502 pc.defineInt(
"fillStyle",
"FillStyle",0,-999) ;
1503 pc.defineInt(
"histInvisible",
"Invisible",0,0) ;
1504 pc.defineDouble(
"scaleFactor",
"Rescale",0,1.) ;
1505 pc.defineObject(
"xvar",
"XVar",0,0) ;
1506 pc.defineObject(
"yvar",
"YVar",0,0) ;
1510 pc.process(argList) ;
1516 const char* drawOptions =
pc.getString(
"drawOption") ;
1517 Int_t histInvisible =
pc.getInt(
"histInvisible") ;
1518 const char* histName =
pc.getString(
"histName",0,
kTRUE) ;
1519 Double_t scaleFactor =
pc.getDouble(
"scaleFactor") ;
1528 coutE(
InputArguments) <<
"RooDataSet::plotOnXY(" <<
GetName() <<
") ERROR: no YVar() argument specified and dataset is not weighted" << endl ;
1533 if (yvar && !dataY) {
1534 coutE(
InputArguments) <<
"RooDataSet::plotOnXY(" <<
GetName() <<
") ERROR on YVar() argument, dataset does not contain a variable named " << yvar->
GetName() << endl ;
1542 graph->SetName(histName) ;
1561 graph->addBinWithXYError(
x,
y,-1*exlo,exhi,-1*eylo,eyhi,scaleFactor) ;
1565 Int_t lineColor =
pc.getInt(
"lineColor") ;
1566 Int_t lineStyle =
pc.getInt(
"lineStyle") ;
1567 Int_t lineWidth =
pc.getInt(
"lineWidth") ;
1568 Int_t markerColor =
pc.getInt(
"markerColor") ;
1569 Int_t markerStyle =
pc.getInt(
"markerStyle") ;
1570 Size_t markerSize =
pc.getDouble(
"markerSize") ;
1571 Int_t fillColor =
pc.getInt(
"fillColor") ;
1572 Int_t fillStyle =
pc.getInt(
"fillStyle") ;
1574 if (lineColor!=-999)
graph->SetLineColor(lineColor) ;
1575 if (lineStyle!=-999)
graph->SetLineStyle(lineStyle) ;
1576 if (lineWidth!=-999)
graph->SetLineWidth(lineWidth) ;
1577 if (markerColor!=-999)
graph->SetMarkerColor(markerColor) ;
1578 if (markerStyle!=-999)
graph->SetMarkerStyle(markerStyle) ;
1579 if (markerSize!=-999)
graph->SetMarkerSize(markerSize) ;
1580 if (fillColor!=-999)
graph->SetFillColor(fillColor) ;
1581 if (fillStyle!=-999)
graph->SetFillStyle(fillStyle) ;
1639 const char *verbOpt,
const char* commonPath,
1640 const char* indexCatName) {
1648 blindState =
new RooCategory(
"blindState",
"Blinding State") ;
1654 <<
"a non-RooCategory blindState member" << endl ;
1658 <<
"blindState category in variable list" << endl ;
1668 TString opts= verbOpt;
1670 Bool_t verbose= !opts.Contains(
"q");
1671 Bool_t debug= opts.Contains(
"d");
1674 if (ownIsBlind) {
variables.remove(*blindState) ;
delete blindState ; }
1689 tmp =
data->_vars.find(indexCatName) ;
1692 << indexCatName <<
" in supplied variable list" << endl ;
1697 <<
" is not a RooCategory" << endl ;
1707 Int_t outOfRange(0) ;
1710 char fileList2[64000];
1711 strlcpy(fileList2, fileList, 64000);
1714 char *filename = strtok(fileList2,
", ") ;
1715 Int_t fileSeqNum(0) ;
1721 char *catname = strchr(filename,
':') ;
1739 char newLabel[128] ;
1740 snprintf(newLabel,128,
"file%03d",fileSeqNum) ;
1741 if (indexCat->
defineType(newLabel,fileSeqNum)) {
1743 <<
" in index category " << indexCat->
GetName() << endl ;
1754 TString fullName(commonPath) ;
1755 fullName.Append(filename) ;
1756 ifstream
file(fullName) ;
1760 << filename <<
"', skipping" << endl;
1765 Bool_t haveBlindString(
false) ;
1767 while(
file.good() && !
file.eof()) {
1772 if (
file.peek() ==
'#')
1787 if(
file.eof())
break ;
1797 blindCat->
setIndex(haveBlindString) ;
1805 filename = strtok(0,
" ,") ;
1819 <<
" events (ignored " << outOfRange <<
" out of range events)" << endl;
1837 ofstream ofs(filename) ;
1852 coutW(
DataHandling) <<
"RooDataSet::write(" <<
GetName() <<
"): WARNING error(s) have occured in writing" << endl ;
1870 os << indent <<
" Dataset variable \"" <<
_wgtVar->
GetName() <<
"\" is interpreted as the event weight" << endl ;
1939 void RooDataSet::Streamer(
TBuffer &R__b)
1962 RooAbsData::Streamer(R__b);
1963 TTree* X_tree(0) ; R__b >> X_tree;
1964 RooArgSet X_truth ; X_truth.Streamer(R__b);
1965 TString X_blindString ; X_blindString.Streamer(R__b);
1976 RooDirItem::Streamer(R__b);
virtual Double_t getMin(const char *name=0) const
void setAttribute(const Text_t *name, Bool_t value=kTRUE)
Set (default) or clear a named boolean attribute of this object.
virtual const char * GetName() const
Returns name of object.
TIterator * createIterator(Bool_t dir=kIterForward) const
void addOwnedComponent(const char *idxlabel, RooAbsData &data)
void SetName(const char *name)
Change the name of this dataset into the given name.
RooAbsDataStore is the abstract base class for data collection that use a TTree as internal storage m...
virtual Int_t WriteClassBuffer(const TClass *cl, void *pointer)=0
virtual Double_t getMax(const char *name=0) const
virtual Bool_t add(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling add() for each element in the source coll...
Bool_t dependsOn(const RooAbsCollection &serverList, const RooAbsArg *ignoreArg=0, Bool_t valueOnly=kFALSE) const
Test whether we depend on (ie, are served by) any object in the specified collection.
virtual Double_t weight() const =0
virtual RooArgSet * addColumns(const RooArgList &varList)
Add a column with the values of the given list of (function) argument to this dataset.
virtual const RooArgSet * get() const
void loadValues(const TTree *t, const RooFormulaVar *select=0, const char *rangeName=0, Int_t nStart=0, Int_t nStop=2000000000)
Load values from tree 't' into this data collection, optionally selecting events using 'select' RooFo...
RooAbsCollection * selectCommon(const RooAbsCollection &refColl) const
Create a subset of the current collection, consisting only of those elements that are contained as we...
static std::list< POOLDATA > _memPoolList
virtual Bool_t setIndex(Int_t index, Bool_t printError=kTRUE)
Set value by specifying the index code of the desired state.
Double_t getVal(const RooArgSet *set=0) const
static const UInt_t kObjectAllocMemValue
virtual RooArgSet * addColumns(const RooArgList &varList)=0
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual void loadValues(const RooAbsDataStore *tds, const RooFormulaVar *select=0, const char *rangeName=0, Int_t nStart=0, Int_t nStop=2000000000)=0
RooAbsArg * createFundamental(const char *newname=0) const
Create a RooRealVar fundamental object with our properties.
void addPlotable(RooPlotable *plotable, Option_t *drawOptions="", Bool_t invisible=kFALSE, Bool_t refreshNorm=kFALSE)
Add the specified plotable object to our plot.
virtual Double_t sumEntries() const
Buffer base class used for serializing objects.
virtual Int_t CheckByteCount(UInt_t startpos, UInt_t bcnt, const TClass *clss)=0
RooDataSet()
Default constructor for persistence.
virtual RooAbsData * emptyClone(const char *newName=0, const char *newTitle=0, const RooArgSet *vars=0, const char *wgtVarName=0) const
Return an empty clone of this dataset.
virtual RooPlot * plotOnXY(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
Special plot method for 'X-Y' datasets used in Chi^2 fitting.
virtual TObject * Clone(const char *newname=0) const
Make a clone of an object using the Streamer facility.
static RooDataSet * read(const char *filename, const RooArgList &variables, const char *opts="", const char *commonPath="", const char *indexCatName=0)
Read given list of ascii files, and construct a data set, using the given ArgList as structure defini...
RooTreeDataStore is the abstract base class for data collection that use a TTree as internal storage ...
virtual void SetNameTitle(const char *name, const char *title)
Set all the TNamed parameters (name and title).
Iterator abstract base class.
void attachToStore(RooAbsDataStore &store)
virtual Bool_t setLabel(const char *label, Bool_t printError=kTRUE)
Set value by specifying the name of the desired state If printError is set, a message will be printed...
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=1, Int_t netopt=0)
Create / open a file.
virtual Bool_t isNonPoissonWeighted() const
Returns true if histogram contains bins with entries with a non-integer weight.
void appendToDir(TObject *obj, Bool_t forceMemoryResident=kFALSE)
Append object to directory.
Double_t getErrorLo() const
const RooArgSet & cachedVars() const
A RooHist is a graphical representation of binned data based on the TGraphAsymmErrors class...
RooDataSet is a container class to hold N-dimensional binned data.
RooDataHist * binnedClone(const char *newName=0, const char *newTitle=0) const
Return binned clone of this dataset.
virtual void attachCache(const RooAbsArg *newOwner, const RooArgSet &cachedVars)
Internal method – Attach dataset copied with cache contents to copied instances of functions...
virtual RooAbsArg * addColumn(RooAbsArg &var, Bool_t adjustRange=kTRUE)
Add a column with the values of the given (function) argument to this dataset.
virtual void removeAll()
Remove all arguments from our set, deleting them if we own them.
Bool_t allInRange(const char *rangeSpec) const
Return true if all contained object report to have their value inside the specified range...
RooVectorDataStore is the abstract base class for data collection that use a TTree as internal storag...
virtual void writeToStream(std::ostream &os, Bool_t compact)
Write the contents of the argset in ASCII form to given stream.
static char * _poolEnd
Next free slot in memory pool.
virtual void append(RooAbsDataStore &other)=0
RooCatType is an auxilary class for RooAbsCategory and defines a a single category state...
void setAsymError(Double_t lo, Double_t hi)
void assignFast(const RooAbsCollection &other, Bool_t setValDirty=kTRUE)
Functional equivalent of operator=() but assumes this and other collection have same layout...
virtual TList * GetList() const
virtual Bool_t isWeighted() const =0
TString operator+(const TString &s1, const TString &s2)
Use the special concatenation constructor.
RooCompositeDataStore is the abstract base class for data collection that use a TTree as internal sto...
virtual void weightError(Double_t &lo, Double_t &hi, ErrorType etype=SumW2) const
Return asymmetric error on weight. (Dummy implementation returning zero)
virtual Double_t weight() const
Return event weight of current event.
virtual RooAbsDataStore * merge(const RooArgSet &allvars, std::list< RooAbsDataStore *> dstoreList)=0
RooAbsData * reduceEng(const RooArgSet &varSubset, const RooFormulaVar *cutVar, const char *cutRange=0, Int_t nStart=0, Int_t nStop=2000000000, Bool_t copyCache=kTRUE)
Implementation of RooAbsData virtual method that drives the RooAbsData::reduce() methods.
virtual Bool_t isWeighted() const
Return true if dataset contains weighted events.
RooRealVar represents a fundamental (non-derived) real valued object.
virtual void addClone(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling addOwned() for each element in the source...
void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Interface for detailed printing of object.
virtual void setVal(Double_t value)
Set value of variable to 'value'.
virtual void Add(TObject *arg)
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
virtual void checkInit() const
static char * _poolCur
Start of memory pool.
void setAttribAll(const Text_t *name, Bool_t value=kTRUE)
Set given attribute in each element of the collection by calling each elements setAttribute() functio...
TIterator * typeIterator() const
Return iterator over all defined states.
virtual const Text_t * GetName() const
Returns name of object.
2-D histogram with a float per channel (see TH1 documentation)}
virtual TObject * Remove(TObject *obj)
Remove object from the list.
const RooCatType * lookupType(Int_t index, Bool_t printError=kFALSE) const
Find our type corresponding to the specified index, or return 0 for no match.
TH2F * createHistogram(const RooAbsRealLValue &var1, const RooAbsRealLValue &var2, const char *cuts="", const char *name="hist") const
Create a TH2F histogram of the distribution of the specified variable using this dataset.
virtual RooAbsData * cacheClone(const RooAbsArg *newCacheOwner, const RooArgSet *newCacheVars, const char *newName=0)
Return a clone of this dataset containing only the cached variables.
void initialize(const char *wgtVarName)
Initialize the dataset.
char * Form(const char *fmt,...)
virtual Bool_t addOwned(const RooAbsCollection &col, Bool_t silent=kFALSE)
Add a collection of arguments to this collection by calling addOwned() for each element in the source...
Class RooCmdConfig is a configurable parser for RooCmdArg named arguments.
RooAbsData is the common abstract base class for binned and unbinned datasets.
RooAbsDataStore * store()
void removeFromDir(TObject *obj)
Remove object from directory it was added to.
RooDataSet is a container class to hold unbinned data.
RooCategory represents a fundamental (non-derived) discrete value object.
virtual void add(const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0)
Add a data point, with its coordinates specified in the 'data' argset, to the data set...
virtual void addFast(const RooArgSet &row, Double_t weight=1.0, Double_t weightError=0)
Add a data point, with its coordinates specified in the 'data' argset, to the data set...
A RooPlot is a plot frame and a container for graphics objects within that frame. ...
virtual Int_t ReadClassBuffer(const TClass *cl, void *pointer, const TClass *onfile_class=0)=0
virtual void printValue(std::ostream &os) const
Print value of the dataset, i.e. the sum of weights contained in the dataset.
RooLinkedList is an collection class for internal use, storing a collection of RooAbsArg pointers in ...
virtual Double_t sumEntries() const
static void activate()
Install atexit handler that calls CleanupRooFitAtExit() on program termination.
RooArgSet addWgtVar(const RooArgSet &origVars, const RooAbsArg *wgtVar)
Helper function for constructor that adds optional weight variable to construct total set of observab...
RooAbsArg * find(const char *name) const
Find object with given name in list.
virtual const RooArgSet * get() const
Return a RooArgSet with the coordinates of the current event.
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
Bool_t write(const char *filename)
Write the contents of this dataset to an ASCII file with the specified name Each event will be writte...
RooDirItem is a utility base class for RooFit objects that are to be attached to ROOT directories...
RooAbsDataStore * _dstore
Iterator over cached variables.
void append(RooDataSet &data)
Add all data points of given data set to this data set.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t e
virtual const char * getLabel() const
Return label string of current state.
void SetNameTitle(const char *name, const char *title)
Change the title of this dataset into the given name.
static StorageType defaultStorageType
Mother of all ROOT objects.
virtual Bool_t remove(const RooAbsArg &var, Bool_t silent=kFALSE, Bool_t matchByNameOnly=kFALSE)
Remove the specified argument from our list.
virtual Double_t weightSquared() const
Return event weight of current event.
RooAbsRealLValue is the common abstract base class for objects that represent a real value that may a...
Bool_t merge(RooDataSet *data1, RooDataSet *data2=0, RooDataSet *data3=0, RooDataSet *data4=0, RooDataSet *data5=0, RooDataSet *data6=0)
virtual void Add(TObject *obj)
RooAbsRealLValue * getPlotVar() const
TIterator * MakeIterator(Bool_t dir=kTRUE) const
Return an iterator over this list.
virtual TObject * Next()=0
void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Print info about this dataset to the specified output stream.
virtual Double_t weightError(RooAbsData::ErrorType etype=RooAbsData::Poisson) const =0
virtual ~RooDataSet()
Destructor.
Bool_t defineType(const char *label)
Define a state with given name, the lowest available positive integer is assigned as index...
static constexpr double pc
float type_of_call hi(const int &, const int &)
virtual Int_t getBins(const char *name=0) const
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
Int_t Fill(Double_t)
Invalid Fill method.
virtual RooAbsArg * addColumn(RooAbsArg &var, Bool_t adjustRange=kTRUE)=0
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
THist< 2, float, THistStatContent, THistStatUncertainty > TH2F
Bool_t redirectServers(const RooAbsCollection &newServerList, Bool_t mustReplaceAll=kFALSE, Bool_t nameChange=kFALSE, Bool_t isRecursionStep=kFALSE)
Iterator over _clientListValue.
Double_t getErrorHi() const
void variables(TString dataset, TString fin="TMVA.root", TString dirName="InputVariables_Id", TString title="TMVA Input Variables", Bool_t isRegression=kFALSE, Bool_t useTMVAStyle=kTRUE)
virtual void printArgs(std::ostream &os) const
Print argument of dataset, i.e. the observable names.
virtual Int_t numEntries() const
virtual Version_t ReadVersion(UInt_t *start=0, UInt_t *bcnt=0, const TClass *cl=0)=0
static void cleanup()
Clear memoery pool on exit to avoid reported memory leaks.
virtual const char * GetTitle() const
Returns title of object.
RooCmdArg is a named container for two doubles, two integers two object points and three string point...
void setError(Double_t value)