Logo ROOT  
Reference Guide
RooAbsCollection Class Referenceabstract

RooAbsCollection is an abstract container object that can hold multiple RooAbsArg objects.

Collections are ordered and can contain multiple objects of the same name, (but a derived implementation can enforce unique names). The storage of objects is implemented using the container denoted by RooAbsCollection::Storage_t.

Definition at line 28 of file RooAbsCollection.h.

Public Types

using const_iterator = Storage_t::const_iterator
 
using Storage_t = std::vector< RooAbsArg * >
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 
- Public Types inherited from RooPrintable
enum  ContentsOption {
  kName =1 , kClassName =2 , kValue =4 , kArgs =8 ,
  kExtras =16 , kAddress =32 , kTitle =64 , kCollectionHeader =128
}
 
enum  StyleOption {
  kInline =1 , kSingleLine =2 , kStandard =3 , kVerbose =4 ,
  kTreeStructure =5
}
 

Public Member Functions

 RooAbsCollection ()
 Default constructor. More...
 
 RooAbsCollection (const char *name)
 Empty collection constructor. More...
 
 RooAbsCollection (const RooAbsCollection &other, const char *name="")
 Copy constructor. More...
 
virtual ~RooAbsCollection ()
 Destructor. More...
 
virtual Bool_t add (const RooAbsArg &var, Bool_t silent=kFALSE)
 Add the specified argument to list. More...
 
virtual Bool_t add (const RooAbsCollection &list, Bool_t silent=kFALSE)
 Add a collection of arguments to this collection by calling add() for each element in the source collection. More...
 
virtual RooAbsArgaddClone (const RooAbsArg &var, Bool_t silent=kFALSE)
 Add a clone of the specified argument to list. More...
 
virtual void addClone (const RooAbsCollection &list, Bool_t silent=kFALSE)
 Add a collection of arguments to this collection by calling addOwned() for each element in the source collection. More...
 
virtual Bool_t addOwned (const RooAbsCollection &list, Bool_t silent=kFALSE)
 Add a collection of arguments to this collection by calling addOwned() for each element in the source collection. More...
 
virtual Bool_t addOwned (RooAbsArg &var, Bool_t silent=kFALSE)
 Add the specified argument to list. More...
 
Bool_t allInRange (const char *rangeSpec) const
 Return true if all contained object report to have their value inside the specified range. More...
 
void assignFast (const RooAbsCollection &other, Bool_t setValDirty=kTRUE)
 Functional equivalent of operator=() but assumes this and other collection have same layout. More...
 
RooAbsCollectionassignValueOnly (const RooAbsCollection &other, Bool_t oneSafe=kFALSE)
 The assignment operator sets the value of any argument in our set that also appears in the other set. More...
 
const_iterator begin () const
 
void clear ()
 Clear contents. If the collection is owning, it will also delete the contents. More...
 
virtual TObjectclone (const char *newname) const =0
 
virtual TObjectClone (const char *newname=0) const
 Make a clone of an object using the Streamer facility. More...
 
Bool_t contains (const RooAbsArg &var) const
 
Bool_t containsInstance (const RooAbsArg &var) const
 
std::string contentsString () const
 Return comma separated list of contained object names as STL string. More...
 
virtual TObjectcreate (const char *newname) const =0
 
TIteratorcreateIterator (Bool_t dir=kIterForward) const R__SUGGEST_ALTERNATIVE("begin()
 TIterator-style iteration over contained elements. More...
 
virtual Int_t defaultPrintContents (Option_t *opt) const
 Define default RooPrinable print options for given Print() flag string For inline printing only show value of objects, for default print show name,class name value and extras of each object. More...
 
void dump () const
 Base contents dumper for debugging purposes. More...
 
bool empty () const
 
TIterator end () and range-based for loops.")
 
RooLinkedListIter end () and range-based for loops.")
 
RooFIter end () and range-based for loops.")
 
const_iterator end () const
 
Bool_t equals (const RooAbsCollection &otherColl) const
 Check if this and other collection have identically-named contents. More...
 
RooAbsArgfind (const char *name) const
 Find object with given name in list. More...
 
RooAbsArgfind (const RooAbsArg &) const
 Find object with given name in list. More...
 
RooAbsArgfirst () const
 
RooFIter fwdIterator () const R__SUGGEST_ALTERNATIVE("begin()
 One-time forward iterator. More...
 
Int_t getHashTableSize () const
 
const char * GetName () const
 Returns name of object. More...
 
Int_t getSize () const
 
Int_t index (const char *name) const
 Returns index of arg with given name, or -1 if arg is not in the collection. More...
 
Int_t index (const RooAbsArg &arg) const
 Returns index of given arg, or -1 if arg is not in the collection. More...
 
Int_t index (const RooAbsArg *arg) const
 Returns index of given arg, or -1 if arg is not in the collection. More...
 
Bool_t isOwning () const
 
RooLinkedListIter iterator (Bool_t dir=kIterForward) const R__SUGGEST_ALTERNATIVE("begin()
 TIterator-style iteration over contained elements. More...
 
RooAbsCollectionoperator= (const RooAbsCollection &other)
 The assignment operator sets the value of any argument in our set that also appears in the other set. More...
 
RooAbsArgoperator[] (Storage_t::size_type i) const
 
Bool_t overlaps (const RooAbsCollection &otherColl) const
 Check if this and other collection have common entries. More...
 
virtual void Print (Option_t *options=0) const
 This method must be overridden when a class wants to print itself. More...
 
virtual void printClassName (std::ostream &os) const
 Return collection class name. More...
 
void printLatex (const RooCmdArg &arg1=RooCmdArg(), const RooCmdArg &arg2=RooCmdArg(), const RooCmdArg &arg3=RooCmdArg(), const RooCmdArg &arg4=RooCmdArg(), const RooCmdArg &arg5=RooCmdArg(), const RooCmdArg &arg6=RooCmdArg(), const RooCmdArg &arg7=RooCmdArg(), const RooCmdArg &arg8=RooCmdArg()) const
 Output content of collection as LaTex table. More...
 
void printLatex (std::ostream &ofs, Int_t ncol, const char *option="NEYU", Int_t sigDigit=1, const RooLinkedList &siblingLists=RooLinkedList(), const RooCmdArg *formatCmd=0) const
 Internal implementation function of printLatex. More...
 
virtual void printMultiline (std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
 Implement multiline printing of collection, one line for each contained object showing the requested content. More...
 
virtual void printName (std::ostream &os) const
 Return collection name. More...
 
virtual void printTitle (std::ostream &os) const
 Return collection title. More...
 
virtual void printValue (std::ostream &os) const
 Print value of collection, i.e. More...
 
virtual void RecursiveRemove (TObject *obj)
 If one of the TObject we have a referenced to is deleted, remove the reference. More...
 
void releaseOwnership ()
 
virtual Bool_t remove (const RooAbsArg &var, Bool_t silent=kFALSE, Bool_t matchByNameOnly=kFALSE)
 Remove the specified argument from our list. More...
 
Bool_t remove (const RooAbsCollection &list, Bool_t silent=kFALSE, Bool_t matchByNameOnly=kFALSE)
 Remove each argument in the input list from our list using remove(const RooAbsArg&). More...
 
template<class forwardIt >
void remove (forwardIt rangeBegin, forwardIt rangeEnd, Bool_t silent=kFALSE, Bool_t matchByNameOnly=kFALSE)
 
virtual void removeAll ()
 Remove all arguments from our set, deleting them if we own them. More...
 
virtual Bool_t replace (const RooAbsArg &var1, const RooAbsArg &var2)
 Replace var1 with var2 and return kTRUE for success. More...
 
Bool_t replace (const RooAbsCollection &other)
 Replace any args in our set with args of the same name from the other set and return kTRUE for success. More...
 
void reserve (Storage_t::size_type count)
 
RooAbsCollectionselectByAttrib (const char *name, Bool_t value) const
 Create a subset of the current collection, consisting only of those elements with the specified attribute set. More...
 
RooAbsCollectionselectByName (const char *nameList, Bool_t verbose=kFALSE) const
 Create a subset of the current collection, consisting only of those elements with names matching the wildcard expressions in nameList, supplied as a comma separated list. More...
 
RooAbsCollectionselectCommon (const RooAbsCollection &refColl) const
 Create a subset of the current collection, consisting only of those elements that are contained as well in the given reference collection. More...
 
void setAttribAll (const Text_t *name, Bool_t value=kTRUE)
 Set given attribute in each element of the collection by calling each elements setAttribute() function. More...
 
void setHashTableSize (Int_t)
 
void setName (const char *name)
 
Storage_t::size_type size () const
 
RooAbsCollectionsnapshot (Bool_t deepCopy=kTRUE) const
 Take a snap shot of current collection contents. More...
 
Bool_t snapshot (RooAbsCollection &output, Bool_t deepCopy=kTRUE) const
 Take a snap shot of current collection contents: An owning collection is returned containing clones of. More...
 
void sort (Bool_t reverse=false)
 Sort collection using std::sort and name comparison. More...
 
void takeOwnership ()
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
- Public Member Functions inherited from RooPrintable
 RooPrintable ()
 
virtual ~RooPrintable ()
 
virtual Int_t defaultPrintContents (Option_t *opt) const
 Default choice of contents to be printed (name and value) More...
 
virtual StyleOption defaultPrintStyle (Option_t *opt) const
 
virtual void printAddress (std::ostream &os) const
 Print class name of object. More...
 
virtual void printArgs (std::ostream &os) const
 Interface for printing of object arguments. More...
 
virtual void printClassName (std::ostream &os) const
 Print class name of object. More...
 
virtual void printExtras (std::ostream &os) const
 Interface to print extras of object. More...
 
virtual void printMultiline (std::ostream &os, Int_t contents, Bool_t verbose=kFALSE, TString indent="") const
 Interface for detailed printing of object. More...
 
virtual void printName (std::ostream &os) const
 Print name of object. More...
 
virtual void printStream (std::ostream &os, Int_t contents, StyleOption style, TString indent="") const
 Print description of object on ostream, printing contents set by contents integer, which is interpreted as an OR of 'enum ContentsOptions' values and in the style given by 'enum StyleOption'. More...
 
virtual void printTitle (std::ostream &os) const
 Print title of object. More...
 
virtual void printTree (std::ostream &os, TString indent="") const
 Interface for tree structure printing of object. More...
 
virtual void printValue (std::ostream &os) const
 Interface to print value of object. More...
 

Protected Types

using LegacyIterator_t = TIteratorToSTLInterface< Storage_t >
 

Protected Member Functions

Bool_t addServerClonesToList (const RooAbsArg &var)
 Add clones of servers of given argument to end of list. More...
 
void clearStructureTags ()
 Typed structure tag. More...
 
void makeStructureTag ()
 
void makeTypedStructureTag ()
 
void safeDeleteList ()
 Examine client server dependencies in list and delete contents in safe order: any client is deleted before a server is deleted. More...
 
TNamedstructureTag ()
 
TNamedtypedStructureTag ()
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

Protected Attributes

Bool_t _allRRV
 
Storage_t _list
 
TString _name
 
Bool_t _ownCont
 
TNamed_structureTag {nullptr}
 
TNamed_typedStructureTag {nullptr}
 Structure tag. More...
 

Private Member Functions

std::unique_ptr< LegacyIterator_tmakeLegacyIterator (bool forward=true) const
 Factory for legacy iterators. More...
 

Friends

class RooMultiCatIter
 

Additional Inherited Members

- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Static Public Member Functions inherited from RooPrintable
static std::ostream & defaultPrintStream (std::ostream *os=0)
 Return a reference to the current default stream to use in Print(). More...
 
static void nameFieldLength (Int_t newLen)
 Set length of field reserved from printing name of RooAbsArgs in multi-line collection printing to given amount. More...
 
- Static Protected Attributes inherited from RooPrintable
static Int_t _nameLength
 

#include <RooAbsCollection.h>

Inheritance diagram for RooAbsCollection:
[legend]

Member Typedef Documentation

◆ const_iterator

using RooAbsCollection::const_iterator = Storage_t::const_iterator

Definition at line 31 of file RooAbsCollection.h.

◆ LegacyIterator_t

◆ Storage_t

using RooAbsCollection::Storage_t = std::vector<RooAbsArg*>

Definition at line 30 of file RooAbsCollection.h.

Constructor & Destructor Documentation

◆ RooAbsCollection() [1/3]

RooAbsCollection::RooAbsCollection ( )

Default constructor.

Definition at line 68 of file RooAbsCollection.cxx.

◆ RooAbsCollection() [2/3]

RooAbsCollection::RooAbsCollection ( const char *  name)

Empty collection constructor.

Definition at line 82 of file RooAbsCollection.cxx.

◆ ~RooAbsCollection()

RooAbsCollection::~RooAbsCollection ( )
virtual

Destructor.

Definition at line 121 of file RooAbsCollection.cxx.

◆ RooAbsCollection() [3/3]

RooAbsCollection::RooAbsCollection ( const RooAbsCollection other,
const char *  name = "" 
)

Copy constructor.

Note that a copy of a collection is always non-owning, even the source collection is owning. To create an owning copy of a collection (owning or not), use the snapshot() method.

Definition at line 98 of file RooAbsCollection.cxx.

Member Function Documentation

◆ add() [1/2]

Bool_t RooAbsCollection::add ( const RooAbsArg var,
Bool_t  silent = kFALSE 
)
virtual

Add the specified argument to list.

Returns kTRUE if successful, or else kFALSE if a variable of the same name is already in the list or the list owns its variables (in this case, try addClone() or addOwned() instead).

Reimplemented in RooArgSet, RooListProxy, and RooSetProxy.

Definition at line 435 of file RooAbsCollection.cxx.

◆ add() [2/2]

Bool_t RooAbsCollection::add ( const RooAbsCollection list,
Bool_t  silent = kFALSE 
)
virtual

Add a collection of arguments to this collection by calling add() for each element in the source collection.

Reimplemented in RooArgSet, RooListProxy, and RooSetProxy.

Definition at line 457 of file RooAbsCollection.cxx.

◆ addClone() [1/2]

RooAbsArg * RooAbsCollection::addClone ( const RooAbsArg var,
Bool_t  silent = kFALSE 
)
virtual

Add a clone of the specified argument to list.

Returns a pointer to the clone if successful, or else zero if a variable of the same name is already in the list or the list does not own its variables (in this case, try add() instead.) Calling addClone() on an empty list forces it to take ownership of all its subsequent variables.

Reimplemented in RooArgSet, and RooSetProxy.

Definition at line 409 of file RooAbsCollection.cxx.

◆ addClone() [2/2]

void RooAbsCollection::addClone ( const RooAbsCollection list,
Bool_t  silent = kFALSE 
)
virtual

Add a collection of arguments to this collection by calling addOwned() for each element in the source collection.

Reimplemented in RooArgSet, and RooSetProxy.

Definition at line 493 of file RooAbsCollection.cxx.

◆ addOwned() [1/2]

Bool_t RooAbsCollection::addOwned ( const RooAbsCollection list,
Bool_t  silent = kFALSE 
)
virtual

Add a collection of arguments to this collection by calling addOwned() for each element in the source collection.

Reimplemented in RooArgSet, RooListProxy, and RooSetProxy.

Definition at line 475 of file RooAbsCollection.cxx.

◆ addOwned() [2/2]

Bool_t RooAbsCollection::addOwned ( RooAbsArg var,
Bool_t  silent = kFALSE 
)
virtual

Add the specified argument to list.

Returns kTRUE if successful, or else kFALSE if a variable of the same name is already in the list. This method can only be called on a list that is flagged as owning all of its contents, or else on an empty list (which will force the list into that mode).

Reimplemented in RooArgSet, RooListProxy, and RooSetProxy.

Definition at line 383 of file RooAbsCollection.cxx.

◆ addServerClonesToList()

Bool_t RooAbsCollection::addServerClonesToList ( const RooAbsArg var)
protected

Add clones of servers of given argument to end of list.

Definition at line 275 of file RooAbsCollection.cxx.

◆ allInRange()

Bool_t RooAbsCollection::allInRange ( const char *  rangeSpec) const

Return true if all contained object report to have their value inside the specified range.

Definition at line 1185 of file RooAbsCollection.cxx.

◆ assignFast()

void RooAbsCollection::assignFast ( const RooAbsCollection other,
Bool_t  setValDirty = kTRUE 
)

Functional equivalent of operator=() but assumes this and other collection have same layout.

Also no attributes are copied

Definition at line 350 of file RooAbsCollection.cxx.

◆ assignValueOnly()

RooAbsCollection & RooAbsCollection::assignValueOnly ( const RooAbsCollection other,
Bool_t  oneSafe = kFALSE 
)

The assignment operator sets the value of any argument in our set that also appears in the other set.

Definition at line 324 of file RooAbsCollection.cxx.

◆ begin()

const_iterator RooAbsCollection::begin ( ) const
inline

Definition at line 133 of file RooAbsCollection.h.

◆ clear()

void RooAbsCollection::clear ( )
inline

Clear contents. If the collection is owning, it will also delete the contents.

Definition at line 154 of file RooAbsCollection.h.

◆ clearStructureTags()

void RooAbsCollection::clearStructureTags ( )
inlineprotected

Typed structure tag.

Definition at line 262 of file RooAbsCollection.h.

◆ clone()

virtual TObject * RooAbsCollection::clone ( const char *  newname) const
pure virtual

Implemented in RooArgList, and RooArgSet.

◆ Clone()

virtual TObject * RooAbsCollection::Clone ( const char *  newname = 0) const
inlinevirtual

Make a clone of an object using the Streamer facility.

If the object derives from TNamed, this function is called by TNamed::Clone. TNamed::Clone uses the optional argument to set a new name to the newly created object.

If the object class has a DirectoryAutoAdd function, it will be called at the end of the function with the parameter gDirectory. This usually means that the object will be appended to the current ROOT directory.

Reimplemented from TObject.

Definition at line 39 of file RooAbsCollection.h.

◆ contains()

Bool_t RooAbsCollection::contains ( const RooAbsArg var) const
inline

Definition at line 96 of file RooAbsCollection.h.

◆ containsInstance()

Bool_t RooAbsCollection::containsInstance ( const RooAbsArg var) const
inline

Definition at line 100 of file RooAbsCollection.h.

◆ contentsString()

string RooAbsCollection::contentsString ( ) const

Return comma separated list of contained object names as STL string.

Definition at line 842 of file RooAbsCollection.cxx.

◆ create()

virtual TObject * RooAbsCollection::create ( const char *  newname) const
pure virtual

Implemented in RooArgList, and RooArgSet.

◆ createIterator()

TIterator * RooAbsCollection::createIterator ( Bool_t  dir = kIterForward) const
inline

TIterator-style iteration over contained elements.

Note
These iterators are slow. Use begin() and end() or range-based for loop instead.

◆ defaultPrintContents()

Int_t RooAbsCollection::defaultPrintContents ( Option_t opt) const
virtual

Define default RooPrinable print options for given Print() flag string For inline printing only show value of objects, for default print show name,class name value and extras of each object.

In verbose mode also add object adress, argument and title

Reimplemented from RooPrintable.

Definition at line 893 of file RooAbsCollection.cxx.

◆ dump()

void RooAbsCollection::dump ( ) const

Base contents dumper for debugging purposes.

Definition at line 972 of file RooAbsCollection.cxx.

◆ empty()

bool RooAbsCollection::empty ( ) const
inline

Definition at line 145 of file RooAbsCollection.h.

◆ end() [1/4]

TIterator RooAbsCollection::end ( )
inline

Definition at line 114 of file RooAbsCollection.h.

◆ end() [2/4]

RooLinkedListIter RooAbsCollection::end ( )
inline

Definition at line 122 of file RooAbsCollection.h.

◆ end() [3/4]

RooFIter RooAbsCollection::end ( )
inline

Definition at line 129 of file RooAbsCollection.h.

◆ end() [4/4]

const_iterator RooAbsCollection::end ( ) const
inline

Definition at line 137 of file RooAbsCollection.h.

◆ equals()

Bool_t RooAbsCollection::equals ( const RooAbsCollection otherColl) const

Check if this and other collection have identically-named contents.

Definition at line 753 of file RooAbsCollection.cxx.

◆ find() [1/2]

RooAbsArg * RooAbsCollection::find ( const char *  name) const

Find object with given name in list.

A null pointer is returned if no object with the given name is found

Definition at line 791 of file RooAbsCollection.cxx.

◆ find() [2/2]

RooAbsArg * RooAbsCollection::find ( const RooAbsArg arg) const

Find object with given name in list.

A null pointer is returned if no object with the given name is found

Definition at line 825 of file RooAbsCollection.cxx.

◆ first()

RooAbsArg * RooAbsCollection::first ( ) const
inline

Definition at line 163 of file RooAbsCollection.h.

◆ fwdIterator()

RooFIter RooAbsCollection::fwdIterator ( ) const

One-time forward iterator.

Note
Use begin() and end() or range-based for loop instead.

◆ getHashTableSize()

Int_t RooAbsCollection::getHashTableSize ( ) const
inline
Deprecated:
Without effect.

Definition at line 61 of file RooAbsCollection.h.

◆ GetName()

const char * RooAbsCollection::GetName ( ) const
inlinevirtual

Returns name of object.

This default method returns the class name. Classes that give objects a name should override this method.

Reimplemented from TObject.

Definition at line 220 of file RooAbsCollection.h.

◆ getSize()

Int_t RooAbsCollection::getSize ( ) const
inline

Definition at line 158 of file RooAbsCollection.h.

◆ index() [1/3]

Int_t RooAbsCollection::index ( const char *  name) const
inline

Returns index of arg with given name, or -1 if arg is not in the collection.

Definition at line 185 of file RooAbsCollection.h.

◆ index() [2/3]

Int_t RooAbsCollection::index ( const RooAbsArg arg) const
inline

Returns index of given arg, or -1 if arg is not in the collection.

Definition at line 180 of file RooAbsCollection.h.

◆ index() [3/3]

Int_t RooAbsCollection::index ( const RooAbsArg arg) const
inline

Returns index of given arg, or -1 if arg is not in the collection.

Definition at line 174 of file RooAbsCollection.h.

◆ isOwning()

Bool_t RooAbsCollection::isOwning ( ) const
inline

Definition at line 224 of file RooAbsCollection.h.

◆ iterator()

RooLinkedListIter RooAbsCollection::iterator ( Bool_t  dir = kIterForward) const

TIterator-style iteration over contained elements.

Note
This iterator is slow. Use begin() and end() or range-based for loop instead.

◆ makeLegacyIterator()

std::unique_ptr< RooAbsCollection::LegacyIterator_t > RooAbsCollection::makeLegacyIterator ( bool  forward = true) const
private

Factory for legacy iterators.

Definition at line 1277 of file RooAbsCollection.cxx.

◆ makeStructureTag()

void RooAbsCollection::makeStructureTag ( )
protected

Definition at line 1231 of file RooAbsCollection.cxx.

◆ makeTypedStructureTag()

void RooAbsCollection::makeTypedStructureTag ( )
protected

Definition at line 1238 of file RooAbsCollection.cxx.

◆ operator=()

RooAbsCollection & RooAbsCollection::operator= ( const RooAbsCollection other)

The assignment operator sets the value of any argument in our set that also appears in the other set.

Definition at line 304 of file RooAbsCollection.cxx.

◆ operator[]()

RooAbsArg * RooAbsCollection::operator[] ( Storage_t::size_type  i) const
inline

Definition at line 168 of file RooAbsCollection.h.

◆ overlaps()

Bool_t RooAbsCollection::overlaps ( const RooAbsCollection otherColl) const

Check if this and other collection have common entries.

Definition at line 774 of file RooAbsCollection.cxx.

◆ Print()

virtual void RooAbsCollection::Print ( Option_t option = 0) const
inlinevirtual

This method must be overridden when a class wants to print itself.

Reimplemented from TObject.

Definition at line 193 of file RooAbsCollection.h.

◆ printClassName()

void RooAbsCollection::printClassName ( std::ostream &  os) const
virtual

Return collection class name.

Reimplemented from RooPrintable.

Definition at line 880 of file RooAbsCollection.cxx.

◆ printLatex() [1/2]

void RooAbsCollection::printLatex ( const RooCmdArg arg1 = RooCmdArg(),
const RooCmdArg arg2 = RooCmdArg(),
const RooCmdArg arg3 = RooCmdArg(),
const RooCmdArg arg4 = RooCmdArg(),
const RooCmdArg arg5 = RooCmdArg(),
const RooCmdArg arg6 = RooCmdArg(),
const RooCmdArg arg7 = RooCmdArg(),
const RooCmdArg arg8 = RooCmdArg() 
) const

Output content of collection as LaTex table.

By default a table with two columns is created: the left column contains the name of each variable, the right column the value.

The following optional named arguments can be used to modify the default behavior

Argument Effect
Columns(Int_t ncol) Fold table into multiple columns, i.e. ncol=3 will result in 3 x 2 = 6 total columns
Sibling(const RooAbsCollection& other) Define sibling list. The sibling list is assumed to have objects with the same name in the same order. If this is not the case warnings will be printed. If a single sibling list is specified, 3 columns will be output: the (common) name, the value of this list and the value in the sibling list. Multiple sibling lists can be specified by repeating the Sibling() command.
Format(const char* str) Classic format string, provided for backward compatibility
Format() Formatting arguments.
const char* what Controls what is shown. "N" adds name, "E" adds error, "A" shows asymmetric error, "U" shows unit, "H" hides the value
FixedPrecision(int n) Controls precision, set fixed number of digits
AutoPrecision(int n) Controls precision. Number of shown digits is calculated from error and n specified additional digits (1 is sensible default)
VerbatimName(Bool_t flag) Put variable name in a \verb+ + clause.
OutputFile(const char* fname)

Send output to file with given name rather than standard output

Example use:

list.printLatex(Columns(2), Format("NEU",AutoPrecision(1),VerbatimName()) );
static char * Format(const char *format, va_list ap)
Format a string in a circular formatting buffer (using a printf style format descriptor).
Definition: TString.cxx:2375
RooCmdArg AutoPrecision(Int_t ndigit=2)
RooCmdArg VerbatimName(Bool_t flag=kTRUE)
RooCmdArg Columns(Int_t ncol)

Definition at line 1014 of file RooAbsCollection.cxx.

◆ printLatex() [2/2]

void RooAbsCollection::printLatex ( std::ostream &  ofs,
Int_t  ncol,
const char *  option = "NEYU",
Int_t  sigDigit = 1,
const RooLinkedList siblingLists = RooLinkedList(),
const RooCmdArg formatCmd = 0 
) const

Internal implementation function of printLatex.

Definition at line 1071 of file RooAbsCollection.cxx.

◆ printMultiline()

void RooAbsCollection::printMultiline ( std::ostream &  os,
Int_t  contents,
Bool_t  verbose = kFALSE,
TString  indent = "" 
) const
virtual

Implement multiline printing of collection, one line for each contained object showing the requested content.

Reimplemented from RooPrintable.

Definition at line 937 of file RooAbsCollection.cxx.

◆ printName()

void RooAbsCollection::printName ( std::ostream &  os) const
virtual

Return collection name.

Reimplemented from RooPrintable.

Definition at line 860 of file RooAbsCollection.cxx.

◆ printTitle()

void RooAbsCollection::printTitle ( std::ostream &  os) const
virtual

Return collection title.

Reimplemented from RooPrintable.

Definition at line 870 of file RooAbsCollection.cxx.

◆ printValue()

void RooAbsCollection::printValue ( std::ostream &  os) const
virtual

Print value of collection, i.e.

a comma separated list of contained object names

Reimplemented from RooPrintable.

Definition at line 912 of file RooAbsCollection.cxx.

◆ RecursiveRemove()

void RooAbsCollection::RecursiveRemove ( TObject obj)
virtual

If one of the TObject we have a referenced to is deleted, remove the reference.

Reimplemented from TObject.

Definition at line 1246 of file RooAbsCollection.cxx.

◆ releaseOwnership()

void RooAbsCollection::releaseOwnership ( )
inline

Definition at line 233 of file RooAbsCollection.h.

◆ remove() [1/3]

Bool_t RooAbsCollection::remove ( const RooAbsArg var,
Bool_t  silent = kFALSE,
Bool_t  matchByNameOnly = kFALSE 
)
virtual

Remove the specified argument from our list.

Return kFALSE if the specified argument is not found in our list. An exact pointer match is required, not just a match by name. A variable can be removed from a copied list and will be deleted at the same time.

Reimplemented in RooListProxy, and RooSetProxy.

Definition at line 580 of file RooAbsCollection.cxx.

◆ remove() [2/3]

Bool_t RooAbsCollection::remove ( const RooAbsCollection list,
Bool_t  silent = kFALSE,
Bool_t  matchByNameOnly = kFALSE 
)

Remove each argument in the input list from our list using remove(const RooAbsArg&).

Return kFALSE in case of problems.

Definition at line 617 of file RooAbsCollection.cxx.

◆ remove() [3/3]

template<class forwardIt >
void RooAbsCollection::remove ( forwardIt  rangeBegin,
forwardIt  rangeEnd,
Bool_t  silent = kFALSE,
Bool_t  matchByNameOnly = kFALSE 
)
inline

Definition at line 79 of file RooAbsCollection.h.

◆ removeAll()

void RooAbsCollection::removeAll ( )
virtual

Remove all arguments from our set, deleting them if we own them.

This effectively restores our object to the state it would have just after calling the RooAbsCollection(const char*) constructor.

Reimplemented in RooListProxy, and RooSetProxy.

Definition at line 635 of file RooAbsCollection.cxx.

◆ replace() [1/2]

Bool_t RooAbsCollection::replace ( const RooAbsArg var1,
const RooAbsArg var2 
)
virtual

Replace var1 with var2 and return kTRUE for success.

Fails if this list is a copy of another, if var1 is not already in this set, or if var2 is already in this set. var1 and var2 do not need to have the same name.

Reimplemented in RooListProxy, and RooSetProxy.

Definition at line 533 of file RooAbsCollection.cxx.

◆ replace() [2/2]

Bool_t RooAbsCollection::replace ( const RooAbsCollection other)

Replace any args in our set with args of the same name from the other set and return kTRUE for success.

Fails if this list is a copy of another.

Definition at line 508 of file RooAbsCollection.cxx.

◆ reserve()

void RooAbsCollection::reserve ( Storage_t::size_type  count)
inline

Definition at line 149 of file RooAbsCollection.h.

◆ safeDeleteList()

void RooAbsCollection::safeDeleteList ( )
protected

Examine client server dependencies in list and delete contents in safe order: any client is deleted before a server is deleted.

Definition at line 135 of file RooAbsCollection.cxx.

◆ selectByAttrib()

RooAbsCollection * RooAbsCollection::selectByAttrib ( const char *  name,
Bool_t  value 
) const

Create a subset of the current collection, consisting only of those elements with the specified attribute set.

The caller is responsibe for deleting the returned collection

Definition at line 667 of file RooAbsCollection.cxx.

◆ selectByName()

RooAbsCollection * RooAbsCollection::selectByName ( const char *  nameList,
Bool_t  verbose = kFALSE 
) const

Create a subset of the current collection, consisting only of those elements with names matching the wildcard expressions in nameList, supplied as a comma separated list.

Definition at line 713 of file RooAbsCollection.cxx.

◆ selectCommon()

RooAbsCollection * RooAbsCollection::selectCommon ( const RooAbsCollection refColl) const

Create a subset of the current collection, consisting only of those elements that are contained as well in the given reference collection.

The caller is responsible for deleting the returned collection

Definition at line 690 of file RooAbsCollection.cxx.

◆ setAttribAll()

void RooAbsCollection::setAttribAll ( const Text_t name,
Bool_t  value = kTRUE 
)

Set given attribute in each element of the collection by calling each elements setAttribute() function.

Definition at line 652 of file RooAbsCollection.cxx.

◆ setHashTableSize()

void RooAbsCollection::setHashTableSize ( Int_t  )
inline
Deprecated:
Without effect.

Definition at line 57 of file RooAbsCollection.h.

◆ setName()

void RooAbsCollection::setName ( const char *  name)
inline

Definition at line 216 of file RooAbsCollection.h.

◆ size()

Storage_t::size_type RooAbsCollection::size ( ) const
inline

Definition at line 141 of file RooAbsCollection.h.

◆ snapshot() [1/2]

RooAbsCollection * RooAbsCollection::snapshot ( Bool_t  deepCopy = kTRUE) const

Take a snap shot of current collection contents.

An owning collection is returned containing clones of

  • Elements in this collection
  • External dependents of all elements and recursively any dependents of those dependents (if deepCopy flag is set)

This is useful to save the values of variables or parameters. It doesn't require deep copying if the parameters are direct members of the collection.

If deepCopy is specified, the client-server links between the cloned list elements and the cloned external dependents are reconnected to each other, making the snapshot a completely self-contained entity.

Definition at line 194 of file RooAbsCollection.cxx.

◆ snapshot() [2/2]

Bool_t RooAbsCollection::snapshot ( RooAbsCollection output,
Bool_t  deepCopy = kTRUE 
) const

Take a snap shot of current collection contents: An owning collection is returned containing clones of.

- Elements in this collection
- External dependents of all elements
  and recursively any dependents of those dependents
  (if deepCopy flag is set)

If deepCopy is specified, the client-server links between the cloned list elements and the cloned external dependents are reconnected to each other, making the snapshot a completely self-contained entity.

Definition at line 230 of file RooAbsCollection.cxx.

◆ sort()

void RooAbsCollection::sort ( Bool_t  reverse = false)

Sort collection using std::sort and name comparison.

Definition at line 1254 of file RooAbsCollection.cxx.

◆ structureTag()

TNamed * RooAbsCollection::structureTag ( )
inlineprotected

Definition at line 256 of file RooAbsCollection.h.

◆ takeOwnership()

void RooAbsCollection::takeOwnership ( )
inline

Definition at line 234 of file RooAbsCollection.h.

◆ typedStructureTag()

TNamed * RooAbsCollection::typedStructureTag ( )
inlineprotected

Definition at line 257 of file RooAbsCollection.h.

Friends And Related Function Documentation

◆ RooMultiCatIter

friend class RooMultiCatIter
friend

Definition at line 242 of file RooAbsCollection.h.

Member Data Documentation

◆ _allRRV

Bool_t RooAbsCollection::_allRRV
protected

Definition at line 249 of file RooAbsCollection.h.

◆ _list

Storage_t RooAbsCollection::_list
protected

Definition at line 244 of file RooAbsCollection.h.

◆ _name

TString RooAbsCollection::_name
protected

Definition at line 248 of file RooAbsCollection.h.

◆ _ownCont

Bool_t RooAbsCollection::_ownCont
protected

Definition at line 247 of file RooAbsCollection.h.

◆ _structureTag

TNamed* RooAbsCollection::_structureTag {nullptr}
mutableprotected

Definition at line 259 of file RooAbsCollection.h.

◆ _typedStructureTag

TNamed* RooAbsCollection::_typedStructureTag {nullptr}
mutableprotected

Structure tag.

Definition at line 260 of file RooAbsCollection.h.

Libraries for RooAbsCollection:
[legend]

The documentation for this class was generated from the following files: