54 virtual void DoError(
int level,
const char *location,
const char *fmt, va_list va)
const;
129 virtual void Dump()
const;
130 virtual void Execute(
const char *method,
const char *params,
Int_t *error =
nullptr);
137 virtual const char *
GetName()
const;
141 virtual const char *
GetTitle()
const;
185 void operator delete(
void *ptr);
186 void operator delete[](
void *ptr);
189 void operator delete(
void*, size_t);
190 void operator delete[](
void*, size_t);
192#ifdef R__PLACEMENTDELETE
193 void operator delete(
void *ptr,
void *vp);
194 void operator delete[](
void *ptr,
void *vp);
206 virtual void Info(
const char *method,
const char *msgfmt, ...) const
207#if defined(__GNUC__) && !defined(__CINT__)
208 __attribute__((
format(printf, 3, 4)))
211 virtual void Warning(
const char *method,
const char *msgfmt, ...) const
212#if defined(__GNUC__) && !defined(__CINT__)
213 __attribute__((
format(printf, 3, 4)))
216 virtual void Error(
const char *method,
const char *msgfmt, ...) const
217#if defined(__GNUC__) && !defined(__CINT__)
218 __attribute__((
format(printf, 3, 4)))
221 virtual void SysError(
const char *method,
const char *msgfmt, ...) const
222#if defined(__GNUC__) && !defined(__CINT__)
223 __attribute__((
format(printf, 3, 4)))
226 virtual void Fatal(
const char *method,
const char *msgfmt, ...) const
227#if defined(__GNUC__) && !defined(__CINT__)
228 __attribute__((
format(printf, 3, 4)))
233 void MayNotUse(
const char *method)
const;
234 void Obsolete(
const char *method,
const char *asOfVers,
const char *removedFromVers)
const;
282 fBits &= ~kIsReferenced;
283 fBits &= ~kCanDelete;
309 fBits &= ~kIsReferenced;
310 fBits &= ~kCanDelete;
341 if (!CheckTObjectHashConsistency())
380 std::string printValue(
TObject *val);
#define R__unlikely(expr)
#define ClassDef(name, id)
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char filename
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t format
Using a TBrowser one can browse all ROOT objects.
Buffer base class used for serializing objects.
TClass instances represent classes, structs and namespaces in the ROOT type system.
An array of clone (identical) objects.
Each ROOT class (see TClass) has a linked list of methods.
Mother of all ROOT objects.
void AbstractMethod(const char *method) const
Use this method to implement an "abstract" method that you don't want to leave purely abstract.
virtual Bool_t IsFolder() const
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
virtual void Inspect() const
Dump contents of this object in a graphics canvas.
virtual void Clear(Option_t *="")
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
Computes distance from point (px,py) to the object.
Bool_t HasInconsistentHash() const
Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveR...
static void SetObjectStat(Bool_t stat)
Turn on/off tracking of objects in the TObjectTable.
virtual Bool_t Notify()
This method must be overridden to handle object notification.
Bool_t IsDestructed() const
IsDestructed.
ULong_t CheckedHash()
Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return t...
virtual Bool_t IsEqual(const TObject *obj) const
Default equal comparison (objects are equal if they have the same address in memory).
@ kOverwrite
overwrite existing object with same name
@ kSingleKey
write collection with single key
@ kWriteDelete
write object, then delete previous key with same name
virtual const char * GetName() const
Returns name of object.
TObject & operator=(const TObject &rhs)
TObject assignment operator.
virtual void Browse(TBrowser *b)
Browse object. May be overridden for another default action.
virtual void Dump() const
Dump contents of object on stdout.
UInt_t fUniqueID
object unique identifier
R__ALWAYS_INLINE Bool_t TestBit(UInt_t f) const
virtual const char * GetIconName() const
Returns mime type name of object.
virtual void RecursiveRemove(TObject *obj)
Recursively remove this object from a list.
virtual void DoError(int level, const char *location, const char *fmt, va_list va) const
Interface to ErrorHandler (protected).
virtual Bool_t HandleTimer(TTimer *timer)
Execute action in response of a timer timing out.
virtual TObject * Clone(const char *newname="") const
Make a clone of an object using the Streamer facility.
virtual UInt_t GetUniqueID() const
Return the unique object id.
@ kIsOnHeap
object is on heap
@ kNotDeleted
object has not been deleted
@ kZombie
object ctor failed
@ kInconsistent
class overload Hash but does call RecursiveRemove in destructor
UInt_t fBits
bit field status word
virtual Bool_t IsSortable() const
virtual Option_t * GetOption() const
static Longptr_t fgDtorOnly
object for which to call dtor only (i.e. no delete)
virtual void SysError(const char *method, const char *msgfmt,...) const
Issue system error message.
R__ALWAYS_INLINE Bool_t IsOnHeap() const
virtual const char * ClassName() const
Returns name of class to which the object belongs.
virtual void UseCurrentStyle()
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyl...
virtual Option_t * GetDrawOption() const
Get option used by the graphics system to draw this object.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
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 clas...
virtual TObject * DrawClone(Option_t *option="") const
Draw a clone of this object in the current selected pad with: gROOT->SetSelectedPad(c1).
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
Execute action corresponding to an event at (px,py).
virtual TObject * FindObject(const char *name) const
Must be redefined in derived classes.
virtual void Execute(const char *method, const char *params, Int_t *error=nullptr)
Execute method on this object with the given parameter string, e.g.
virtual void AppendPad(Option_t *option="")
Append graphics object to current pad.
virtual char * GetObjectInfo(Int_t px, Int_t py) const
Returns string containing info about the object at position (px,py).
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save a primitive as a C++ statement(s) on output stream "out".
R__ALWAYS_INLINE Bool_t IsZombie() const
virtual Int_t Write(const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
Write this object to the current directory.
@ kOnlyPrepStep
Used to request that the class specific implementation of TObject::Write just prepare the objects to ...
virtual void SaveAs(const char *filename="", Option_t *option="") const
Save this object in the file specified by filename.
virtual void Delete(Option_t *option="")
Delete this object.
static Longptr_t GetDtorOnly()
Return destructor only flag.
void SetBit(UInt_t f, Bool_t set)
Set or unset the user status bits as specified in f.
virtual Bool_t InheritsFrom(const char *classname) const
Returns kTRUE if object inherits from class "classname".
static Bool_t GetObjectStat()
Get status of object stat flag.
virtual void Copy(TObject &object) const
Copy this to obj.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void SetDrawOption(Option_t *option="")
Set drawing option for object.
virtual void Fatal(const char *method, const char *msgfmt,...) const
Issue fatal error message.
static void SetDtorOnly(void *obj)
Set destructor only flag.
virtual void SetUniqueID(UInt_t uid)
Set the unique object id.
virtual const char * GetTitle() const
Returns title of object.
@ kObjInCanvas
for backward compatibility only, use kMustCleanup
virtual void DrawClass() const
Draw class inheritance tree of the class to which this object belongs.
Int_t TestBits(UInt_t f) const
virtual Int_t Compare(const TObject *obj) const
Compare abstract method.
virtual ~TObject()
TObject destructor.
virtual void Paint(Option_t *option="")
This method must be overridden if a class wants to paint itself.
virtual void Print(Option_t *option="") const
This method must be overridden when a class wants to print itself.
virtual void Pop()
Pop on object drawn in a pad to the top of the display list.
TObject()
TObject constructor.
virtual ULong_t Hash() const
Return hash value for this object.
virtual void ls(Option_t *option="") const
The ls function lists the contents of a class on stdout.
static Bool_t fgObjectStat
if true keep track of objects in TObjectTable
@ kCannotPick
if object in a pad cannot be picked
@ kNoContextMenu
if object does not want context menu
@ kCanDelete
if object in a list can be deleted
@ kHasUUID
if object has a TUUID (its fUniqueID=UUIDNumber)
@ kInvalidObject
if object ctor succeeded but object should not be used
@ kIsReferenced
if object is referenced by a TRef or TRefArray
@ kMustCleanup
if object destructor must call RecursiveRemove()
virtual Int_t Read(const char *name)
Read contents of object with specified name from the current directory.
static void AddToTObjectTable(TObject *)
Private helper function which will dispatch to TObjectTable::AddObj.
virtual void Info(const char *method, const char *msgfmt,...) const
Issue info message.
void Obsolete(const char *method, const char *asOfVers, const char *removedFromVers) const
Use this method to declare a method obsolete.
static void UpdateIsOnHeap(volatile const UInt_t &uniqueID, volatile UInt_t &bits)
static void * ObjectAllocArray(size_t size)
Used to allocate array of TObject on the heap (via TObject::operator new[]()).
static void * ObjectAlloc(size_t size)
Used to allocate a TObject on the heap (via TObject::operator new()).
Handles synchronous and a-synchronous timer events.
R__ALWAYS_INLINE bool HasBeenDeleted(const TObject *obj)
Check if the TObject's memory has been deleted.
bool DeleteChangesMemory()
bool DeleteChangesMemoryImpl()
This file contains a specialised ROOT message handler to test for diagnostic in unit tests.