#ifndef ROO_GAUSSIAN
#define ROO_GAUSSIAN
#include "RooAbsPdf.h"
#include "RooRealProxy.h"
class RooRealVar;
class RooGaussian : public RooAbsPdf {
public:
RooGaussian() {} ;
RooGaussian(const char *name, const char *title,
RooAbsReal& _x, RooAbsReal& _mean, RooAbsReal& _sigma);
RooGaussian(const RooGaussian& other, const char* name=0) ;
virtual TObject* clone(const char* newname) const { return new RooGaussian(*this,newname); }
inline virtual ~RooGaussian() { }
Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=0) const ;
Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const ;
Int_t getGenerator(const RooArgSet& directVars, RooArgSet &generateVars, Bool_t staticInitOK=kTRUE) const;
void generateEvent(Int_t code);
protected:
RooRealProxy x ;
RooRealProxy mean ;
RooRealProxy sigma ;
Double_t evaluate() const ;
private:
ClassDef(RooGaussian,1)
};
#endif