00001 /******************************************************************************* 00002 * Project: BaBar detector at the SLAC PEP-II B-factory 00003 * Package: EvtGenBase 00004 * File: $Id: EvtDalitzFlatPdf.hh,v 1.1.1.2 2007/10/26 05:03:14 pingrg Exp $ 00005 * Author: Alexei Dvoretskii, dvoretsk@slac.stanford.edu, 2001-2002 00006 * 00007 * Copyright (C) 2002 Caltech 00008 *******************************************************************************/ 00009 00010 /* 00011 * Uniform PDF defined on a Dalitz plot. 00012 */ 00013 00014 #ifndef EVT_DALITZ_FLAT_PDF_HH 00015 #define EVT_DALITZ_FLAT_PDF_HH 00016 00017 #include <assert.h> 00018 #include "EvtGenBase/EvtPdf.hh" 00019 #include "EvtGenBase/EvtDalitzPlot.hh" 00020 #include "EvtGenBase/EvtDalitzPoint.hh" 00021 00022 class EvtDalitzFlatPdf : public EvtPdf<EvtDalitzPoint> { 00023 public: 00024 00025 EvtDalitzFlatPdf(const EvtDalitzPlot& dp); 00026 EvtDalitzFlatPdf(const EvtDalitzFlatPdf& other); 00027 virtual ~EvtDalitzFlatPdf(); 00028 virtual EvtPdf<EvtDalitzPoint>* clone() const; 00029 00030 virtual EvtValError compute_integral(int N) const; 00031 virtual EvtDalitzPoint randomPoint(); 00032 00033 protected: 00034 00035 virtual double pdf(const EvtDalitzPoint&) const; 00036 00037 EvtDalitzPlot _dp; 00038 }; 00039 00040 #endif