Go to the documentation of this file.00001 #ifndef HiggsAnalysis_CombinedLimit_DebugProposal_h
00002 #define HiggsAnalysis_CombinedLimit_DebugProposal_h
00003
00004 #include <memory>
00005 #include <Rtypes.h>
00006
00007 class RooAbsData;
00008 #include <RooArgSet.h>
00009 #include <RooAbsReal.h>
00010 #include <RooAbsPdf.h>
00011
00012 #include <RooStats/ProposalFunction.h>
00013
00014 class DebugProposal : public RooStats::ProposalFunction {
00015
00016 public:
00017 DebugProposal() : RooStats::ProposalFunction(), prop_(0), nll_(0), params_(), tries_(0) {}
00018 DebugProposal(RooStats::ProposalFunction *p, RooAbsPdf *pdf, RooAbsData *data, int tries) ;
00019
00020
00021 virtual void Propose(RooArgSet& xPrime, RooArgSet& x);
00022
00023
00024
00025
00026 virtual Bool_t IsSymmetric(RooArgSet& x1, RooArgSet& x2) ;
00027
00028
00029
00030 virtual Double_t GetProposalDensity(RooArgSet& x1, RooArgSet& x2);
00031
00032 virtual ~DebugProposal() {}
00033
00034 ClassDef(DebugProposal,1)
00035
00036 private:
00037 RooStats::ProposalFunction *prop_;
00038 std::auto_ptr<RooAbsReal> nll_;
00039 RooAbsPdf *pdf_;
00040 RooArgSet params_;
00041 int tries_;
00042 void tracePdf(RooAbsReal *pdf) ;
00043 };
00044
00045 #endif