Logo ROOT   6.08/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 "Riosfwd.h"
21 #include <assert.h>
22 #include "Rtypes.h"
23 class RooArgSet ;
24 
25 typedef RooArgSet* pRooArgSet ;
26 
28 
29 public:
30  RooAICRegistry(UInt_t size = 10) ;
31  RooAICRegistry(const RooAICRegistry& other) ;
32  virtual ~RooAICRegistry() ;
33 
34  Int_t store(const std::vector<Int_t>& codeList, RooArgSet* set1 = 0, RooArgSet* set2 = 0,
35  RooArgSet* set3 = 0, RooArgSet* set4 = 0);
36  const std::vector<Int_t>& retrieve(Int_t masterCode) const ;
37  const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1) const ;
38  const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1, pRooArgSet& set2) const ;
39  const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1,
40  pRooArgSet& set2, pRooArgSet& set3, pRooArgSet& set4) const ;
41 
42 protected:
43 
44  std::vector<std::vector<Int_t> > _clArr; //! Array of array of code lists
45  std::vector<pRooArgSet> _asArr1; //! Array of 1st RooArgSet pointers
46  std::vector<pRooArgSet> _asArr2; //! Array of 2nd RooArgSet pointers
47  std::vector<pRooArgSet> _asArr3; //! Array of 3rd RooArgSet pointers
48  std::vector<pRooArgSet> _asArr4; //! Array of 4th RooArgSet pointers
49 
50  ClassDef(RooAICRegistry,2) // Registry for analytical integration codes
51 } ;
52 
53 #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:254
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.