Warning, file /include/root/RooAbsStudy.h was not indexed
or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef ROO_ABS_STUDY
0017 #define ROO_ABS_STUDY
0018
0019 #include "TNamed.h"
0020 #include "RooLinkedList.h"
0021 #include "RooArgSet.h"
0022
0023 class RooAbsPdf;
0024 class RooDataSet ;
0025 class RooAbsData ;
0026 class RooFitResult ;
0027 class RooPlot ;
0028 class RooRealVar ;
0029 class RooWorkspace ;
0030 class RooStudyManager ;
0031 class RooStudyPackage ;
0032
0033 class RooAbsStudy : public TNamed {
0034 public:
0035
0036 RooAbsStudy() = default;
0037 RooAbsStudy(const char* name, const char* title) ;
0038 RooAbsStudy(const RooAbsStudy& other) ;
0039 virtual RooAbsStudy* clone(const char* newname="") const = 0 ;
0040 TObject* Clone(const char* newname="") const override { return clone(newname) ; }
0041 ~RooAbsStudy() override ;
0042
0043 virtual bool attach(RooWorkspace& ) { return false ; } ;
0044 virtual bool initialize() { return false ; } ;
0045 virtual bool execute() { return false ; } ;
0046 virtual bool finalize() { return false ; } ;
0047 void storeDetailedOutput(bool flag) { _storeDetails = flag ; }
0048
0049 RooDataSet* summaryData() { return _summaryData ; }
0050 RooLinkedList* detailedData() { return _detailData ; }
0051
0052 void releaseDetailData() { _ownDetailData = false ; }
0053
0054 virtual void dump() {} ;
0055
0056 protected:
0057
0058 friend class RooStudyManager ;
0059 friend class RooStudyPackage ;
0060 void registerSummaryOutput(const RooArgSet& allVars, const RooArgSet& varsWithError=RooArgSet(), const RooArgSet& varsWithAsymError=RooArgSet()) ;
0061 void storeSummaryOutput(const RooArgSet& vars) ;
0062 void storeDetailedOutput(std::unique_ptr<TNamed> object) ;
0063 void aggregateSummaryOutput(TList* chunkList) ;
0064
0065 private:
0066
0067 bool _storeDetails = false;
0068 RooDataSet* _summaryData = nullptr;
0069 RooLinkedList* _detailData = nullptr;
0070 bool _ownDetailData = true;
0071
0072 ClassDefOverride(RooAbsStudy,1)
0073 } ;
0074
0075
0076 #endif
0077