class RooAbsArg: public TNamed, public RooPrintable

Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~RooAbsArg()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
voidattachDataSet(const RooAbsData& set)
const set<std::string>&attributes() const
voidbranchNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0) const
virtual voidTObject::Browse(TBrowser* b)
Bool_tcheckDependents(const RooArgSet* nset) const
virtual Bool_tcheckObservables(const RooArgSet* nset) const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
TIterator*clientIterator() const
virtual TObject*clone(const char* newname) const
virtual TObject*Clone(const char* newname = 0) const
virtual Int_tCompare(const TObject* other) const
virtual voidconstOptimizeTestStatistic(RooAbsArg::ConstOpCode opcode)
virtual voidTNamed::Copy(TObject& named) const
static voidcopyList(TList& dest, const TList& source)
virtual RooAbsArg*createFundamental(const char* newname = 0) const
static ostream&RooPrintable::defaultStream(ostream* os = 0)
virtual voidTObject::Delete(Option_t* option = "")
Bool_tdeleteWatch() const
Bool_tdependentOverlaps(const RooAbsData* dset, const RooAbsArg& testArg) const
Bool_tdependentOverlaps(const RooArgSet* depList, const RooAbsArg& testArg) const
Bool_tdependsOn(const RooAbsCollection& serverList, const RooAbsArg* ignoreArg = 0, Bool_t valueOnly = kFALSE) const
Bool_tdependsOn(const RooAbsArg& server, const RooAbsArg* ignoreArg = 0, Bool_t valueOnly = kFALSE) const
Bool_tdependsOnValue(const RooAbsCollection& serverList, const RooAbsArg* ignoreArg = 0) const
Bool_tdependsOnValue(const RooAbsArg& server, const RooAbsArg* ignoreArg = 0) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() const
virtual TObject*TObject::DrawClone(Option_t* option = "") const
virtual voidTObject::Dump() const
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
virtual voidTNamed::FillBuffer(char*& buffer)
Bool_tfindConstantNodes(const RooArgSet& observables, RooArgSet& cacheList)
Bool_tfindConstantNodes(const RooArgSet& observables, RooArgSet& cacheList, RooLinkedList& processedNodes)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
RooAbsArg*findServer(const char* name) const
RooAbsArg*findServer(const RooAbsArg& arg) const
RooAbsArg*findServer(Int_t index) const
Bool_tgetAttribute(const Text_t* name) const
RooAbsCache*getCache(Int_t index) const
RooLinkedListgetCloningAncestors() const
RooArgSet*getComponents() const
RooArgSet*getDependents(const RooArgSet& set) const
RooArgSet*getDependents(const RooAbsData* set) const
RooArgSet*getDependents(const RooArgSet* depList) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
RooArgSet*getObservables(const RooArgSet& set) const
RooArgSet*getObservables(const RooAbsData* data) const
RooArgSet*getObservables(const RooAbsData& data) const
virtual RooArgSet*getObservables(const RooArgSet* depList) const
virtual Option_t*TObject::GetOption() const
RooArgSet*getParameters(const RooAbsData* data) const
RooArgSet*getParameters(const RooAbsData& data) const
RooArgSet*getParameters(const RooArgSet& set) const
virtual RooArgSet*getParameters(const RooArgSet* depList) const
const Text_t*getStringAttribute(const Text_t* key) const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
RooArgSet*getVariables() const
voidgraphVizTree(const char* fileName)
voidgraphVizTree(ostream& os)
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual Bool_thasRange(const char*) 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
static voidRooPrintable::inLinePrint(ostream& os, const TNamed& named)
virtual Bool_tinRange(const char*) const
virtual voidTObject::Inspect() const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tisCloneOf(const RooAbsArg& other) const
Bool_tisConstant() const
virtual Bool_tisDerived() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tisFundamental() const
virtual Bool_tisLValue() const
Bool_tTObject::IsOnHeap() const
Bool_tisShapeDirty() const
Bool_tisShapeServer(const RooAbsArg& arg) const
Bool_tisShapeServer(const char* name) const
virtual Bool_tIsSortable() const
Bool_tisValueDirty() const
Bool_tisValueServer(const RooAbsArg& arg) const
Bool_tisValueServer(const char* name) const
Bool_tTObject::IsZombie() const
voidleafNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0) const
RooPrintable::PrintOptionRooPrintable::lessVerbose(RooPrintable::PrintOption opt) const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
static voidnameFieldLength(Int_t newLen)
virtual Bool_tTObject::Notify()
Int_tnumCaches() const
Bool_tobservableOverlaps(const RooAbsData* dset, const RooAbsArg& testArg) const
Bool_tobservableOverlaps(const RooArgSet* depList, const RooAbsArg& testArg) const
static voidRooPrintable::oneLinePrint(ostream& os, const TNamed& named)
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static 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)
TNamed&TNamed::operator=(const TNamed& rhs)
virtual Bool_toperator==(const RooAbsArg& other)
RooAbsArg::OperModeoperMode() const
virtual voidoptimizeCacheMode(const RooArgSet& observables)
virtual voidoptimizeCacheMode(const RooArgSet& observables, RooArgSet& optNodes, RooLinkedList& processedNodes)
Bool_toverlaps(const RooAbsArg& testArg) const
virtual voidTObject::Paint(Option_t* option = "")
RooPrintable::PrintOptionRooPrintable::parseOptions(Option_t* options) const
virtual voidTObject::Pop()
virtual voidPrint(Option_t* options = 0) const
voidprintCompactTree(const char* indent = "", const char* fileName = 0, const char* namePat = 0, RooAbsArg* client = 0)
voidprintCompactTree(ostream& os, const char* indent = "", const char* namePat = 0, RooAbsArg* client = 0)
virtual voidprintCompactTreeHook(ostream& os, const char* ind = "")
voidprintDirty(Bool_t depth = kTRUE) const
virtual voidprintToStream(ostream& os, RooPrintable::PrintOption opt = Standard, TString indent = "") const
virtual Int_tTObject::Read(const char* name)
virtual Bool_treadFromStream(istream& is, Bool_t compact, Bool_t verbose = kFALSE)
Bool_trecursiveCheckDependents(const RooArgSet* nset) const
Bool_trecursiveCheckObservables(const RooArgSet* nset) const
virtual voidTObject::RecursiveRemove(TObject* obj)
voidregisterCache(RooAbsCache& cache)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") const
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
TIterator*serverIterator() const
static voidsetACleanADirty(Bool_t flag)
voidsetAttribute(const Text_t* name, Bool_t value = kTRUE)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidsetDeleteWatch(Bool_t flag = kTRUE)
static voidsetDirtyInhibit(Bool_t flag)
virtual voidTObject::SetDrawOption(Option_t* option = "")
static voidTObject::SetDtorOnly(void* obj)
virtual voidTNamed::SetName(const char* name)
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidsetOperMode(RooAbsArg::OperMode mode, Bool_t recurseADirty = kTRUE)
voidsetStringAttribute(const Text_t* key, const Text_t* value)
virtual voidTNamed::SetTitle(const char* title = "")
virtual voidTObject::SetUniqueID(UInt_t uid)
TIterator*shapeClientIterator() const
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
const map<std::string,std::string>&stringAttributes() const
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
voidtreeNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0, Bool_t doBranch = kTRUE, Bool_t doLeaf = kTRUE, Bool_t valueOnly = kFALSE) const
voidunRegisterCache(RooAbsCache& cache)
virtual voidTObject::UseCurrentStyle()
TIterator*valueClientIterator() const
static voidverboseDirty(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
virtual voidwriteToStream(ostream& os, Bool_t compact) const
protected:
voidaddServer(RooAbsArg& server, Bool_t valueProp = kTRUE, Bool_t shapeProp = kFALSE)
voidaddServerList(RooAbsCollection& serverList, Bool_t valueProp = kTRUE, Bool_t shapeProp = kFALSE)
virtual voidattachToTree(TTree& t, Int_t bufSize = 32000)
voidchangeServer(RooAbsArg& server, Bool_t valueProp, Bool_t shapeProp)
TStringcleanBranchName() const
voidclearShapeDirty() const
voidclearValueDirty() const
virtual voidcopyCache(const RooAbsArg* source)
UInt_tcrc32(const char* data) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
virtual voidfillTreeBranch(TTree& t)
RooAbsArg*findNewServer(const RooAbsCollection& newSet, Bool_t nameChange) const
virtual voidgetObservablesHook(const RooArgSet*, RooArgSet*) const
virtual voidgetParametersHook(const RooArgSet*, RooArgSet*) const
RooAbsProxy*getProxy(Int_t index) const
voidgraphVizAddConnections(set<std::pair<RooAbsArg*,RooAbsArg*> >&)
static Bool_tinhibitDirty()
virtual Bool_tisValid() const
voidTObject::MakeZombie()
Int_tnumProxies() const
virtual voidoperModeHook()
virtual voidoptimizeDirtyHook(const RooArgSet*)
voidprintAttribList(ostream& os) const
Bool_trecursiveRedirectServers(const RooAbsCollection& newServerList, Bool_t mustReplaceAll = kFALSE, Bool_t nameChange = kFALSE)
Bool_tredirectServers(const RooAbsCollection& newServerList, Bool_t mustReplaceAll = kFALSE, Bool_t nameChange = kFALSE, Bool_t isRecursionStep = kFALSE)
virtual Bool_tredirectServersHook(const RooAbsCollection&, Bool_t, Bool_t, Bool_t)
voidregisterProxy(RooArgProxy& proxy)
voidregisterProxy(RooSetProxy& proxy)
voidregisterProxy(RooListProxy& proxy)
voidremoveServer(RooAbsArg& server, Bool_t force = kFALSE)
voidreplaceServer(RooAbsArg& oldServer, RooAbsArg& newServer, Bool_t valueProp, Bool_t shapeProp)
virtual voidserverNameChangeHook(const RooAbsArg*, const RooAbsArg*)
voidsetProxyNormSet(const RooArgSet* nset)
voidsetShapeDirty() const
virtual voidsetTreeBranchStatus(TTree& t, Bool_t active)
voidsetValueDirty() const
virtual voidsyncCache(const RooArgSet* nset = 0)
voidunRegisterProxy(RooArgProxy& proxy)
voidunRegisterProxy(RooSetProxy& proxy)
voidunRegisterProxy(RooListProxy& proxy)
private:
voidsetShapeDirty(const RooAbsArg* source) const
voidsetValueDirty(const RooAbsArg* source) const

Data Members

public:
enum ConstOpCode { Activate
DeActivate
ConfigChange
ValueChange
};
enum OperMode { Auto
AClean
ADirty
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
enum RooPrintable::PrintOption { InLine
OneLine
Standard
Shape
Verbose
};
protected:
set<std::string>_boolAttribBoolean attributes
deque<RooAbsCache*>_cacheListlist of caches
RooRefCountList_clientListlist of client objects
RooRefCountList_clientListShapesubset of clients that requested shape dirty flag propagation
RooRefCountList_clientListValuesubset of clients that requested value dirty flag propagation
TIterator*_clientShapeIter! Iterator over _clientListShape
TIterator*_clientValueIter! Iterator over _clientListValue
Bool_t_deleteWatch! Delete watch flag
static Bool_t_flipACleanStatic flag controlling flipping status of all AClean nodes to ADirty ;
static Bool_t_inhibitDirtyStatic flag controlling global inhibit of dirty state propagation
static Int_t_nameLength
TList_proxyListlist of proxies
RooRefCountList_serverListlist of server objects
map<std::string,std::string>_stringAttribString attributes
static Bool_t_verboseDirtyStatic flag controlling verbose messaging for dirty state changes
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
private:
RooAbsArg::OperMode_operModeDirty state propagation mode
Bool_t_shapeDirtyFlag set if value needs recalculating because input shapes modified
Bool_t_valueDirtyFlag set if value needs recalculating because input values modified

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

~RooAbsArg()
 Destructor notifies its servers that they no longer need to serve us and
 notifies its clients that they are now in limbo (!)
void setDirtyInhibit(Bool_t flag)
void setACleanADirty(Bool_t flag)
void verboseDirty(Bool_t flag)
void nameFieldLength(Int_t newLen)
Bool_t isCloneOf(const RooAbsArg& other) const
 Check if this object was created as a clone of 'other'
void setAttribute(const Text_t* name, Bool_t value = kTRUE)
 Set (default) or clear a named boolean attribute of this object.
Bool_t getAttribute(const Text_t* name) const
 Check if a named attribute is set. By default, all attributes
 are unset.
void setStringAttribute(const Text_t* key, const Text_t* value)
const Text_t* getStringAttribute(const Text_t* key) const
void addServer(RooAbsArg& server, Bool_t valueProp = kTRUE, Bool_t shapeProp = kFALSE)
 Register another RooAbsArg as a server to us, ie, declare that
 we depend on it. In addition to the basic client-server relationship,
 we can declare dependence on the server's value and/or shape.
void addServerList(RooAbsCollection& serverList, Bool_t valueProp = kTRUE, Bool_t shapeProp = kFALSE)
 Register a list of RooAbsArg as servers to us by calls addServer() for each
 arg in the list
void removeServer(RooAbsArg& server, Bool_t force = kFALSE)
 Unregister another RooAbsArg as a server to us, ie, declare that
 we no longer depend on its value and shape.
void replaceServer(RooAbsArg& oldServer, RooAbsArg& newServer, Bool_t valueProp, Bool_t shapeProp)
void changeServer(RooAbsArg& server, Bool_t valueProp, Bool_t shapeProp)
 Change dirty flag propagation mask for specified server
void leafNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0) const
 Fill supplied list with all leaf nodes of the arg tree, starting with
 ourself as top node. A leaf node is node that has no servers declared.
void branchNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0) const
 Fill supplied list with all branch nodes of the arg tree starting with
 ourself as top node. A branch node is node that has one or more servers declared.
void treeNodeServerList(RooAbsCollection* list, const RooAbsArg* arg = 0, Bool_t doBranch = kTRUE, Bool_t doLeaf = kTRUE, Bool_t valueOnly = kFALSE) const
 Fill supplied list with nodes of the arg tree, following all server links,
 starting with ourself as top node.
RooArgSet* getParameters(const RooAbsData* set)
 Create a list of leaf nodes in the arg tree starting with
 ourself as top node that don't match any of the names of the variable list
 of the supplied data set (the dependents). The caller of this
 function is responsible for deleting the returned argset.
 The complement of this function is getObservables()
RooArgSet* getParameters(const RooArgSet* nset)
 Create a list of leaf nodes in the arg tree starting with
 ourself as top node that don't match any of the names the args in the
 supplied argset. The caller of this function is responsible
 for deleting the returned argset. The complement of this function
 is getObservables()
RooArgSet* getObservables(const RooAbsData* set)
 Create a list of leaf nodes in the arg tree starting with
 ourself as top node that match any of the names of the variable list
 of the supplied data set (the dependents). The caller of this
 function is responsible for deleting the returned argset.
 The complement of this function is getObservables()
RooArgSet* getObservables(const RooArgSet* dataList)
 Create a list of leaf nodes in the arg tree starting with
 ourself as top node that match any of the names the args in the
 supplied argset. The caller of this function is responsible
 for deleting the returned argset. The complement of this function
 is getObservables()
RooArgSet* getComponents()
Bool_t checkObservables(const RooArgSet* nset) const
 Overloadable function in which derived classes can implement
 consistency checks of the variables. If this function returns
 true, indicating an error, the fitter or generator will abort.
Bool_t recursiveCheckObservables(const RooArgSet* nset) const
Bool_t dependsOn(const RooAbsCollection& serverList, const RooAbsArg* ignoreArg, Bool_t valueOnly)
 Test whether we depend on (ie, are served by) any object in the
 specified collection. Uses the dependsOn(RooAbsArg&) member function.
Bool_t dependsOn(const RooAbsArg& testArg, const RooAbsArg* ignoreArg, Bool_t valueOnly)
 Test whether we depend on (ie, are served by) the specified object.
 Note that RooAbsArg objects are considered equivalent if they have
 the same name.
Bool_t overlaps(const RooAbsArg& testArg) const
 Test if any of the nodes of tree are shared with that of the given tree
Bool_t observableOverlaps(const RooAbsData* dset, const RooAbsArg& testArg)
 Test if any of the dependents of the arg tree (as determined by getObservables)
 overlaps with those of the testArg.
Bool_t observableOverlaps(const RooArgSet* nset, const RooAbsArg& testArg)
 Test if any of the dependents of the arg tree (as determined by getObservables)
 overlaps with those of the testArg.
void setValueDirty(const RooAbsArg* source) const
 Mark this object as having changed its value, and propagate this status
 change to all of our clients. If the object is not in automatic dirty
 state propagation mode, this call has no effect
void setShapeDirty(const RooAbsArg* source) const
 Mark this object as having changed its shape, and propagate this status
 change to all of our clients.
Bool_t redirectServers(const RooAbsCollection& newServerList, Bool_t mustReplaceAll = kFALSE, Bool_t nameChange = kFALSE, Bool_t isRecursionStep = kFALSE)
 Substitute our servers with those listed in newSet. If nameChange is false, servers and
 and substitutes are matched by name. If nameChange is true, servers are matched to args
 in newSet that have the 'ORIGNAME:<servername>' attribute set. If mustReplaceAll is set,
 a warning is printed and error status is returned if not all servers could be sucessfully
 substituted.
RooAbsArg * findNewServer(const RooAbsCollection& newSet, Bool_t nameChange) const
 Find the new server in the specified set that matches the old server.
 Allow a name change if nameChange is kTRUE, in which case the new
 server is selected by searching for a new server with an attribute
 of "ORIGNAME:<oldName>". Return zero if there is not a unique match.
Bool_t recursiveRedirectServers(const RooAbsCollection& newServerList, Bool_t mustReplaceAll = kFALSE, Bool_t nameChange = kFALSE)
 Cyclic recursion protection
void registerProxy(RooArgProxy& proxy)
 Register an RooArgProxy in the proxy list. This function is called by owned
 proxies upon creation. After registration, this arg wil forward pointer
 changes from serverRedirects and updates in cached normalization sets
 to the proxies immediately after they occur. The proxied argument is
 also added as value and/or shape server
void unRegisterProxy(RooArgProxy& proxy)
 Remove proxy from proxy list. This functions is called by owned proxies
 upon their destruction.
void registerProxy(RooSetProxy& proxy)
 Register an RooSetProxy in the proxy list. This function is called by owned
 proxies upon creation. After registration, this arg wil forward pointer
 changes from serverRedirects and updates in cached normalization sets
 to the proxies immediately after they occur.
void unRegisterProxy(RooSetProxy& proxy)
 Remove proxy from proxy list. This functions is called by owned proxies
 upon their destruction.
void registerProxy(RooListProxy& proxy)
 Register an RooListProxy in the proxy list. This function is called by owned
 proxies upon creation. After registration, this arg wil forward pointer
 changes from serverRedirects and updates in cached normalization sets
 to the proxies immediately after they occur.
void unRegisterProxy(RooListProxy& proxy)
 Remove proxy from proxy list. This functions is called by owned proxies
 upon their destruction.
RooAbsProxy* getProxy(Int_t index) const
 Return the nth proxy from the proxy list.
Int_t numProxies()
 Return the number of registered proxies.
void setProxyNormSet(const RooArgSet* nset)
 Forward a change in the cached normalization argset
 to all the registered proxies.
void attachToTree(TTree& t, Int_t bufSize = 32000)
 Overloadable function for derived classes to implement
 attachment as branch to a TTree
Bool_t isValid()
 WVE (08/21/01) Probably obsolete now
void copyList(TList& dest, const TList& source)
 WVE (08/21/01) Probably obsolete now
void printToStream(ostream& os, RooPrintable::PrintOption opt = Standard, TString indent = "") const
 Print the state of this object to the specified output stream.

  OneLine : use RooPrintable::oneLinePrint()
 Standard : use virtual writeToStream() method in non-compact mode
  Verbose : list dirty flags,attributes, clients, servers, and proxies

 Subclasses will normally call this method first in their implementation,
 and then add any additional state of their own with the Shape or Verbose
 options.
void printAttribList(ostream& os) const
 Print the attribute list
void attachDataSet(const RooAbsData& set)
 Replace server nodes with names matching the dataset variable names
 with those data set variables, making this PDF directly dependent on the dataset
   recursiveRedirectServers(*data.get(),kFALSE);
   return ;
Int_t Compare(const TObject* other) const
 Utility function used by TCollection::Sort to compare contained TObjects
 We implement comparison by name, resulting in alphabetical sorting by object name.
void printDirty(Bool_t depth = kTRUE) const
 Print information about current value dirty state information.
 If depth flag is true, information is recursively printed for
 all nodes in this arg tree.
void optimizeCacheMode(const RooArgSet& observables)
void optimizeCacheMode(const RooArgSet& observables, RooArgSet& optNodes, RooLinkedList& processedNodes)
 Cache mode optimization (tracks changes & do lazy evaluation vs evaluate always)
Bool_t findConstantNodes(const RooArgSet& observables, RooArgSet& cacheList)
Bool_t findConstantNodes(const RooArgSet& observables, RooArgSet& cacheList, RooLinkedList& processedNodes)
 Find branch nodes with all-constant parameters, and add them to the list of
 nodes that can be cached with a dataset in a test statistic calculation
void constOptimizeTestStatistic(RooAbsArg::ConstOpCode opcode)
 Default implementation -- forward to all servers.
 Actual optimization implemented by TestStatistic classes
void setOperMode(RooAbsArg::OperMode mode, Bool_t recurseADirty = kTRUE)
 Prevent recursion loops
void printCompactTree(const char* indent, const char* filename, const char* namePat, RooAbsArg* client)
void printCompactTree(ostream& os, const char* indent, const char* namePat, RooAbsArg* client)
TString cleanBranchName()
 Construct a mangled name from the actual name that
 is free of any math symbols that might be interpreted by TTree
UInt_t crc32(const char* data) const
 Calculate and extract length of string
void printCompactTreeHook(ostream& os, const char* ind = "")
void registerCache(RooAbsCache& cache)
void unRegisterCache(RooAbsCache& cache)
Int_t numCaches()
RooAbsCache* getCache(Int_t index) const
RooArgSet* getVariables()
RooLinkedList getCloningAncestors()
 Return ancestors in cloning chain of this RooAbsArg. NOTE: Returned pointers
 are not guaranteed to be 'live', so do not dereference without proper caution
void graphVizTree(const char* fileName)
void graphVizTree(ostream& os)
void graphVizAddConnections(set<pair<RooAbsArg*,RooAbsArg*> >& linkSet)
Bool_t inhibitDirty()
TObject* clone(const char* newname) const
TObject* Clone(const char* newname = 0) const
     cout << "RooAbsArg::Clone(" << GetName() << "," << this << ") newname=" << (newname?newname:"<none>") << endl ;
Bool_t isDerived()
 Accessors to client-server relation information
{ return _serverList.GetSize()?kTRUE:kFALSE; }
Bool_t dependsOnValue(const RooAbsCollection& serverList, const RooAbsArg* ignoreArg=0)
{ return dependsOn(serverList,ignoreArg,kTRUE) ; }
Bool_t dependsOnValue(const RooAbsArg& server, const RooAbsArg* ignoreArg=0)
{ return dependsOn(server,ignoreArg,kTRUE) ; }
TIterator* clientIterator()
{ return _clientList.MakeIterator() ; }
TIterator* valueClientIterator()
{ return _clientListValue.MakeIterator() ; }
TIterator* shapeClientIterator()
{ return _clientListShape.MakeIterator() ; }
TIterator* serverIterator()
{ return _serverList.MakeIterator() ; }
RooAbsArg* findServer(const char *name)
{ return (RooAbsArg*)_serverList.FindObject(name); }
RooAbsArg* findServer(const RooAbsArg& arg)
{ return (RooAbsArg*)_serverList.FindObject(&arg); }
RooAbsArg* findServer(Int_t index)
{ return (RooAbsArg*)_serverList.At(index); }
Bool_t isValueServer(const RooAbsArg& arg)
{ return _clientListValue.FindObject(&arg)?kTRUE:kFALSE ; }
Bool_t isValueServer(const char* name)
{ return _clientListValue.FindObject(name)?kTRUE:kFALSE ; }
Bool_t isShapeServer(const RooAbsArg& arg)
{ return _clientListShape.FindObject(&arg)?kTRUE:kFALSE ; }
Bool_t isShapeServer(const char* name)
{ return _clientListShape.FindObject(name)?kTRUE:kFALSE ; }
Bool_t isFundamental()
 Is this object a fundamental type that can be added to a dataset?
 Fundamental-type subclasses override this method to return kTRUE.
 Note that this test is subtlely different from the dynamic isDerived()
 test, e.g. a constant is not derived but is also not fundamental.
{ return kFALSE; }
RooAbsArg * createFundamental(const char* newname = 0) const
Bool_t isLValue()
 Is this argument an l-value, ie, can it appear on the left-hand side
 of an assignment expression? LValues are also special since they can
 potentially be analytically integrated and generated.
{ return kFALSE; }
RooArgSet* getParameters(const RooAbsData* data)
RooArgSet* getParameters(const RooAbsData& data)
{ return getParameters(&data) ; }
RooArgSet* getObservables(const RooArgSet& set)
{ return getObservables(&set) ; }
RooArgSet* getObservables(const RooAbsData* data)
RooArgSet* getDependents(const RooArgSet& set)
 --- Obsolete functions for backward compatibility
{ return getObservables(set) ; }
RooArgSet* getDependents(const RooAbsData* set)
{ return getObservables(set) ; }
RooArgSet* getDependents(const RooArgSet* depList)
{ return getObservables(depList) ; }
Bool_t dependentOverlaps(const RooAbsData* dset, const RooAbsArg& testArg)
{ return observableOverlaps(dset,testArg) ; }
Bool_t dependentOverlaps(const RooArgSet* depList, const RooAbsArg& testArg)
{ return observableOverlaps(depList, testArg) ; }
Bool_t checkDependents(const RooArgSet* nset) const
{ return checkObservables(nset) ; }
Bool_t recursiveCheckDependents(const RooArgSet* nset) const
 --- End obsolete functions for backward compatibility
{ return recursiveCheckObservables(nset) ; }
Bool_t readFromStream(istream& is, Bool_t compact, Bool_t verbose = kFALSE)
 I/O streaming interface (machine readable)
void writeToStream(ostream& os, Bool_t compact) const
void Print(Option_t* options = 0) const
const std::set<std::string>& attributes()
{ return _boolAttrib ; }
const std::map<std::string,std::string>& stringAttributes()
{ return _stringAttrib ; }
Bool_t isConstant()
{ return getAttribute("Constant") ; }
Bool_t IsSortable()
{ return kTRUE ; }
Bool_t operator==(const RooAbsArg& other)
Bool_t inRange(const char* ) const
 Range management
{ return kTRUE ; }
Bool_t hasRange(const char* ) const
{ return kFALSE ; }
void setDeleteWatch(Bool_t flag = kTRUE)
{ _deleteWatch = flag ; }
Bool_t deleteWatch()
{ return _deleteWatch ; }
Bool_t isShapeDirty()
 Dirty state accessor
{ return isDerived()?_shapeDirty:kFALSE ; }
Bool_t isValueDirty()
OperMode operMode()
{ return _operMode ; }
void operModeHook()
friend class RooSimCloneTool ;
{}
void optimizeDirtyHook(const RooArgSet* )
{}
void getParametersHook(const RooArgSet* , RooArgSet* ) const
{}
void getObservablesHook(const RooArgSet* , RooArgSet* ) const
{}
void setValueDirty(const RooAbsArg* source) const
 Dirty state modifiers
{ setValueDirty(0) ; }
void setShapeDirty(const RooAbsArg* source) const
{ setShapeDirty(0) ; }
void clearValueDirty()
void clearShapeDirty()
Bool_t redirectServersHook(const RooAbsCollection& , Bool_t , Bool_t , Bool_t )
{ return kFALSE ; }
void serverNameChangeHook(const RooAbsArg* , const RooAbsArg* )
{ }
void syncCache(const RooArgSet* nset = 0)
void copyCache(const RooAbsArg* source)
void setTreeBranchStatus(TTree& t, Bool_t active)
void fillTreeBranch(TTree& t)

Last update: Thu Jan 17 08:43:26 2008
Copyright (c) 2000-2005, Regents of the University of California *

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.