ROOT
6.06/09
Reference Guide
ROOT Home Page
Main Page
Related Pages
User's Classes
Namespaces
All Classes
Files
Release Notes
File List
File Members
core
base
inc
TRefCnt.h
Go to the documentation of this file.
1
// @(#)root/base:$Id$
2
// Author: Fons Rademakers 04/08/95
3
4
/*************************************************************************
5
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6
* All rights reserved. *
7
* *
8
* For the licensing terms see $ROOTSYS/LICENSE. *
9
* For the list of contributors see $ROOTSYS/README/CREDITS. *
10
*************************************************************************/
11
12
#ifndef ROOT_TRefCnt
13
#define ROOT_TRefCnt
14
15
16
//////////////////////////////////////////////////////////////////////////
17
// //
18
// TRefCnt //
19
// //
20
// Base class for reference counted objects. //
21
// //
22
//////////////////////////////////////////////////////////////////////////
23
24
#ifndef ROOT_Rtypes
25
#include "
Rtypes.h
"
26
#endif
27
28
29
class
TRefCnt
{
30
31
protected
:
32
UInt_t
fRefs
;
// (1 less than) number of references
33
34
public
:
35
enum
EReferenceFlag
{
kStaticInit
};
36
37
TRefCnt
(
Int_t
initRef = 0) : fRefs((
UInt_t
)initRef-1) { }
38
TRefCnt
(
EReferenceFlag
);
39
virtual
~TRefCnt
() { }
40
UInt_t
References
()
const
{
return
fRefs+1; }
41
void
SetRefCount
(
UInt_t
r
) { fRefs = r-1; }
42
void
AddReference
() { fRefs++; }
43
UInt_t
RemoveReference
() {
return
fRefs--; }
44
};
45
46
#endif
Rtypes.h
TRefCnt::References
UInt_t References() const
Definition:
TRefCnt.h:40
TRefCnt::fRefs
UInt_t fRefs
Definition:
TRefCnt.h:32
TRefCnt
Definitions for TRefCnt, base class for reference counted objects.
Definition:
TRefCnt.h:29
Int_t
int Int_t
Definition:
RtypesCore.h:41
TRefCnt::SetRefCount
void SetRefCount(UInt_t r)
Definition:
TRefCnt.h:41
r
ROOT::R::TRInterface & r
Definition:
Object.C:4
UInt_t
unsigned int UInt_t
Definition:
RtypesCore.h:42
TRefCnt::RemoveReference
UInt_t RemoveReference()
Definition:
TRefCnt.h:43
TRefCnt::EReferenceFlag
EReferenceFlag
Definition:
TRefCnt.h:35
TRefCnt::~TRefCnt
virtual ~TRefCnt()
Definition:
TRefCnt.h:39
TRefCnt::AddReference
void AddReference()
Definition:
TRefCnt.h:42
TRefCnt::TRefCnt
TRefCnt(Int_t initRef=0)
Definition:
TRefCnt.h:37
TRefCnt::kStaticInit
Definition:
TRefCnt.h:35