49 _clearOnRedirect(clearCacheOnServerRedirect),
50 _allowOptimize(allowOptimize),
51 _optCacheModeSeen(false)
61 _clearOnRedirect(other._clearOnRedirect),
62 _allowOptimize(other._allowOptimize),
63 _optCacheModeSeen(false)
94 _object[i]->redirectServersHook(newServerList,mustReplaceAll,nameChange,isRecursive) ;
144 _object[i]->optimizeCacheMode(obs,optNodes,processedNodes) ;
217 _object[i]->findConstantNodes(obs,cacheList, processedNodes) ;
static void indent(ostringstream &buf, int indent_level)
Common abstract base class for objects that represent a value and a "shape" in RooFit.
OperMode operMode() const
Query the operation mode of this node.
Abstract base class for objects to be stored in RooAbsCache cache manager objects.
virtual void optimizeCacheMode(const RooArgSet &obs, RooArgSet &optNodes, RooLinkedList &processedNodes)
Interface for cache optimization calls.
void setOwner(RooAbsArg *owner)
RooAbsArg * _owner
Pointer to owning RooAbsArg.
Abstract container object that can hold multiple RooAbsArg objects.
virtual void removeAll()
Remove all arguments from our set, deleting them if we own them.
virtual bool add(const RooAbsArg &var, bool silent=false)
Add the specified argument to list.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
Manages the storage of any type of data indexed on the choice of normalization and optionally the set...
Int_t cacheSize() const
Return size of cache.
virtual void sterilize()
Clear the cache payload but retain slot mapping w.r.t to normalization and integration sets.
std::vector< RooAbsCacheElement * > _object
! Payload
Collection class for internal use, storing a collection of RooAbsArg pointers in a doubly linked list...
Implementation of a RooCacheManager<RooAbsCacheElement> that specializes in the storage of cache elem...
void operModeHook() override
Intercept changes to cache operation mode and forward to cache elements.
RooObjCacheManager(RooAbsArg *owner=nullptr, Int_t maxSize=2, bool clearCacheOnServerRedirect=true, bool allowOptimize=false)
Constructor of object cache manager for given owner.
~RooObjCacheManager() override
Destructor.
void insertObjectHook(RooAbsCacheElement &) override
Set owner link on all object inserted into cache.
void printCompactTreeHook(std::ostream &, const char *) override
Add details on cache contents when printing in tree mode.
bool redirectServersHook(const RooAbsCollection &, bool, bool, bool) override
Intercept server redirect calls.
static bool _clearObsList
Clear obslist on sterilize?
void findConstantNodes(const RooArgSet &, RooArgSet &, RooLinkedList &) override
If clearOnRedirect is false, forward constant term optimization calls to cache elements.
RooArgSet * _optCacheObservables
! current optCacheObservables
void sterilize() override
Clear the cache payload but retain slot mapping w.r.t to normalization and integration sets.
void optimizeCacheMode(const RooArgSet &, RooArgSet &, RooLinkedList &) override
Intercept calls to perform automatic optimization of cache mode operation.
const char * GetName() const override
Returns name of object.