41 ClassImp(RooAbsSelfCachedReal);
48 RooAbsSelfCachedReal::RooAbsSelfCachedReal(
const char *name,
const char *title, Int_t ipOrder) :
49 RooAbsCachedReal(name,title,ipOrder)
58 RooAbsSelfCachedReal::RooAbsSelfCachedReal(
const RooAbsSelfCachedReal& other,
const char* name) :
59 RooAbsCachedReal(other,name)
68 RooAbsSelfCachedReal::~RooAbsSelfCachedReal()
77 void RooAbsSelfCachedReal::fillCacheObject(RooAbsCachedReal::FuncCacheElem& cache)
const
79 RooDataHist& cacheHist = *cache.hist() ;
82 RooArgSet* cloneSet = (RooArgSet*) RooArgSet(*this).snapshot(kTRUE) ;
83 RooAbsSelfCachedReal* clone2 = (RooAbsSelfCachedReal*) cloneSet->find(GetName()) ;
84 clone2->disableCache(kTRUE) ;
85 clone2->attachDataSet(cacheHist) ;
88 for (Int_t i=0 ; i<cacheHist.numEntries() ; i++) {
89 const RooArgSet* obs = cacheHist.get(i) ;
90 Double_t wgt = clone2->getVal(obs) ;
103 RooArgSet* RooAbsSelfCachedReal::actualObservables(
const RooArgSet& nset)
const
108 for (
auto server : _serverList) {
109 serverSet.add(*server);
113 return (RooArgSet*) serverSet.selectCommon(nset);
123 RooArgSet* RooAbsSelfCachedReal::actualParameters(
const RooArgSet& nset)
const
126 RooArgSet *serverSet =
new RooArgSet;
128 for (
auto server : _serverList) {
129 serverSet->add(*server);
133 serverSet->remove(nset,kTRUE,kTRUE);