00001 /***************************************************************************** 00002 * Project: RooFit * 00003 * Package: RooFitCore * 00004 * File: $Id: RooTable.h,v 1.15 2007/05/11 09:11:30 verkerke Exp $ 00005 * Authors: * 00006 * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu * 00007 * DK, David Kirkby, UC Irvine, dkirkby@uci.edu * 00008 * * 00009 * Copyright (c) 2000-2005, Regents of the University of California * 00010 * and Stanford University. All rights reserved. * 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_TABLE 00017 #define ROO_TABLE 00018 00019 #include "Riosfwd.h" 00020 #include <assert.h> 00021 #include "TNamed.h" 00022 #include "RooAbsCategory.h" 00023 #include "RooPrintable.h" 00024 00025 class RooTable : public TNamed, public RooPrintable { 00026 public: 00027 00028 // Constructors, cloning and assignment 00029 RooTable() {} ; 00030 virtual ~RooTable() ; 00031 RooTable(const char *name, const char *title); 00032 RooTable(const RooTable& other) ; 00033 00034 virtual void fill(RooAbsCategory& cat, Double_t weight=1.0) = 0 ; 00035 00036 virtual Bool_t isIdentical(const RooTable& other) = 0 ; 00037 00038 protected: 00039 00040 ClassDef(RooTable,1) // Abstract interface for tables 00041 }; 00042 00043 #endif