#ifndef ROO_AIC_REGISTRY
#define ROO_AIC_REGISTRY
#include <vector>
#include "Riosfwd.h"
#include <assert.h>
#include "Rtypes.h"
class RooArgSet ;
typedef RooArgSet* pRooArgSet ;
class RooAICRegistry {
public:
RooAICRegistry(UInt_t size = 10) ;
RooAICRegistry(const RooAICRegistry& other) ;
virtual ~RooAICRegistry() ;
Int_t store(const std::vector<Int_t>& codeList, RooArgSet* set1 = 0, RooArgSet* set2 = 0,
RooArgSet* set3 = 0, RooArgSet* set4 = 0);
const std::vector<Int_t>& retrieve(Int_t masterCode) const ;
const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1) const ;
const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1, pRooArgSet& set2) const ;
const std::vector<Int_t>& retrieve(Int_t masterCode, pRooArgSet& set1,
pRooArgSet& set2, pRooArgSet& set3, pRooArgSet& set4) const ;
protected:
std::vector<std::vector<Int_t> > _clArr;
std::vector<pRooArgSet> _asArr1;
std::vector<pRooArgSet> _asArr2;
std::vector<pRooArgSet> _asArr3;
std::vector<pRooArgSet> _asArr4;
ClassDef(RooAICRegistry,2)
} ;
#endif