Logo ROOT   6.21/01
Reference Guide
RooStudyManager.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * Package: RooFitCore *
4  * File: $Id$
5  * Authors: *
6  * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7  * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8  * *
9  * Copyright (c) 2000-2005, Regents of the University of California *
10  * and Stanford University. All rights reserved. *
11  * *
12  * Redistribution and use in source and binary forms, *
13  * with or without modification, are permitted according to the terms *
14  * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15  *****************************************************************************/
16 #ifndef ROO_STUDY_MANAGER
17 #define ROO_STUDY_MANAGER
18 
19 #include "TNamed.h"
20 
21 class RooAbsPdf;
22 class RooDataSet ;
23 class RooAbsData ;
24 class RooFitResult ;
25 class RooPlot ;
26 class RooRealVar ;
27 class RooWorkspace ;
28 class RooAbsStudy ;
29 #include "RooStudyPackage.h"
30 #include <list>
31 #include <string>
32 
33 class RooStudyManager : public TNamed {
34 public:
35 
38  RooStudyManager(const char* studyPackFileName) ;
39  void addStudy(RooAbsStudy& study) ;
40 
41  // Interactive running
42  void run(Int_t nExperiments) ;
43 
44  // PROOF-based paralllel running
45  void runProof(Int_t nExperiments, const char* proofHost="", Bool_t showGui=kTRUE) ;
46  static void closeProof(Option_t *option = "s") ;
47 
48  // Batch running
49  void prepareBatchInput(const char* studyName, Int_t nExpPerJob, Bool_t unifiedInput) ;
50  void processBatchOutput(const char* filePat) ;
51 
52  RooWorkspace& wspace() { return _pkg->wspace() ; }
53  std::list<RooAbsStudy*>& studies() { return _pkg->studies() ; }
54 
55 protected:
56 
57  void aggregateData(TList* olist) ;
58  void expandWildCardSpec(const char* spec, std::list<std::string>& result) ;
59 
61 
63 
64  ClassDef(RooStudyManager,1) // A general purpose workspace oriented parallelizing study manager
65 } ;
66 
67 
68 #endif
69 
RooStudyPackage is a utility class to manage studies that consist of repeated applications of generat...
void run(Int_t nExperiments)
static void closeProof(Option_t *option="s")
"Option_t *option" takes the parameters forwarded to gProof->Close(option).
std::list< RooAbsStudy * > & studies()
const char Option_t
Definition: RtypesCore.h:62
void addStudy(RooAbsStudy &study)
RooFitResult is a container class to hold the input and output of a PDF fit to a dataset.
Definition: RooFitResult.h:40
int Int_t
Definition: RtypesCore.h:41
bool Bool_t
Definition: RtypesCore.h:59
std::list< RooAbsStudy * > & studies()
#define ClassDef(name, id)
Definition: Rtypes.h:326
The TNamed class is the base class for all named ROOT classes.
Definition: TNamed.h:29
RooStudyManager(RooWorkspace &w)
RooRealVar represents a fundamental (non-derived) real-valued object.
Definition: RooRealVar.h:36
A doubly linked list.
Definition: TList.h:44
RooAbsStudy is an abstract base class for RooStudyManager modules.
Definition: RooAbsStudy.h:33
void processBatchOutput(const char *filePat)
RooStudyPackage * _pkg
RooWorkspace & wspace()
void expandWildCardSpec(const char *spec, std::list< std::string > &result)
case with one single file
RooStudyManager is a utility class to manage studies that consist of repeated applications of generat...
RooAbsData is the common abstract base class for binned and unbinned datasets.
Definition: RooAbsData.h:44
void aggregateData(TList *olist)
RooDataSet is a container class to hold unbinned data.
Definition: RooDataSet.h:31
A RooPlot is a plot frame and a container for graphics objects within that frame. ...
Definition: RooPlot.h:44
void runProof(Int_t nExperiments, const char *proofHost="", Bool_t showGui=kTRUE)
Open PROOF-Lite session.
RooAbsPdf, the base class of all PDFs
Definition: RooAbsPdf.h:40
const Bool_t kTRUE
Definition: RtypesCore.h:87
RooWorkspace & wspace()
void prepareBatchInput(const char *studyName, Int_t nExpPerJob, Bool_t unifiedInput)
The RooWorkspace is a persistable container for RooFit projects.
Definition: RooWorkspace.h:43