/*****************************************************************************
 * Project: RooFit                                                           *
 * Package: RooFitCore                                                       *
 *    File: $Id$
 * Author:                                                                   *
 *   Tristan du Pree, Nikhef, Amsterdam, tdupree@nikhef.nl                   *
 *                                                                           *
 * Copyright (c) 2000-2005, Regents of the University of California          *
 *                          and Stanford University. All rights reserved.    *
 *                                                                           *
 * Redistribution and use in source and binary forms,                        *
 * with or without modification, are permitted according to the terms        *
 * listed in LICENSE (http://roofit.sourceforge.net/license.txt)             *
 *****************************************************************************/
#ifndef ROO_MULTIBINOMIAL
#define ROO_MULTIBINOMIAL

#include "RooAbsReal.h"
#include "RooListProxy.h"
#include "TString.h" 

class RooArgList ;


class RooMultiBinomial : public RooAbsReal {
 public:
  // Constructors, assignment etc
  inline RooMultiBinomial() { 
  }

  RooMultiBinomial(const char *name, const char *title, const RooArgList& effFuncList, const RooArgList& catList, Bool_t ignoreNonVisible);
  RooMultiBinomial(const RooMultiBinomial& other, const char* name=0);
  virtual TObject* clone(const char* newname) const { return new RooMultiBinomial(*this,newname); }
  virtual ~RooMultiBinomial();

 protected:

  // Function evaluation
  virtual Double_t evaluate() const ;

 private:

  RooListProxy _catList ; // Accept/reject categories
  RooListProxy _effFuncList ; // Efficiency functions per category
  Bool_t _ignoreNonVisible ; // Ignore combination of only rejects (since invisible)

  ClassDef(RooMultiBinomial,1) // Simultaneous pdf of N Binomial distributions with associated efficiency functions
  };

#endif
 RooMultiBinomial.h:1
 RooMultiBinomial.h:2
 RooMultiBinomial.h:3
 RooMultiBinomial.h:4
 RooMultiBinomial.h:5
 RooMultiBinomial.h:6
 RooMultiBinomial.h:7
 RooMultiBinomial.h:8
 RooMultiBinomial.h:9
 RooMultiBinomial.h:10
 RooMultiBinomial.h:11
 RooMultiBinomial.h:12
 RooMultiBinomial.h:13
 RooMultiBinomial.h:14
 RooMultiBinomial.h:15
 RooMultiBinomial.h:16
 RooMultiBinomial.h:17
 RooMultiBinomial.h:18
 RooMultiBinomial.h:19
 RooMultiBinomial.h:20
 RooMultiBinomial.h:21
 RooMultiBinomial.h:22
 RooMultiBinomial.h:23
 RooMultiBinomial.h:24
 RooMultiBinomial.h:25
 RooMultiBinomial.h:26
 RooMultiBinomial.h:27
 RooMultiBinomial.h:28
 RooMultiBinomial.h:29
 RooMultiBinomial.h:30
 RooMultiBinomial.h:31
 RooMultiBinomial.h:32
 RooMultiBinomial.h:33
 RooMultiBinomial.h:34
 RooMultiBinomial.h:35
 RooMultiBinomial.h:36
 RooMultiBinomial.h:37
 RooMultiBinomial.h:38
 RooMultiBinomial.h:39
 RooMultiBinomial.h:40
 RooMultiBinomial.h:41
 RooMultiBinomial.h:42
 RooMultiBinomial.h:43
 RooMultiBinomial.h:44
 RooMultiBinomial.h:45
 RooMultiBinomial.h:46
 RooMultiBinomial.h:47
 RooMultiBinomial.h:48
 RooMultiBinomial.h:49
 RooMultiBinomial.h:50