00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 #ifndef ROO_CRUIJFF
00012 #define ROO_CRUIJFF
00013 
00014 #include "RooFitCore/RooAbsPdf.hh"
00015 #include "RooFitCore/RooRealProxy.hh"
00016 
00017 class RooRealVar;
00018 class RooAbsReal;
00019 
00020 class RooCruijff : public RooAbsPdf {
00021 public:
00022   RooCruijff(const char *name, const char *title, 
00023              RooAbsReal& _x,
00024              RooAbsReal& _m0, 
00025              RooAbsReal& _sigmaL, RooAbsReal& _sigmaR,
00026              RooAbsReal& _alphaL, RooAbsReal& _alphaR);
00027   
00028   RooCruijff(const RooCruijff& other, const char* name = 0);
00029 
00030   virtual TObject* clone(const char* newname) const { 
00031     return new RooCruijff(*this,newname); }
00032 
00033   inline virtual ~RooCruijff() { }
00034 
00035 protected:
00036   RooRealProxy x;
00037   RooRealProxy m0;
00038   RooRealProxy sigmaL;
00039   RooRealProxy sigmaR;
00040   RooRealProxy alphaL;
00041   RooRealProxy alphaR;
00042 
00043   Double_t evaluate() const;
00044 
00045 private:
00046   ClassDef(RooCruijff,0)
00047 };
00048 
00049 #endif