00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #ifndef ROO_ARGUS_BG
00017 #define ROO_ARGUS_BG
00018
00019 #include "RooAbsPdf.h"
00020 #include "RooRealProxy.h"
00021
00022 class RooRealVar;
00023 class RooAbsReal;
00024
00025 class RooArgusBG : public RooAbsPdf {
00026 public:
00027 RooArgusBG() {} ;
00028 RooArgusBG(const char *name, const char *title,
00029 RooAbsReal& _m, RooAbsReal& _m0, RooAbsReal& _c);
00030 RooArgusBG(const char *name, const char *title,
00031 RooAbsReal& _m, RooAbsReal& _m0, RooAbsReal& _c, RooAbsReal& _p);
00032 RooArgusBG(const RooArgusBG& other,const char* name=0) ;
00033 virtual TObject* clone(const char* newname) const { return new RooArgusBG(*this,newname); }
00034 inline virtual ~RooArgusBG() { }
00035
00036 Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=0) const ;
00037 Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const ;
00038
00039 protected:
00040 RooRealProxy m ;
00041 RooRealProxy m0 ;
00042 RooRealProxy c ;
00043 RooRealProxy p ;
00044
00045 Double_t evaluate() const ;
00046
00047
00048 private:
00049 ClassDef(RooArgusBG,1)
00050 };
00051
00052 #endif