16#ifndef ROO_EXPENSIVE_OBJECT_CACHE 
   17#define ROO_EXPENSIVE_OBJECT_CACHE 
   78  std::map<TString,ExpensiveObject*> 
_map ;
 
 
#define ClassDef(name, id)
 
#define ClassDefOverride(name, id)
 
RooArgSet is a container object that can hold multiple RooAbsArg objects.
 
ExpensiveObject()=default
 
void setPayload(TObject *obj)
 
TString _ownerName
Name of RooAbsArg object that is associated to cache contents.
 
virtual ~ExpensiveObject()
 
TObject * _payload
Payload.
 
std::map< TString, double > _realRefParams
Names and values of real-valued reference parameters.
 
bool matches(TClass *tc, const RooArgSet ¶ms)
Check object type ;.
 
const char * ownerName() const
 
Int_t _uid
Unique element ID ;.
 
std::map< TString, Int_t > _catRefParams
Names and values of discrete-valued reference parameters.
 
const TObject * payload() const
 
Singleton class that serves as repository for objects that are expensive to calculate.
 
const TObject * getObj(Int_t uniqueID)
Retrieve payload object of cache element with given unique ID.
 
RooExpensiveObjectCache()
 
~RooExpensiveObjectCache() override
Destructor.
 
bool registerObject(const char *ownerName, const char *objectName, TObject &cacheObject, const RooArgSet ¶ms)
Register object associated with given name and given associated parameters with given values in cache...
 
bool clearObj(Int_t uniqueID)
Clear cache element with given unique ID Retrieve payload object of cache element with given unique I...
 
std::map< TString, ExpensiveObject * > _map
 
RooExpensiveObjectCache(const RooExpensiveObjectCache &other)
 
const TObject * retrieveObject(const char *name, TClass *tclass, const RooArgSet ¶ms)
Retrieve object from cache that was registered under given name with given parameters,...
 
void clearAll()
Clear all cache elements.
 
bool setObj(Int_t uniqueID, TObject *obj)
Place new payload object in cache element with given unique ID.
 
static RooExpensiveObjectCache & instance()
Return reference to singleton instance.
 
void importCacheObjects(RooExpensiveObjectCache &other, const char *ownerName, bool verbose=false)
 
TClass instances represent classes, structs and namespaces in the ROOT type system.
 
Mother of all ROOT objects.
 
const char * Data() const