ROOT » ROOFIT » ROOFITCORE » RooLinkedList

class RooLinkedList: public TObject



RooLinkedList is an collection class for internal use, storing a collection of RooAbsArg pointers in a doubly linked list. It can optionally add a hash table to speed up random access in large collections Use RooAbsCollection derived objects for public use (e.g. RooArgSet or RooArgList)

Function Members (Methods)

public:
virtual~RooLinkedList()
voidTObject::AbstractMethod(const char* method) const
virtual voidAdd(TObject* arg)
virtual voidTObject::AppendPad(Option_t* option = "")
TObject*At(Int_t index) const
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* o = 0)
virtual TObject*Clone(const char* = 0) const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidDelete(Option_t* o = 0)
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
TObject*find(const char* name) const
RooAbsArg*findArg(const RooAbsArg*) const
virtual TObject*FindObject(const char* name) const
virtual TObject*FindObject(const TObject* obj) const
TObject*First() const
RooFIterfwdIterator() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Int_tgetHashTableSize() const
virtual const char*TObject::GetIconName() const
virtual const char*GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Int_tGetSize() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tHash() const
Int_tIndexOf(const char* name) const
Int_tIndexOf(const TObject* arg) const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
RooLinkedListIteriterator(Bool_t dir = kTRUE) const
virtual voidTObject::ls(Option_t* option = "") const
TIterator*MakeIterator(Bool_t dir = kTRUE) const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
voidTObject::operator delete(void* ptr)
voidTObject::operator delete(void* ptr, void* vp)
voidTObject::operator delete[](void* ptr)
voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
RooLinkedList&operator=(const RooLinkedList& other)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(const char* opt) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual Bool_tRemove(TObject* arg)
Bool_tReplace(const TObject* oldArg, const TObject* newArg)
voidTObject::ResetBit(UInt_t f)
RooLinkedList(Int_t htsize = 0)
RooLinkedList(const RooLinkedList& other)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidsetHashTableSize(Int_t size)
voidSetName(const char* name)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp) const
voidSort(Bool_t ascend = kTRUE)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
voiduseNptr(Bool_t flag)
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidAdd(TObject* arg, Int_t refCount)
RooLinkedListElem*createElement(TObject* obj, RooLinkedListElem* elem = 0)
voiddeleteElement(RooLinkedListElem*)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
RooLinkedListElem*findLink(const TObject* arg) const
voidTObject::MakeZombie()

Data Members

public:
static TObject::(anonymous)TObject::kBitMask
static TObject::EStatusBitsTObject::kCanDelete
static TObject::EStatusBitsTObject::kCannotPick
static TObject::EStatusBitsTObject::kHasUUID
static TObject::EStatusBitsTObject::kInvalidObject
static TObject::(anonymous)TObject::kIsOnHeap
static TObject::EStatusBitsTObject::kIsReferenced
static TObject::EStatusBitsTObject::kMustCleanup
static TObject::EStatusBitsTObject::kNoContextMenu
static TObject::(anonymous)TObject::kNotDeleted
static TObject::EStatusBitsTObject::kObjInCanvas
static TObject::(anonymous)TObject::kOverwrite
static TObject::(anonymous)TObject::kSingleKey
static TObject::(anonymous)TObject::kWriteDelete
static TObject::(anonymous)TObject::kZombie
protected:
RooLinkedListElem*_first! Link to first element of list
Int_t_hashThreshSize threshold for hashing
RooHashTable*_htableLink! Hash table by link pointer
RooHashTable*_htableName! Hash table by name
RooLinkedListElem*_last! Link to last element of list
TString_name
Int_t_sizeCurrent size of list
Bool_t_useNptr!
private:
static RooLinkedList::Pool*_pool!

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

RooLinkedList(Int_t htsize = 0)
RooLinkedList(const RooLinkedList& other)
 Copy constructor
RooLinkedListElem* createElement(TObject* obj, RooLinkedListElem* elem = 0)
   cout << "RooLinkedList::createElem(" << this << ") obj = " << obj << " elem = " << elem << endl ;
void deleteElement(RooLinkedListElem* )
RooLinkedList& operator=(const RooLinkedList& other)
 Assignment operator, copy contents from 'other'
void setHashTableSize(Int_t size)
 Change the threshold for hash-table use to given size.
 If a hash table exists when this method is called, it is regenerated.
~RooLinkedList()
 Destructor
RooLinkedListElem* findLink(const TObject* arg) const
 Find the element link containing the given object
void Add(TObject* arg, Int_t refCount)
 Insert object into collection with given reference count value
Bool_t Remove(TObject* arg)
 Remove object from collection
TObject* At(Int_t index) const
 Return object stored in sequential position given by index.
 If index is out of range, a null pointer is returned.
Bool_t Replace(const TObject* oldArg, const TObject* newArg)
 Replace object 'oldArg' in collection with new object 'newArg'.
 If 'oldArg' is not found in collection kFALSE is returned
TObject* FindObject(const char* name) const
 Return pointer to obejct with given name. If no such object
 is found return a null pointer
TObject* FindObject(const TObject* obj) const
 Find object in list. If list contains object return
 (same) pointer to object, otherwise return null pointer
void Clear(Option_t* o = 0)
 Remove all elements from collection
void Delete(Option_t* o = 0)
 Remove all elements in collection and delete all elements
 NB: Collection does not own elements, this function should
 be used judiciously by caller.
TObject* find(const char* name) const
 Return pointer to object with given name in collection.
 If no such object is found, return null pointer.
RooAbsArg* findArg(const RooAbsArg* ) const
 Return pointer to object with given name in collection.
 If no such object is found, return null pointer.
Int_t IndexOf(const TObject* arg) const
 Return position of given object in list. If object
 is not contained in list, return -1
Int_t IndexOf(const char* name) const
 Return position of given object in list. If object
 is not contained in list, return -1
void Print(const char* opt) const
 Print contents of list, defers to Print() function
 of contained objects
RooLinkedListIter iterator(Bool_t dir = kTRUE) const
RooFIter fwdIterator() const
TIterator* MakeIterator(Bool_t dir = kTRUE) const
 Return an iterator over this list
void Sort(Bool_t ascend = kTRUE)
void Streamer(TBuffer& )
 Custom streaming handling schema evolution w.r.t past implementations
TObject* Clone(const char* = 0) const
Int_t getHashTableSize() const
 Return size of hash table
Int_t GetSize() const
{ return _size ; }
void Add(TObject* arg)
{ Add(arg,1) ; }
TObject* First() const
const char* GetName() const
 const char* GetName() const { return "" ; /*_name.Data() ; */ }
 void SetName(const char* /*name*/) { /*_name = name ; */ }
{ return _name.Data() ; }
void SetName(const char* name)
{ _name = name ; }
void useNptr(Bool_t flag)
 needed for using it in THashList/THashTable
{ _useNptr = flag ; }
ULong_t Hash() const
ULong_t  Hash() const { return TString().Hash(); }
{ return _name.Hash(); }