ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
RooTrace Class Reference

Class RooTrace controls the memory tracing hooks in all RooFit objects.

When tracing is active, a table of live RooFit objects is kept that can be queried at any time. In verbose mode, messages are printed in addition at the construction and destruction of each object.

Definition at line 26 of file RooTrace.h.

Public Member Functions

 RooTrace ()
 
virtual ~RooTrace ()
 

Static Public Member Functions

static void create (const TObject *obj)
 Register creation of object 'obj'. More...
 
static void destroy (const TObject *obj)
 Register deletion of object 'obj'. More...
 
static void createSpecial (const char *name, int size)
 
static void destroySpecial (const char *name)
 
static void active (Bool_t flag)
 If flag is true, memory tracing is activated. More...
 
static void verbose (Bool_t flag)
 If flag is true, a message will be printed at each object creation or deletion. More...
 
static void dump ()
 Dump contents of object registry to stdout. More...
 
static void dump (std::ostream &os, Bool_t sinceMarked=kFALSE)
 
static void mark ()
 Put marker in object list, that allows to dump contents of list relative to this marker. More...
 
static void callgrind_zero ()
 Utility function to trigger zeroing of callgrind counters. More...
 
static void callgrind_dump ()
 Utility function to trigger dumping of callgrind counters. More...
 
static RooTraceinstance ()
 
static void printObjectCounts ()
 

Protected Member Functions

void dump3 (std::ostream &, Bool_t sinceMarked)
 Dump contents of object register to stream 'os'. More...
 
void mark3 ()
 Put marker in object list, that allows to dump contents of list relative to this marker. More...
 
void printObjectCounts3 ()
 
void create2 (const TObject *obj)
 Back end function of create(), register creation of object 'obj'. More...
 
void destroy2 (const TObject *obj)
 Back end function of destroy(), register deletion of object 'obj'. More...
 
void create3 (const TObject *obj)
 
void destroy3 (const TObject *obj)
 Back end function of destroy(), register deletion of object 'obj'. More...
 
void createSpecial3 (const char *name, int size)
 
void destroySpecial3 (const char *name)
 
void addPad (const TObject *ref, Bool_t doPad)
 
Bool_t removePad (const TObject *ref)
 

Protected Attributes

Bool_t _active
 
Bool_t _verbose
 
RooLinkedList _list
 
RooLinkedList _markList
 
std::map< TClass *, int > _objectCount
 
std::map< std::string, int > _specialCount
 
std::map< std::string, int > _specialSize
 

Static Protected Attributes

static RooTrace_instance =0
 

#include <RooTrace.h>

Constructor & Destructor Documentation

RooTrace::RooTrace ( )

Definition at line 59 of file RooTrace.cxx.

virtual RooTrace::~RooTrace ( )
inlinevirtual

Definition at line 29 of file RooTrace.h.

Member Function Documentation

void RooTrace::active ( Bool_t  flag)
static

If flag is true, memory tracing is activated.

Definition at line 133 of file RooTrace.cxx.

void RooTrace::addPad ( const TObject ref,
Bool_t  doPad 
)
protected
void RooTrace::callgrind_dump ( )
static

Utility function to trigger dumping of callgrind counters.

Note that this function does not do anything, other than optionally printing this message To trigger callgrind dumping action, run callgrind with argument '–dump-before=RooTrace::callgrind_dump()' (include single quotes in cmdline)

Definition at line 310 of file RooTrace.cxx.

Referenced by RooUnitTest::runTest().

void RooTrace::callgrind_zero ( )
static

Utility function to trigger zeroing of callgrind counters.

Note that this function does not do anything, other than optionally printing this message To trigger callgrind zero counter action, run callgrind with argument '–zero-before=RooTrace::callgrind_zero()' (include single quotes in cmdline)

Definition at line 298 of file RooTrace.cxx.

Referenced by RooRealMPFE::initialize(), and RooUnitTest::runTest().

void RooTrace::create ( const TObject obj)
static

Register creation of object 'obj'.

Definition at line 68 of file RooTrace.cxx.

Referenced by RooAbsCollection::RooAbsCollection(), RooAbsData::RooAbsData(), and RooSharedProperties::RooSharedProperties().

void RooTrace::create2 ( const TObject obj)
protected

Back end function of create(), register creation of object 'obj'.

Definition at line 155 of file RooTrace.cxx.

void RooTrace::create3 ( const TObject obj)
protected

Definition at line 183 of file RooTrace.cxx.

Referenced by create().

void RooTrace::createSpecial ( const char *  name,
int  size 
)
static

Definition at line 92 of file RooTrace.cxx.

void RooTrace::createSpecial3 ( const char *  name,
int  size 
)
protected

Definition at line 114 of file RooTrace.cxx.

Referenced by createSpecial().

void RooTrace::destroy ( const TObject obj)
static

Register deletion of object 'obj'.

Definition at line 81 of file RooTrace.cxx.

Referenced by RooAbsData::~RooAbsData(), and RooSharedProperties::~RooSharedProperties().

void RooTrace::destroy2 ( const TObject obj)
protected

Back end function of destroy(), register deletion of object 'obj'.

Definition at line 170 of file RooTrace.cxx.

void RooTrace::destroy3 ( const TObject obj)
protected

Back end function of destroy(), register deletion of object 'obj'.

Definition at line 195 of file RooTrace.cxx.

Referenced by destroy().

void RooTrace::destroySpecial ( const char *  name)
static

Definition at line 103 of file RooTrace.cxx.

void RooTrace::destroySpecial3 ( const char *  name)
protected

Definition at line 123 of file RooTrace.cxx.

Referenced by destroySpecial().

void RooTrace::dump ( )
static

Dump contents of object registry to stdout.

Definition at line 227 of file RooTrace.cxx.

void RooTrace::dump ( std::ostream &  os,
Bool_t  sinceMarked = kFALSE 
)
static

Definition at line 235 of file RooTrace.cxx.

void RooTrace::dump3 ( std::ostream &  os,
Bool_t  sinceMarked 
)
protected

Dump contents of object register to stream 'os'.

If sinceMarked is true, only object created after the last call to mark() are shown.

Definition at line 245 of file RooTrace.cxx.

Referenced by dump().

RooTrace & RooTrace::instance ( )
static
void RooTrace::mark ( )
static

Put marker in object list, that allows to dump contents of list relative to this marker.

Definition at line 206 of file RooTrace.cxx.

void RooTrace::mark3 ( )
protected

Put marker in object list, that allows to dump contents of list relative to this marker.

Definition at line 217 of file RooTrace.cxx.

Referenced by mark().

void RooTrace::printObjectCounts ( )
static

Definition at line 264 of file RooTrace.cxx.

void RooTrace::printObjectCounts3 ( )
protected

Definition at line 271 of file RooTrace.cxx.

Referenced by printObjectCounts().

Bool_t RooTrace::removePad ( const TObject ref)
protected
void RooTrace::verbose ( Bool_t  flag)
static

If flag is true, a message will be printed at each object creation or deletion.

Definition at line 143 of file RooTrace.cxx.

Member Data Documentation

Bool_t RooTrace::_active
protected

Definition at line 76 of file RooTrace.h.

Referenced by active(), create(), createSpecial(), destroy(), and destroySpecial().

RooTrace * RooTrace::_instance =0
staticprotected

Definition at line 57 of file RooTrace.h.

RooLinkedList RooTrace::_list
protected

Definition at line 78 of file RooTrace.h.

Referenced by create2(), destroy2(), dump3(), and mark3().

RooLinkedList RooTrace::_markList
protected

Definition at line 79 of file RooTrace.h.

Referenced by dump3(), and mark3().

std::map<TClass*,int> RooTrace::_objectCount
protected

Definition at line 80 of file RooTrace.h.

Referenced by create3(), destroy3(), and printObjectCounts3().

std::map<std::string,int> RooTrace::_specialCount
protected

Definition at line 81 of file RooTrace.h.

Referenced by createSpecial3(), destroySpecial3(), and printObjectCounts3().

std::map<std::string,int> RooTrace::_specialSize
protected

Definition at line 82 of file RooTrace.h.

Referenced by createSpecial3(), and printObjectCounts3().

Bool_t RooTrace::_verbose
protected

Definition at line 77 of file RooTrace.h.

Referenced by create2(), destroy2(), and verbose().

Collaboration diagram for RooTrace:
[legend]

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