24 #define USEMEMPOOLFORARGSET 
   25 template <
class RooSet_t, 
size_t>
 
   26 class MemPoolForRooSets;
 
   28 class RooArgSet : 
public RooAbsCollection {
 
   31 #ifdef USEMEMPOOLFORARGSET 
   32   void* 
operator new (
size_t bytes);
 
   33   void* 
operator new (
size_t bytes, 
void* ptr) noexcept;
 
   34   void operator delete (
void *ptr);
 
   39   RooArgSet(
const RooArgList& list) ;
 
   40   RooArgSet(
const RooArgList& list, 
const RooAbsArg* var1) ;
 
   41   explicit RooArgSet(
const TCollection& tcoll, 
const char* name=
"") ;
 
   42   explicit RooArgSet(
const char *name);
 
   43   RooArgSet(
const RooArgSet& set1, 
const RooArgSet& set2,
 
   45   RooArgSet(
const RooAbsArg& var1, 
 
   47   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2, 
 
   49   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   50        const RooAbsArg& var3, 
 
   52   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   53        const RooAbsArg& var3, 
const RooAbsArg& var4, 
 
   55   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   56        const RooAbsArg& var3, 
const RooAbsArg& var4, 
 
   57        const RooAbsArg& var5, 
 
   59   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   60        const RooAbsArg& var3, 
const RooAbsArg& var4, 
 
   61        const RooAbsArg& var5, 
const RooAbsArg& var6, 
 
   63   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   64             const RooAbsArg& var3, 
const RooAbsArg& var4, 
 
   65        const RooAbsArg& var5, 
const RooAbsArg& var6, 
 
   66        const RooAbsArg& var7, 
 
   68   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   69             const RooAbsArg& var3, 
const RooAbsArg& var4, 
 
   70        const RooAbsArg& var5, 
const RooAbsArg& var6, 
 
   71        const RooAbsArg& var7, 
const RooAbsArg& var8, 
 
   73   RooArgSet(
const RooAbsArg& var1, 
const RooAbsArg& var2,
 
   74             const RooAbsArg& var3, 
const RooAbsArg& var4, 
 
   75        const RooAbsArg& var5, 
const RooAbsArg& var6, 
 
   76        const RooAbsArg& var7, 
const RooAbsArg& var8, 
 
   77        const RooAbsArg& var9, 
const char *name=
"");
 
   83   RooArgSet(
const RooArgSet& other, 
const char *name=
"");
 
   84   virtual TObject* clone(
const char* newname)
 const { 
return new RooArgSet(*
this,newname); }
 
   85   virtual TObject* create(
const char* newname)
 const { 
return new RooArgSet(newname); }
 
   86   RooArgSet& operator=(
const RooArgSet& other) { RooAbsCollection::operator=(other) ; 
return *this ;}
 
   88   virtual Bool_t add(
const RooAbsCollection& col, Bool_t silent=kFALSE) {
 
   90     return RooAbsCollection::add(col, silent);
 
   92   virtual Bool_t addOwned(
const RooAbsCollection& col, Bool_t silent=kFALSE) {
 
   94     return RooAbsCollection::addOwned(col, silent);
 
   96   virtual void addClone(
const RooAbsCollection& col, Bool_t silent=kFALSE) {
 
   98     RooAbsCollection::addClone(col, silent);
 
  101   virtual Bool_t add(
const RooAbsArg& var, Bool_t silent=kFALSE) ;
 
  102   virtual Bool_t addOwned(RooAbsArg& var, Bool_t silent=kFALSE);
 
  103   virtual RooAbsArg *addClone(
const RooAbsArg& var, Bool_t silent=kFALSE) ;
 
  105   using RooAbsCollection::operator[];
 
  106   RooAbsArg& operator[](
const char* name) 
const;
 
  110   virtual Bool_t readFromStream(std::istream& is, Bool_t compact, Bool_t verbose=kFALSE) {
 
  112     return readFromStream(is, compact, 0, 0, verbose) ;
 
  114   Bool_t readFromStream(std::istream& is, Bool_t compact, 
const char* flagReadAtt, 
const char* section, Bool_t verbose=kFALSE) ;
 
  115   virtual void writeToStream(std::ostream& os, Bool_t compact, 
const char* section=0) 
const;  
 
  116   void writeToFile(
const char* fileName) 
const ;
 
  117   Bool_t readFromFile(
const char* fileName, 
const char* flagReadAtt=0, 
const char* section=0, Bool_t verbose=kFALSE) ;
 
  120   Double_t getRealValue(
const char* name, Double_t defVal=0, Bool_t verbose=kFALSE) 
const ;
 
  121   const char* getCatLabel(
const char* name, 
const char* defVal=
"", Bool_t verbose=kFALSE) 
const ;
 
  122   Int_t getCatIndex(
const char* name, Int_t defVal=0, Bool_t verbose=kFALSE) 
const ;
 
  123   const char* getStringValue(
const char* name, 
const char* defVal=
"", Bool_t verbose=kFALSE) 
const ;
 
  124   Bool_t setRealValue(
const char* name, Double_t newVal=0, Bool_t verbose=kFALSE) ;
 
  125   Bool_t setCatLabel(
const char* name, 
const char* newVal=
"", Bool_t verbose=kFALSE) ;
 
  126   Bool_t setCatIndex(
const char* name, Int_t newVal=0, Bool_t verbose=kFALSE) ;
 
  127   Bool_t setStringValue(
const char* name, 
const char* newVal=
"", Bool_t verbose=kFALSE) ;
 
  129   static void cleanup() ;
 
  131   Bool_t isInRange(
const char* rangeSpec) ;
 
  134   RooArgSet * snapshot(
bool deepCopy = 
true)
 const {
 
  135     return static_cast<RooArgSet*
>(RooAbsCollection::snapshot(deepCopy));
 
  138   Bool_t snapshot(RooAbsCollection& output, Bool_t deepCopy=kTRUE)
 const {
 
  139     return RooAbsCollection::snapshot(output, deepCopy);
 
  144   Bool_t checkForDup(
const RooAbsArg& arg, Bool_t silent) 
const ;
 
  146 #ifdef USEMEMPOOLFORARGSET 
  148   typedef MemPoolForRooSets<RooArgSet, 10*600> MemPool; 
 
  152   static MemPool* memPool();
 
  155   ClassDef(RooArgSet,1)