00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef ROO_LOGNORMAL
00012 #define ROO_LOGNORMAL
00013
00014 #include "RooAbsPdf.h"
00015 #include "RooRealProxy.h"
00016
00017 class RooRealVar;
00018
00019 class RooLognormal : public RooAbsPdf {
00020 public:
00021 RooLognormal() {} ;
00022 RooLognormal(const char *name, const char *title,
00023 RooAbsReal& _x, RooAbsReal& _m0, RooAbsReal& _k);
00024 RooLognormal(const RooLognormal& other, const char* name=0) ;
00025 virtual TObject* clone(const char* newname) const { return new RooLognormal(*this,newname); }
00026 inline virtual ~RooLognormal() { }
00027
00028 Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=0) const ;
00029 Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const ;
00030
00031 Int_t getGenerator(const RooArgSet& directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const;
00032 void generateEvent(Int_t code);
00033
00034 protected:
00035
00036 RooRealProxy x ;
00037 RooRealProxy m0 ;
00038 RooRealProxy k ;
00039
00040 Double_t evaluate() const ;
00041
00042 private:
00043
00044 ClassDef(RooLognormal,1)
00045 };
00046
00047 #endif