57#if (__GNUC__==3&&__GNUC_MINOR__==2&&__GNUC_PATCHLEVEL__==3)
65#ifndef USEMEMPOOLFORDATASET
94void* RooDataSet::operator
new (
size_t bytes)
99 return memPool()->allocate(bytes);
107void RooDataSet::operator
delete (
void* ptr)
110 if (memPool()->deallocate(ptr))
113 std::cerr << __func__ <<
" " << ptr <<
" is not in any of the pools." << std::endl;
116 ::operator
delete(ptr);
180 RooAbsData(
name,title,
RooArgSet(vars,(
RooAbsArg*)
RooCmdConfig::decodeObjOnTheFly(
"RooDataSet::RooDataSet",
"IndexCat",0,0,arg1,arg2,arg3,arg4,arg5,arg6,arg7,arg8)))
184 pc.defineInt(
"ownLinked",
"OwnLinked",0) ;
185 pc.defineObject(
"impTree",
"ImportTree",0) ;
186 pc.defineObject(
"impData",
"ImportData",0) ;
187 pc.defineObject(
"indexCat",
"IndexCat",0) ;
188 pc.defineObject(
"impSliceData",
"ImportDataSlice",0,0,
kTRUE) ;
189 pc.defineString(
"impSliceState",
"ImportDataSlice",0,
"",
kTRUE) ;
190 pc.defineObject(
"lnkSliceData",
"LinkDataSlice",0,0,
kTRUE) ;
191 pc.defineString(
"lnkSliceState",
"LinkDataSlice",0,
"",
kTRUE) ;
192 pc.defineString(
"cutSpec",
"CutSpec",0,
"") ;
193 pc.defineObject(
"cutVar",
"CutVar",0) ;
194 pc.defineString(
"cutRange",
"CutRange",0,
"") ;
195 pc.defineString(
"wgtVarName",
"WeightVarName",0,
"") ;
196 pc.defineInt(
"newWeight1",
"WeightVarName",0,0) ;
197 pc.defineString(
"fname",
"ImportFromFile",0,
"") ;
198 pc.defineString(
"tname",
"ImportFromFile",1,
"") ;
199 pc.defineObject(
"wgtVar",
"WeightVar",0) ;
200 pc.defineInt(
"newWeight2",
"WeightVar",0,0) ;
201 pc.defineObject(
"dummy1",
"ImportDataSliceMany",0) ;
202 pc.defineObject(
"dummy2",
"LinkDataSliceMany",0) ;
203 pc.defineSet(
"errorSet",
"StoreError",0) ;
204 pc.defineSet(
"asymErrSet",
"StoreAsymError",0) ;
205 pc.defineMutex(
"ImportTree",
"ImportData",
"ImportDataSlice",
"LinkDataSlice",
"ImportFromFile") ;
206 pc.defineMutex(
"CutSpec",
"CutVar") ;
207 pc.defineMutex(
"WeightVarName",
"WeightVar") ;
208 pc.defineDependency(
"ImportDataSlice",
"IndexCat") ;
209 pc.defineDependency(
"LinkDataSlice",
"IndexCat") ;
210 pc.defineDependency(
"OwnLinked",
"LinkDataSlice") ;
227 TTree* impTree =
static_cast<TTree*
>(
pc.getObject(
"impTree")) ;
230 const char* cutSpec =
pc.getString(
"cutSpec",
"",
kTRUE) ;
231 const char* cutRange =
pc.getString(
"cutRange",
"",
kTRUE) ;
232 const char* wgtVarName =
pc.getString(
"wgtVarName",
"",
kTRUE) ;
234 const char* impSliceNames =
pc.getString(
"impSliceState",
"",
kTRUE) ;
236 const char* lnkSliceNames =
pc.getString(
"lnkSliceState",
"",
kTRUE) ;
240 RooArgSet* asymErrorSet =
pc.getSet(
"asymErrSet") ;
241 const char* fname =
pc.getString(
"fname") ;
242 const char* tname =
pc.getString(
"tname") ;
243 Int_t ownLinked =
pc.getInt(
"ownLinked") ;
244 Int_t newWeight =
pc.getInt(
"newWeight1") +
pc.getInt(
"newWeight2") ;
250 map<string,RooAbsData*> hmap ;
253 strlcpy(tmp, lnkSliceNames, 64000);
254 char *token = strtok(tmp,
",");
258 token = strtok(0,
",");
266 wgtVarName = wgtVar->
GetName() ;
274 map<string,RooAbsDataStore*> storeMap ;
277 throw std::string(
"RooDataSet::RooDataSet() ERROR in constructor, cannot find index category") ;
279 for (map<string,RooAbsData*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
281 if (indexCat && !indexCat->
lookupType(hiter->first.c_str())) {
285 if (icat && !icat->
lookupType(hiter->first.c_str())) {
288 icat->
setLabel(hiter->first.c_str()) ;
289 storeMap[icat->
getLabel()]=hiter->second->store() ;
303 wgtVarName = wgtVar->
GetName() ;
307 if (!wgtVar && !wgtVarName && impData && impData->
_wgtVar) {
321 if (wgtVarName && newWeight) {
335 map<string,RooDataSet*> hmap ;
338 strlcpy(tmp,impSliceNames,100000) ;
339 char* token = strtok(tmp,
",") ;
343 token = strtok(0,
",") ;
369 delete intAsymErrorSet ;
374 wgtVarName = wgtVar->
GetName() ;
381 if (wgtVarName && *wgtVarName) {
391 }
else if (indexCat) {
405 if (cutSpec && *cutSpec) {
412 for (map<string,RooDataSet*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
414 if (!indexCat->
lookupType(hiter->first.c_str())) {
418 if (!icat->
lookupType(hiter->first.c_str())) {
421 icat->
setLabel(hiter->first.c_str()) ;
423 RooFormulaVar cutVarTmp(cutSpec,cutSpec,hiter->second->_vars) ;
427 }
else if (impData) {
432 }
else if (impTree) {
437 tstore->
loadValues(impTree,&cutVarTmp,cutRange);
440 tmpstore.
loadValues(impTree,&cutVarTmp,cutRange) ;
443 }
else if (fname && strlen(fname)) {
448 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' cannot be opened or does not exist" << endl ;
449 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s cannot be opened or does not exist",
GetName(),fname)) ;
451 TTree* t =
dynamic_cast<TTree*
>(
f->Get(tname)) ;
453 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' does not contain a TTree named '" << tname <<
"'" << endl ;
454 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s does not contain a TTree named %s",
GetName(),fname,tname)) ;
476 for (map<string,RooDataSet*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
478 if (!indexCat->
lookupType(hiter->first.c_str())) {
482 if (!icat->
lookupType(hiter->first.c_str())) {
485 icat->
setLabel(hiter->first.c_str()) ;
490 }
else if (impData) {
493 }
else if (impTree) {
499 tmpstore.
loadValues(impTree,cutVar,cutRange) ;
502 }
else if (fname && strlen(fname)) {
506 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' cannot be opened or does not exist" << endl ;
507 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s cannot be opened or does not exist",
GetName(),fname)) ;
509 TTree* t =
dynamic_cast<TTree*
>(
f->Get(tname)) ;
511 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' does not contain a TTree named '" << tname <<
"'" << endl ;
512 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s does not contain a TTree named %s",
GetName(),fname,tname)) ;
531 for (map<string,RooDataSet*>::iterator hiter = hmap.begin() ; hiter!=hmap.end() ; ++hiter) {
533 if (!indexCat->
lookupType(hiter->first.c_str())) {
537 if (!icat->
lookupType(hiter->first.c_str())) {
540 icat->
setLabel(hiter->first.c_str()) ;
546 }
else if (impData) {
549 }
else if (impTree) {
558 }
else if (fname && strlen(fname)) {
562 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' cannot be opened or does not exist" << endl ;
563 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s cannot be opened or does not exist",
GetName(),fname)) ;
565 TTree* t =
dynamic_cast<TTree*
>(
f->Get(tname)) ;
567 coutE(
InputArguments) <<
"RooDataSet::ctor(" <<
GetName() <<
") ERROR file '" << fname <<
"' does not contain a TTree named '" << tname <<
"'" << endl ;
568 throw string(
Form(
"RooDataSet::ctor(%s) ERROR file %s does not contain a TTree named %s",
GetName(),fname,tname)) ;
622 const RooArgSet& vars,
const char *cuts,
const char* wgtVarName) :
743 const RooArgSet& vars,
const char *selExpr,
const char* wgtVarName) :
791 copyCache, wgtVarName))
798 nStop, copyCache, wgtVarName)));
815 if (wgtVar) tmp.
add(*wgtVar) ;
831 delete selCacheVars ;
847 if (wgtVarName && vars && !
_wgtVar) {
880 << wgtVarName <<
" not found in set of variables, no weighting will be assigned" << endl ;
883 << wgtVarName <<
" is not of type RooRealVar, no weighting will be assigned" << endl ;
935 TString title,
name ;
1022 carry = (t - sumw) -
y;
1052 if (select && select->
eval()==0.) continue ;
1056 carry = (t - sumw) -
y;
1060 if (select)
delete select ;
1179 list<RooDataSet*> dsetList ;
1180 if (data1) dsetList.push_back(data1) ;
1181 if (data2) dsetList.push_back(data2) ;
1182 if (data3) dsetList.push_back(data3) ;
1183 if (data4) dsetList.push_back(data4) ;
1184 if (data5) dsetList.push_back(data5) ;
1185 if (data6) dsetList.push_back(data6) ;
1186 return merge(dsetList) ;
1202 for (list<RooDataSet*>::iterator iter = dsetList.begin() ; iter != dsetList.end() ; ++iter) {
1210 list<RooAbsDataStore*> dstoreList ;
1211 for (list<RooDataSet*>::iterator iter = dsetList.begin() ; iter != dsetList.end() ; ++iter) {
1213 dstoreList.push_back((*iter)->store()) ;
1306 static Int_t counter(0) ;
1315 <<
" is not in dataset and is also not dependent on data set" << endl ;
1321 ownPlotVarX =
kTRUE ;
1334 <<
" is not in dataset and is also not dependent on data set" << endl ;
1340 ownPlotVarY =
kTRUE ;
1348 if(0 != cuts && strlen(cuts)) {
1350 if (!select || !select->
ok()) {
1356 TString histName(
name);
1357 histName.Prepend(
"_");
1358 histName.Prepend(
fName);
1359 histName.Append(
"_") ;
1360 histName.Append(
Form(
"%08x",counter++)) ;
1372 for(
Int_t i=0; i < nevent; ++i)
1376 if (select && select->
eval()==0) continue ;
1380 if (ownPlotVarX)
delete plotVarX ;
1381 if (ownPlotVarY)
delete plotVarY ;
1382 if (select)
delete select ;
1432 pc.defineString(
"drawOption",
"DrawOption",0,
"P") ;
1433 pc.defineString(
"histName",
"Name",0,
"") ;
1434 pc.defineInt(
"lineColor",
"LineColor",0,-999) ;
1435 pc.defineInt(
"lineStyle",
"LineStyle",0,-999) ;
1436 pc.defineInt(
"lineWidth",
"LineWidth",0,-999) ;
1437 pc.defineInt(
"markerColor",
"MarkerColor",0,-999) ;
1438 pc.defineInt(
"markerStyle",
"MarkerStyle",0,8) ;
1439 pc.defineDouble(
"markerSize",
"MarkerSize",0,-999) ;
1440 pc.defineInt(
"fillColor",
"FillColor",0,-999) ;
1441 pc.defineInt(
"fillStyle",
"FillStyle",0,-999) ;
1442 pc.defineInt(
"histInvisible",
"Invisible",0,0) ;
1443 pc.defineDouble(
"scaleFactor",
"Rescale",0,1.) ;
1444 pc.defineObject(
"xvar",
"XVar",0,0) ;
1445 pc.defineObject(
"yvar",
"YVar",0,0) ;
1449 pc.process(argList) ;
1455 const char* drawOptions =
pc.getString(
"drawOption") ;
1456 Int_t histInvisible =
pc.getInt(
"histInvisible") ;
1457 const char* histName =
pc.getString(
"histName",0,
kTRUE) ;
1458 Double_t scaleFactor =
pc.getDouble(
"scaleFactor") ;
1467 coutE(
InputArguments) <<
"RooDataSet::plotOnXY(" <<
GetName() <<
") ERROR: no YVar() argument specified and dataset is not weighted" << endl ;
1472 if (yvar && !dataY) {
1473 coutE(
InputArguments) <<
"RooDataSet::plotOnXY(" <<
GetName() <<
") ERROR on YVar() argument, dataset does not contain a variable named " << yvar->
GetName() << endl ;
1481 graph->SetName(histName) ;
1500 graph->addBinWithXYError(
x,
y,-1*exlo,exhi,-1*eylo,eyhi,scaleFactor) ;
1504 Int_t lineColor =
pc.getInt(
"lineColor") ;
1505 Int_t lineStyle =
pc.getInt(
"lineStyle") ;
1506 Int_t lineWidth =
pc.getInt(
"lineWidth") ;
1507 Int_t markerColor =
pc.getInt(
"markerColor") ;
1508 Int_t markerStyle =
pc.getInt(
"markerStyle") ;
1509 Size_t markerSize =
pc.getDouble(
"markerSize") ;
1510 Int_t fillColor =
pc.getInt(
"fillColor") ;
1511 Int_t fillStyle =
pc.getInt(
"fillStyle") ;
1513 if (lineColor!=-999)
graph->SetLineColor(lineColor) ;
1514 if (lineStyle!=-999)
graph->SetLineStyle(lineStyle) ;
1515 if (lineWidth!=-999)
graph->SetLineWidth(lineWidth) ;
1516 if (markerColor!=-999)
graph->SetMarkerColor(markerColor) ;
1517 if (markerStyle!=-999)
graph->SetMarkerStyle(markerStyle) ;
1518 if (markerSize!=-999)
graph->SetMarkerSize(markerSize) ;
1519 if (fillColor!=-999)
graph->SetFillColor(fillColor) ;
1520 if (fillStyle!=-999)
graph->SetFillStyle(fillStyle) ;
1576 const char *verbOpt,
const char* commonPath,
1577 const char* indexCatName) {
1585 blindState =
new RooCategory(
"blindState",
"Blinding State") ;
1591 <<
"a non-RooCategory blindState member" << endl ;
1595 <<
"blindState category in variable list" << endl ;
1605 TString opts= verbOpt;
1607 Bool_t verbose= !opts.Contains(
"q");
1608 Bool_t debug= opts.Contains(
"d");
1611 if (ownIsBlind) {
variables.remove(*blindState) ;
delete blindState ; }
1626 tmp =
data->_vars.find(indexCatName) ;
1629 << indexCatName <<
" in supplied variable list" << endl ;
1634 <<
" is not a RooCategory" << endl ;
1644 Int_t outOfRange(0) ;
1647 char fileList2[64000];
1648 strlcpy(fileList2, fileList, 64000);
1651 char *filename = strtok(fileList2,
", ") ;
1652 Int_t fileSeqNum(0) ;
1658 char *catname = strchr(filename,
':') ;
1676 char newLabel[128] ;
1677 snprintf(newLabel,128,
"file%03d",fileSeqNum) ;
1678 if (indexCat->
defineType(newLabel,fileSeqNum)) {
1680 <<
" in index category " << indexCat->
GetName() << endl ;
1691 TString fullName(commonPath) ;
1692 fullName.Append(filename) ;
1693 ifstream
file(fullName) ;
1697 << filename <<
"', skipping" << endl;
1702 Bool_t haveBlindString(
false) ;
1704 while(
file.good() && !
file.eof()) {
1709 if (
file.peek() ==
'#')
1724 if(
file.eof()) break ;
1734 blindCat->
setIndex(haveBlindString) ;
1742 filename = strtok(0,
" ,") ;
1756 <<
" events (ignored " << outOfRange <<
" out of range events)" << endl;
1772 ofstream ofs(filename) ;
1797 coutW(
DataHandling) <<
"RooDataSet::write(" <<
GetName() <<
"): WARNING error(s) have occured in writing" << endl ;
1815 os << indent <<
" Dataset variable \"" <<
_wgtVar->
GetName() <<
"\" is interpreted as the event weight" << endl ;
1884void RooDataSet::Streamer(
TBuffer &R__b)
1907 RooAbsData::Streamer(R__b);
1908 TTree* X_tree(0) ; R__b >> X_tree;
1909 RooArgSet X_truth ; X_truth.Streamer(R__b);
1910 TString X_blindString ; X_blindString.Streamer(R__b);
1921 RooDirItem::Streamer(R__b);
float type_of_call hi(const int &, const int &)
char * Form(const char *fmt,...)
TString operator+(const TString &s1, const TString &s2)
Use the special concatenation constructor.
Memory pool for RooArgSet and RooDataSet.
RooAbsArg is the common abstract base class for objects that represent a value (of arbitrary type) an...
void attachToStore(RooAbsDataStore &store)
Bool_t redirectServers(const RooAbsCollection &newServerList, Bool_t mustReplaceAll=kFALSE, Bool_t nameChange=kFALSE, Bool_t isRecursionStep=kFALSE)
Iterator over _clientListValue.
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 TObject * Clone(const char *newname=0) const
Make a clone of an object using the Streamer facility.
void setAttribute(const Text_t *name, Bool_t value=kTRUE)
Set (default) or clear a named boolean attribute of this object.
TIterator * typeIterator() const
Return iterator over all defined states.
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.
virtual void removeAll()
Remove all arguments from our set, deleting them if we own them.
RooAbsCollection * selectCommon(const RooAbsCollection &refColl) const
Create a subset of the current collection, consisting only of those elements that are contained as we...
void assignFast(const RooAbsCollection &other, Bool_t setValDirty=kTRUE)
Functional equivalent of operator=() but assumes this and other collection have same layout.
Bool_t allInRange(const char *rangeSpec) const
Return true if all contained object report to have their value inside the specified range.
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...
virtual Bool_t remove(const RooAbsArg &var, Bool_t silent=kFALSE, Bool_t matchByNameOnly=kFALSE)
Remove the specified argument from our list.
TIterator * createIterator(Bool_t dir=kIterForward) const
RooAbsArg * find(const char *name) const
Find object with given name in list.
RooAbsDataStore is the abstract base class for data collection that use a TTree as internal storage m...
const RooArgSet & cachedVars() const
virtual void append(RooAbsDataStore &other)=0
virtual Double_t sumEntries() const
virtual void checkInit() const
virtual void loadValues(const RooAbsDataStore *tds, const RooFormulaVar *select=0, const char *rangeName=0, Int_t nStart=0, Int_t nStop=2000000000)=0
virtual Double_t weight() const =0
virtual Double_t weightError(RooAbsData::ErrorType etype=RooAbsData::Poisson) const =0
virtual RooAbsDataStore * merge(const RooArgSet &allvars, std::list< RooAbsDataStore * > dstoreList)=0
virtual RooArgSet * addColumns(const RooArgList &varList)=0
virtual Bool_t isWeighted() const =0
virtual RooAbsArg * addColumn(RooAbsArg &var, Bool_t adjustRange=kTRUE)=0
RooAbsData is the common abstract base class for binned and unbinned datasets.
virtual const RooArgSet * get() const
RooAbsDataStore * store()
void printMultiline(std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
Interface for detailed printing of object.
static StorageType defaultStorageType
void addOwnedComponent(const char *idxlabel, RooAbsData &data)
virtual void attachCache(const RooAbsArg *newOwner, const RooArgSet &cachedVars)
Internal method – Attach dataset copied with cache contents to copied instances of functions.
virtual Int_t numEntries() const
RooAbsDataStore * _dstore
Iterator over cached variables.
RooAbsRealLValue is the common abstract base class for objects that represent a real value that may a...
virtual Double_t getMax(const char *name=0) const
virtual Int_t getBins(const char *name=0) const
virtual Double_t getMin(const char *name=0) const
RooAbsReal is the common abstract base class for objects that represent a real value and implements f...
RooAbsArg * createFundamental(const char *newname=0) const
Create a RooRealVar fundamental object with our properties.
Double_t getVal(const RooArgSet *set=0) const
Evaluate object. Returns either cached value or triggers a recalculation.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
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...
virtual void writeToStream(std::ostream &os, Bool_t compact, const char *section=0) const
Write the contents of the argset in ASCII form to given stream.
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...
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...
RooCatType is an auxilary class for RooAbsCategory and defines a a single category state.
RooCategory represents a fundamental (non-derived) discrete value object.
virtual const char * getLabel() const
Return label string of current state.
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...
Bool_t defineType(const char *label)
Define a state with given name, the lowest available positive integer is assigned as index.
virtual Bool_t setIndex(Int_t index, Bool_t printError=kTRUE)
Set value by specifying the index code of the desired state.
RooCmdArg is a named container for two doubles, two integers two object points and three string point...
Class RooCmdConfig is a configurable parser for RooCmdArg named arguments.
RooCompositeDataStore is the abstract base class for data collection that use a TTree as internal sto...
RooDataSet is a container class to hold N-dimensional binned data.
RooDataSet is a container class to hold unbinned data.
virtual void printArgs(std::ostream &os) const
Print argument of dataset, i.e. the observable names.
virtual Double_t sumEntries() const
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 void weightError(Double_t &lo, Double_t &hi, ErrorType etype=SumW2) const
Return asymmetric error on weight. (Dummy implementation returning zero)
virtual RooAbsArg * addColumn(RooAbsArg &var, Bool_t adjustRange=kTRUE)
Add a column with the values of the given (function) argument to this dataset.
virtual Double_t weight() const
Return event weight of current event.
virtual Bool_t isWeighted() const
Return true if dataset contains weighted events.
void SetName(const char *name)
Change the name of this dataset into the given name.
Bool_t write(const char *filename) const
Write the contents of this dataset to an ASCII file with the specified name.
virtual Bool_t isNonPoissonWeighted() const
Returns true if histogram contains bins with entries with a non-integer weight.
RooArgSet addWgtVar(const RooArgSet &origVars, const RooAbsArg *wgtVar)
Helper function for constructor that adds optional weight variable to construct total set of observab...
void initialize(const char *wgtVarName)
Initialize the dataset.
MemPoolForRooSets< RooDataSet, 5 *150 > MemPool
virtual Double_t weightSquared() const
Return event weight of current event.
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 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.
void SetNameTitle(const char *name, const char *title)
Change the title of this dataset into the given name.
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...
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 RooArgSet * addColumns(const RooArgList &varList)
Add a column with the values of the given list of (function) argument to this dataset.
virtual void printValue(std::ostream &os) const
Print value of the dataset, i.e. the sum of weights contained in the dataset.
void append(RooDataSet &data)
Add all data points of given data set to this data set.
RooDataSet()
Default constructor for persistence.
Bool_t merge(RooDataSet *data1, RooDataSet *data2=0, RooDataSet *data3=0, RooDataSet *data4=0, RooDataSet *data5=0, RooDataSet *data6=0)
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 ~RooDataSet()
Destructor.
RooDataHist * binnedClone(const char *newName=0, const char *newTitle=0) const
Return binned clone of this dataset.
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.
static MemPool * memPool()
virtual const RooArgSet * get() const
Return a RooArgSet with the coordinates of the current event.
virtual RooAbsData * cacheClone(const RooAbsArg *newCacheOwner, const RooArgSet *newCacheVars, const char *newName=0)
Return a clone of this dataset containing only the cached variables.
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.
RooDirItem is a utility base class for RooFit objects that are to be attached to ROOT directories.
void appendToDir(TObject *obj, Bool_t forceMemoryResident=kFALSE)
Append object to directory.
void removeFromDir(TObject *obj)
Remove object from directory it was added to.
A RooHist is a graphical representation of binned data based on the TGraphAsymmErrors class.
RooLinkedList is an collection class for internal use, storing a collection of RooAbsArg pointers in ...
TIterator * MakeIterator(Bool_t dir=kTRUE) const
Return an iterator over this list.
virtual void Add(TObject *arg)
A RooPlot is a plot frame and a container for graphics objects within that frame.
RooAbsRealLValue * getPlotVar() const
void addPlotable(RooPlotable *plotable, Option_t *drawOptions="", Bool_t invisible=kFALSE, Bool_t refreshNorm=kFALSE)
Add the specified plotable object to our plot.
RooRealVar represents a fundamental (non-derived) real valued object.
Double_t getErrorHi() const
Double_t getErrorLo() const
void setError(Double_t value)
void setAsymError(Double_t lo, Double_t hi)
virtual void setVal(Double_t value)
Set value of variable to 'value'.
static void activate()
Install atexit handler that calls CleanupRooFitAtExit() on program termination.
RooTreeDataStore is the abstract base class for data collection that use a TTree as internal storage ...
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...
RooVectorDataStore is the abstract base class for data collection that use a TTree as internal storag...
Buffer base class used for serializing objects.
virtual Int_t ReadClassBuffer(const TClass *cl, void *pointer, const TClass *onfile_class=0)=0
virtual Version_t ReadVersion(UInt_t *start=0, UInt_t *bcnt=0, const TClass *cl=0)=0
virtual Int_t CheckByteCount(UInt_t startpos, UInt_t bcnt, const TClass *clss)=0
virtual Int_t WriteClassBuffer(const TClass *cl, void *pointer)=0
virtual TList * GetList() const
static TFile * Open(const char *name, Option_t *option="", const char *ftitle="", Int_t compress=ROOT::RCompressionSetting::EDefaults::kUseGeneralPurpose, Int_t netopt=0)
Create / open a file.
2-D histogram with a float per channel (see TH1 documentation)}
Int_t Fill(Double_t)
Invalid Fill method.
Iterator abstract base class.
virtual TObject * Next()=0
virtual void Add(TObject *obj)
virtual TObject * Remove(TObject *obj)
Remove object from the list.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual const char * GetTitle() const
Returns title of object.
virtual const char * GetName() const
Returns name of object.
virtual void SetNameTitle(const char *name, const char *title)
Set all the TNamed parameters (name and title).
Mother of all ROOT objects.
VecExpr< UnaryOp< Fabs< T >, VecExpr< A, T, D >, T >, T, D > fabs(const VecExpr< A, T, D > &rhs)
static constexpr double pc
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)