template<class RooSet_t, std::size_t POOLSIZE>
class MemPoolForRooSets< RooSet_t, POOLSIZE >
Memory pool for RooArgSet and RooDataSet.
RooArgSet and RooDataSet were using a mempool that guarantees that allocating, de-allocating and re-allocating a set does not yield the same pointer. Since both were using the same logic, the functionality has been put in this class. This class solves RooFit's static destruction order problems by intentionally leaking arenas of the mempool that still contain live objects at the end of the program.
When the set types are compared based on a unique ID instead of their pointer, one can go back to normal memory management, and this class becomes obsolete.
Definition at line 33 of file MemPoolForRooSets.h.
template<class RooSet_t , std::size_t POOLSIZE>
RooFit relies on unique pointers for RooArgSets.
Here, memory has to be allocated until a completely new chunk of memory is encountered. As soon as RooXXXSets can be identified with a unique ID, this becomes obsolete.
Definition at line 289 of file MemPoolForRooSets.h.