Logo ROOT   6.12/07
Reference Guide
RooAICRegistry.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Project: RooFit *
3  * Package: RooFitCore *
4  * File: $Id: RooAICRegistry.h,v 1.11 2007/05/11 09:11:30 verkerke Exp $
5  * Authors: *
6  * WV, Wouter Verkerke, UC Santa Barbara, verkerke@slac.stanford.edu *
7  * DK, David Kirkby, UC Irvine, dkirkby@uci.edu *
8  * *
9  * Copyright (c) 2000-2005, Regents of the University of California *
10  * and Stanford University. All rights reserved. *
11  * *
12  * Redistribution and use in source and binary forms, *
13  * with or without modification, are permitted according to the terms *
14  * listed in LICENSE (http://roofit.sourceforge.net/license.txt) *
15  *****************************************************************************/
16 #ifndef ROO_AIC_REGISTRY
17 #define ROO_AIC_REGISTRY
18 
19 #include <vector>
20 #include <assert.h>
21 #include "Rtypes.h"
22 class RooArgSet ;
23 
24 typedef RooArgSet* pRooArgSet ;
25 
27 
28 public:
29  RooAICRegistry(UInt_t size = 10) ;
30  RooAICRegistry(const RooAICRegistry& other) ;
31  virtual ~RooAICRegistry() ;
32 
33  Int_t store(const std::vector<Int_t>& codeList, RooArgSet* set1 = 0, RooArgSet* set2 = 0,
34  RooArgSet* set3 = 0, RooArgSet* set4 = 0);
35  const std::vector<Int_t>& retrieve(Int_t masterCode) const ;
36  const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1) const ;
37  const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1, pRooArgSet& set2) const ;
38  const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1,
39  pRooArgSet& set2, pRooArgSet& set3, pRooArgSet& set4) const ;
40 
41 protected:
42 
43  std::vector<std::vector<Int_t> > _clArr; //! Array of array of code lists
44  std::vector<pRooArgSet> _asArr1; //! Array of 1st RooArgSet pointers
45  std::vector<pRooArgSet> _asArr2; //! Array of 2nd RooArgSet pointers
46  std::vector<pRooArgSet> _asArr3; //! Array of 3rd RooArgSet pointers
47  std::vector<pRooArgSet> _asArr4; //! Array of 4th RooArgSet pointers
48 
49  ClassDef(RooAICRegistry,2) // Registry for analytical integration codes
50 } ;
51 
52 #endif
RooArgSet * pRooArgSet
int Int_t
Definition: RtypesCore.h:41
std::vector< std::vector< Int_t > > _clArr
std::vector< pRooArgSet > _asArr4
Array of 3rd RooArgSet pointers.
#define ClassDef(name, id)
Definition: Rtypes.h:320
std::vector< pRooArgSet > _asArr3
Array of 2nd RooArgSet pointers.
std::vector< pRooArgSet > _asArr2
Array of 1st RooArgSet pointers.
virtual ~RooAICRegistry()
Destructor.
unsigned int UInt_t
Definition: RtypesCore.h:42
RooAICRegistry is a utility class for operator p.d.f classes that keeps track of analytical integrati...
Int_t store(const std::vector< Int_t > &codeList, RooArgSet *set1=0, RooArgSet *set2=0, RooArgSet *set3=0, RooArgSet *set4=0)
Store given arrays of integer codes, and up to four RooArgSets in the registry (each setX pointer may...
RooAICRegistry(UInt_t size=10)
std::vector< pRooArgSet > _asArr1
Array of array of code lists.
const std::vector< Int_t > & retrieve(Int_t masterCode) const
Retrieve the array of integer codes associated with the given master code.