RooBinnedPdf.hh

Go to the documentation of this file.
00001 /*****************************************************************************
00002 * Project: BaBar detector at the SLAC PEP-II B-factory
00003 * Package: RooRarFit
00004  *    File: $Id: RooBinnedPdf.rdl,v 1.4 2011/06/16 13:18:48 fwilson Exp $
00005  * Authors:                                                                  *
00006  *    Aaron Roodman, Stanford Linear Accelerator Center, Stanford University *
00007  *    Modified by Wouter                                                     *
00008  *                                                                           *
00009  * Copyright (C) 2005-2012, Stanford University. All rights reserved.        *
00010  *           
00011  *                                                                           *
00012  * Redistribution and use in source and binary forms,                        *
00013  * with or without modification, are permitted according to the terms        *
00014  * listed in LICENSE (http://roofit.sourceforge.net/license.txt)             *
00015  *****************************************************************************/
00016 #ifndef ROO_BINNEDPDF_HH
00017 #define ROO_BINNEDPDF_HH
00018 
00019 #include "RooFitCore/RooAbsPdf.hh"
00020 #include "RooFitCore/RooRealProxy.hh"
00021 #include "RooFitCore/RooListProxy.hh"
00022 #include "TArrayD.h"
00023 //#include <iostream>
00024 using namespace std;
00025 
00026 
00027 class RooRealVar;
00028 class RooArgList ;
00029 
00030 class RooBinnedPdf : public RooAbsPdf {
00031 
00032 private:
00033   Double_t localEval(const Double_t) const;
00034 
00035 public:
00036 
00037   RooBinnedPdf(const char *name, const char *title,
00038                 RooAbsReal& x, const RooArgList& coefList, const TArrayD& limits) ;
00039 
00040   RooBinnedPdf(const RooBinnedPdf& other, const char* name = 0);
00041   virtual TObject* clone(const char* newname) const { return new RooBinnedPdf(*this, newname); }
00042   virtual ~RooBinnedPdf() ;
00043 
00044   Int_t getAnalyticalIntegral(RooArgSet& allVars, RooArgSet& analVars, const char* rangeName=0) const ;
00045   Double_t analyticalIntegral(Int_t code, const char* rangeName=0) const ;
00046   Int_t getnBins();
00047   Double_t* getLimits();
00048 
00049 protected:
00050 
00051   RooRealProxy _x;
00052   RooListProxy _coefList ;
00053   TArrayD _limits;
00054   Int_t _nBins ;
00055   Double_t evaluate() const;
00056 
00057   ClassDef(RooBinnedPdf,1) // Parametric Step Function Pdf
00058 };
00059 
00060 #endif

Generated on 30 Oct 2013 for RooRarFit by  doxygen 1.4.7