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