Logo ROOT  
Reference Guide
Loading...
Searching...
No Matches
TEveRefBackPtr Class Reference

Base-class for reference-counted objects with reverse references to TEveElement objects.

Definition at line 186 of file TEveUtil.h.

Public Member Functions

 TEveRefBackPtr ()
 Default constructor.
 TEveRefBackPtr (const TEveRefBackPtr &)
 Copy constructor.
 ~TEveRefBackPtr () override
 Destructor. Noop, should complain if back-ref list is not empty.
void DecRefCount ()
virtual void DecRefCount (TEveElement *re)
 Decrease reference count and remove re from the list of back-references.
void IncRefCount ()
virtual void IncRefCount (TEveElement *re)
 Increase reference count and add re to the list of back-references.
TClassIsA () const override
virtual void OnZeroRefCount ()
TEveRefBackPtroperator= (const TEveRefBackPtr &)
 Assignment operator.
virtual void StampBackPtrElements (UChar_t stamps)
 Add given stamps to elements in the list of reverse references.
void Streamer (TBuffer &) override
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)

Static Public Member Functions

static TClassClass ()
static const char * Class_Name ()
static constexpr Version_t Class_Version ()
static const char * DeclFileName ()

Protected Types

typedef RefMap_t::iterator RefMap_i
typedef std::map< TEveElement *, Int_tRefMap_t

Protected Attributes

RefMap_t fBackRefs
Int_t fRefCount

#include <TEveUtil.h>

Inheritance diagram for TEveRefBackPtr:
TEveRefCnt TEveFrameBox TEveTrackPropagator

Member Typedef Documentation

◆ RefMap_i

typedef RefMap_t::iterator TEveRefBackPtr::RefMap_i
protected

Definition at line 190 of file TEveUtil.h.

◆ RefMap_t

typedef std::map<TEveElement*, Int_t> TEveRefBackPtr::RefMap_t
protected

Definition at line 189 of file TEveUtil.h.

Constructor & Destructor Documentation

◆ TEveRefBackPtr() [1/2]

TEveRefBackPtr::TEveRefBackPtr ( )

Default constructor.

Definition at line 534 of file TEveUtil.cxx.

◆ ~TEveRefBackPtr()

TEveRefBackPtr::~TEveRefBackPtr ( )
override

Destructor. Noop, should complain if back-ref list is not empty.

Definition at line 543 of file TEveUtil.cxx.

◆ TEveRefBackPtr() [2/2]

TEveRefBackPtr::TEveRefBackPtr ( const TEveRefBackPtr & )

Copy constructor.

New copy starts with zero reference count and empty back-reference list.

Definition at line 552 of file TEveUtil.cxx.

Member Function Documentation

◆ Class()

TClass * TEveRefBackPtr::Class ( )
static
Returns
TClass describing this class

◆ Class_Name()

const char * TEveRefBackPtr::Class_Name ( )
static
Returns
Name of this class

◆ Class_Version()

constexpr Version_t TEveRefBackPtr::Class_Version ( )
inlinestaticconstexpr
Returns
Version of this class

Definition at line 208 of file TEveUtil.h.

◆ DeclFileName()

const char * TEveRefBackPtr::DeclFileName ( )
inlinestatic
Returns
Name of the file containing the class declaration

Definition at line 208 of file TEveUtil.h.

◆ DecRefCount() [1/2]

void TEveRefCnt::DecRefCount ( )
inline

Definition at line 175 of file TEveUtil.h.

◆ DecRefCount() [2/2]

void TEveRefBackPtr::DecRefCount ( TEveElement * re)
virtual

Decrease reference count and remove re from the list of back-references.

Definition at line 580 of file TEveUtil.cxx.

◆ IncRefCount() [1/2]

void TEveRefCnt::IncRefCount ( )
inline

Definition at line 174 of file TEveUtil.h.

◆ IncRefCount() [2/2]

void TEveRefBackPtr::IncRefCount ( TEveElement * re)
virtual

Increase reference count and add re to the list of back-references.

Definition at line 571 of file TEveUtil.cxx.

◆ IsA()

TClass * TEveRefBackPtr::IsA ( ) const
inlineoverridevirtual
Returns
TClass describing current object

Reimplemented from TEveRefCnt.

Reimplemented in TEveTrackPropagator.

Definition at line 208 of file TEveUtil.h.

◆ OnZeroRefCount()

virtual void TEveRefCnt::OnZeroRefCount ( )
inlinevirtualinherited

Reimplemented in TEveFrameBox, TEveRGBAPalette, and TEveTrackPropagator.

Definition at line 177 of file TEveUtil.h.

◆ operator=()

TEveRefBackPtr & TEveRefBackPtr::operator= ( const TEveRefBackPtr & )

Assignment operator.

Reference count and back-reference information is not assigned as these object hold pointers to a specific object.

Definition at line 563 of file TEveUtil.cxx.

◆ StampBackPtrElements()

void TEveRefBackPtr::StampBackPtrElements ( UChar_t stamps)
virtual

Add given stamps to elements in the list of reverse references.

Definition at line 598 of file TEveUtil.cxx.

◆ Streamer()

void TEveRefBackPtr::Streamer ( TBuffer & )
overridevirtual

Reimplemented from TEveRefCnt.

Reimplemented in TEveTrackPropagator.

◆ StreamerNVirtual()

void TEveRefBackPtr::StreamerNVirtual ( TBuffer & ClassDef_StreamerNVirtual_b)
inline

Definition at line 208 of file TEveUtil.h.

Member Data Documentation

◆ fBackRefs

RefMap_t TEveRefBackPtr::fBackRefs
protected

Definition at line 192 of file TEveUtil.h.

◆ fRefCount

Int_t TEveRefCnt::fRefCount
protectedinherited

Definition at line 165 of file TEveUtil.h.


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