File indexing completed on 2025-01-18 10:11:27
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef ROO_STUDY_PACKAGE
0017 #define ROO_STUDY_PACKAGE
0018
0019 #include <TNamed.h>
0020
0021 #include <list>
0022
0023 class RooAbsStudy ;
0024 class RooWorkspace ;
0025
0026 class RooStudyPackage : public TNamed {
0027 public:
0028
0029 RooStudyPackage() = default;
0030 RooStudyPackage(RooWorkspace& w) ;
0031 RooStudyPackage(const RooStudyPackage&) ;
0032 void addStudy(RooAbsStudy& study) ;
0033 TObject* Clone(const char* ="") const override { return new RooStudyPackage(*this) ; }
0034
0035 RooWorkspace& wspace() { return *_ws ; }
0036 std::list<RooAbsStudy*>& studies() { return _studies ; }
0037
0038 void driver(Int_t nExperiments) ;
0039
0040 Int_t initRandom() ;
0041 void initialize() ;
0042 void runOne() ;
0043 void run(Int_t nExperiments) ;
0044 void finalize() ;
0045
0046 void exportData(TList* olist, Int_t seqno) ;
0047
0048 static void processFile(const char* infile, Int_t nexp) ;
0049
0050 protected:
0051
0052 RooWorkspace* _ws = nullptr;
0053 std::list<RooAbsStudy*> _studies ;
0054
0055
0056 ClassDefOverride(RooStudyPackage,1)
0057 } ;
0058
0059
0060 #endif
0061