30 class RooStudyManager ;
31 class RooStudyPackage ;
33 class RooAbsStudy :
public TNamed {
36 RooAbsStudy() : _storeDetails(kFALSE), _summaryData(0), _detailData(0), _ownDetailData(kTRUE) {} ;
37 RooAbsStudy(
const char* name,
const char* title) ;
38 RooAbsStudy(
const RooAbsStudy& other) ;
39 virtual RooAbsStudy* clone(
const char* newname=
"")
const = 0 ;
40 TObject* Clone(
const char* newname=
"")
const {
return clone(newname) ; }
41 virtual ~RooAbsStudy() ;
43 virtual Bool_t attach(RooWorkspace& ) {
return kFALSE ; } ;
44 virtual Bool_t initialize() {
return kFALSE ; } ;
45 virtual Bool_t execute() {
return kFALSE ; } ;
46 virtual Bool_t finalize() {
return 0 ; } ;
47 void storeDetailedOutput(Bool_t flag) { _storeDetails = flag ; }
49 RooDataSet* summaryData() {
return _summaryData ; }
50 RooLinkedList* detailedData() {
return _detailData ; }
52 void releaseDetailData() { _ownDetailData = kFALSE ; }
54 virtual void dump() {} ;
58 friend class RooStudyManager ;
59 friend class RooStudyPackage ;
60 void registerSummaryOutput(
const RooArgSet& allVars,
const RooArgSet& varsWithError=RooArgSet(),
const RooArgSet& varsWithAsymError=RooArgSet()) ;
61 void storeSummaryOutput(
const RooArgSet& vars) ;
62 void storeDetailedOutput(TNamed&
object) ;
63 void aggregateSummaryOutput(TList* chunkList) ;
67 Bool_t _storeDetails ;
68 RooDataSet* _summaryData ;
69 RooLinkedList* _detailData ;
70 Bool_t _ownDetailData ;
72 ClassDef(RooAbsStudy,1)