|
32 | 32 | #include <map> |
33 | 33 | #include <string> |
34 | 34 |
|
35 | | -class RooAbsReal ; |
36 | | -class RooRealVar; |
37 | | -class RooAbsRealLValue; |
| 35 | +class Roo1DTable; |
| 36 | +class Roo1DTable; |
| 37 | +class RooAbsBinning; |
38 | 38 | class RooAbsCategoryLValue; |
39 | | -class Roo1DTable ; |
40 | | -class RooPlot; |
| 39 | +class RooAbsDataStore; |
| 40 | +class RooAbsReal; |
| 41 | +class RooAbsRealLValue; |
41 | 42 | class RooArgList; |
| 43 | +class RooFormulaVar; |
| 44 | +class RooHist; |
| 45 | +class RooPlot; |
| 46 | +class RooRealVar; |
42 | 47 | class RooSimultaneous; |
43 | 48 | class TH1; |
44 | 49 | class TH2F; |
45 | | -class RooAbsBinning ; |
46 | | -class Roo1DTable ; |
47 | | -class RooAbsDataStore ; |
48 | | -class RooFormulaVar; |
49 | | -namespace RooFit { |
50 | | -namespace TestStatistics { |
| 50 | +namespace RooFit::TestStatistics { |
51 | 51 | class RooAbsL; |
52 | 52 | struct ConstantTermsOptimizer; |
53 | | -} |
54 | | -} |
| 53 | +} // namespace RooFit::TestStatistics |
55 | 54 |
|
56 | 55 |
|
57 | 56 | class RooAbsData : public TNamed, public RooPrintable { |
@@ -176,24 +175,6 @@ class RooAbsData : public TNamed, public RooPrintable { |
176 | 175 |
|
177 | 176 | virtual RooPlot* plotOn(RooPlot* frame, const RooLinkedList& cmdList) const ; |
178 | 177 |
|
179 | | - // WVE --- This needs to be public to avoid Cling problems |
180 | | - struct PlotOpt { |
181 | | - const char* cuts = ""; |
182 | | - Option_t* drawOptions = "P"; |
183 | | - RooAbsBinning* bins = nullptr; |
184 | | - RooAbsData::ErrorType etype = RooAbsData::Poisson; |
185 | | - const char* cutRange = nullptr; |
186 | | - const char* histName = nullptr; |
187 | | - bool histInvisible = false; |
188 | | - const char* addToHistName = nullptr; |
189 | | - double addToWgtSelf = 1.0; |
190 | | - double addToWgtOther = 1.0; |
191 | | - double xErrorSize = 1.0; |
192 | | - bool refreshFrameNorm = false; |
193 | | - bool correctForBinWidth = true; |
194 | | - double scaleFactor = 1.0; |
195 | | - } ; |
196 | | - |
197 | 178 | // Split a dataset by a category |
198 | 179 | std::vector<std::unique_ptr<RooAbsData>> split(const RooAbsCategory& splitCat, bool createEmptyDataSets=false) const; |
199 | 180 |
|
@@ -326,6 +307,27 @@ class RooAbsData : public TNamed, public RooPrintable { |
326 | 307 | virtual void optimizeReadingWithCaching(RooAbsArg& arg, const RooArgSet& cacheList, const RooArgSet& keepObsList) ; |
327 | 308 | bool allClientsCached(RooAbsArg*, const RooArgSet&) ; |
328 | 309 |
|
| 310 | + struct PlotOpt { |
| 311 | + const char* cuts = ""; |
| 312 | + Option_t* drawOptions = "P"; |
| 313 | + RooAbsBinning* bins = nullptr; |
| 314 | + RooAbsData::ErrorType etype = RooAbsData::Poisson; |
| 315 | + const char* cutRange = nullptr; |
| 316 | + const char* histName = nullptr; |
| 317 | + bool histInvisible = false; |
| 318 | + const char* addToHistName = nullptr; |
| 319 | + double addToWgtSelf = 1.0; |
| 320 | + double addToWgtOther = 1.0; |
| 321 | + double xErrorSize = 1.0; |
| 322 | + bool refreshFrameNorm = false; |
| 323 | + bool correctForBinWidth = true; |
| 324 | + double scaleFactor = 1.0; |
| 325 | + } ; |
| 326 | + |
| 327 | + // implementation detail |
| 328 | + static RooHist *createAndFillRooHist(RooAbsData const &absData, RooPlot const &frame, RooAbsRealLValue const &var, |
| 329 | + std::string cuts1, std::string cuts2, RooAbsData::PlotOpt opt, bool efficiency, |
| 330 | + double scaleFactor); |
329 | 331 |
|
330 | 332 | // PlotOn implementation |
331 | 333 | virtual RooPlot *plotOn(RooPlot *frame, PlotOpt o) const ; |
|
0 commit comments