00001 #ifndef __BCROOINTERFACE__H
00002 #define __BCROOINTERFACE__H
00003
00004 #include "RooAbsPdf.h"
00005 #include "RooArgList.h"
00006 #include "RooArgSet.h"
00007 #include "RooDataSet.h"
00008 #include "RooNLLVar.h"
00009
00010 #include <BAT/BCModel.h>
00011
00012
00013
00014
00015
00016
00017 class BCRooInterface : public BCModel
00018 {
00019
00020 public:
00021
00022
00023 BCRooInterface( );
00024
00025 BCRooInterface( const char* name );
00026
00027 ~BCRooInterface();
00028
00029
00030 void DefineParameters();
00031 double LogAPrioriProbability(std::vector <double> parameters);
00032 double LogLikelihood(std::vector <double> parameters);
00033
00034
00035 void Initialize( const char* rootFile,
00036 const char* wsName = "batWS",
00037 const char* dataName = "data",
00038 const char* modelName = "model",
00039 const char* priorName = "priorPOI",
00040 const char* priorNuisanceName= "priorNuisance",
00041 const char* paramsName = "parameters",
00042 const char* listPOIName = "POI" );
00043
00044 private:
00045
00046 RooAbsData* fData;
00047 RooAbsPdf* fModel;
00048 RooNLLVar* fNll;
00049 RooArgSet* fObservables;
00050 RooArgList* fParams;
00051 RooAbsPdf* fPrior;
00052
00053 };
00054
00055 #endif
00056