25#define USEMEMPOOLFORARGSET
26template <
class RooSet_t,
size_t>
32#ifdef USEMEMPOOLFORARGSET
33 void*
operator new (
size_t bytes);
34 void*
operator new (
size_t bytes,
void* ptr)
noexcept;
35 void operator delete (
void *ptr);
49 template<
typename... Ts>
53 int dummy[] = { 0, (
processArg(moreArgsOrName), 0) ... };
62 template<
typename Iterator_t,
63 typename value_type =
typename std::iterator_traits<Iterator_t>::value_type,
64 typename = std::enable_if<std::is_convertible<const value_type*, const RooAbsArg*>::value> >
67 for (
auto it = beginIt; it != endIt; ++it) {
96 using RooAbsCollection::operator[];
136#ifdef USEMEMPOOLFORARGSET
#define ClassDefOverride(name, id)
typedef void((*Func_t)())
Memory pool for RooArgSet and RooDataSet.
RooAbsArg is the common abstract base class for objects that represent a value and a "shape" in RooFi...
RooAbsCollection is an abstract container object that can hold multiple RooAbsArg objects.
RooAbsCollection * snapshot(Bool_t deepCopy=kTRUE) const
Take a snap shot of current collection contents.
virtual Bool_t addOwned(RooAbsArg &var, Bool_t silent=kFALSE)
Add the specified argument to list.
virtual RooAbsArg * addClone(const RooAbsArg &var, Bool_t silent=kFALSE)
Add a clone of the specified argument to list.
virtual Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE)
Add the specified argument to list.
const char * GetName() const
Returns name of object.
RooAbsCollection & operator=(const RooAbsCollection &other)
The assignment operator sets the value of any argument in our set that also appears in the other set.
RooArgList is a container object that can hold multiple RooAbsArg objects.
RooArgSet is a container object that can hold multiple RooAbsArg objects.
RooArgSet(const RooAbsArg &arg, const Ts &... moreArgsOrName)
Construct a (non-owning) RooArgSet from one or more RooFit objects.
TObject * clone(const char *newname) const override
RooArgSet & operator=(const RooArgSet &other)
RooArgSet * snapshot(bool deepCopy=true) const
Use RooAbsCollection::snapshot(), but return as RooArgSet.
RooArgSet()
Default constructor.
~RooArgSet() override
Destructor.
Bool_t snapshot(RooAbsCollection &output, Bool_t deepCopy=kTRUE) const
Take a snap shot of current collection contents.
virtual Bool_t readFromStream(std::istream &is, Bool_t compact, Bool_t verbose=kFALSE)
Shortcut for readFromStream(std::istream&, Bool_t, const char*, const char*, Bool_t),...
Bool_t readFromFile(const char *fileName, const char *flagReadAtt=0, const char *section=0, Bool_t verbose=kFALSE)
Read contents of the argset from specified file.
Bool_t isInRange(const char *rangeSpec)
void processArg(const char *name)
Bool_t add(const RooAbsArg &var, Bool_t silent=kFALSE) override
Add element to non-owning set.
void writeToFile(const char *fileName) const
Write contents of the argset to specified file.
TObject * create(const char *newname) const override
static MemPool * memPool()
virtual void writeToStream(std::ostream &os, Bool_t compact, const char *section=0) const
Write the contents of the argset in ASCII form to given stream.
MemPoolForRooSets< RooArgSet, 10 *600 > MemPool
void processArg(const RooArgSet &set)
void processArg(const RooAbsArg &var)
RooAbsArg * addClone(const RooAbsArg &var, Bool_t silent=kFALSE) override
Add clone of specified element to an owning set.
Bool_t checkForDup(const RooAbsArg &arg, Bool_t silent) const
Check if element with var's name is already in set.
RooArgSet(Iterator_t beginIt, Iterator_t endIt, const char *name="")
Construct from iterators.
RooAbsArg & operator[](const TString &str) const
Get reference to an element using its name.
Bool_t addOwned(RooAbsArg &var, Bool_t silent=kFALSE) override
Add element to an owning set.
Collection abstract base class.
Mother of all ROOT objects.
static void output(int code)