TAO  2.0.6
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
TAO_Intrusive_Ref_Count_Base Class Reference

Template base class to provide intrusive reference-counting to subclasses. This makes the subclass capable of using a TAO_Intrusive_Ref_Count_Handle<X> class as a smart-pointer to an X object. In this case, X is a sub-class of this class, TAO_Intrusive_Ref_Count_Base<ACE_LOCK>. The ACE_LOCK type is used to protect the atomic reference count data member. More...

#include <Intrusive_Ref_Count_Base_T.h>

Collaboration diagram for TAO_Intrusive_Ref_Count_Base:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual ~TAO_Intrusive_Ref_Count_Base (void)
void _add_ref (void)
void _remove_ref (void)

Protected Member Functions

 TAO_Intrusive_Ref_Count_Base (void)

Private Member Functions

 TAO_Intrusive_Ref_Count_Base (const TAO_Intrusive_Ref_Count_Base &)
TAO_Intrusive_Ref_Count_Baseoperator= (const TAO_Intrusive_Ref_Count_Base &)

Private Attributes

ACE_Atomic_Op< ACE_LOCK, long > ref_count_

Detailed Description

Template base class to provide intrusive reference-counting to subclasses. This makes the subclass capable of using a TAO_Intrusive_Ref_Count_Handle<X> class as a smart-pointer to an X object. In this case, X is a sub-class of this class, TAO_Intrusive_Ref_Count_Base<ACE_LOCK>. The ACE_LOCK type is used to protect the atomic reference count data member.


Constructor & Destructor Documentation

TAO_Intrusive_Ref_Count_Base::~TAO_Intrusive_Ref_Count_Base ( void  ) [virtual]
TAO_Intrusive_Ref_Count_Base::TAO_Intrusive_Ref_Count_Base ( void  ) [protected]
TAO_Intrusive_Ref_Count_Base::TAO_Intrusive_Ref_Count_Base ( const TAO_Intrusive_Ref_Count_Base ) [private]

Member Function Documentation

void TAO_Intrusive_Ref_Count_Base::_add_ref ( void  )
void TAO_Intrusive_Ref_Count_Base::_remove_ref ( void  )
TAO_Intrusive_Ref_Count_Base& TAO_Intrusive_Ref_Count_Base::operator= ( const TAO_Intrusive_Ref_Count_Base ) [private]

Member Data Documentation


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines