#include <Intrusive_Ref_Count_Base_T.h>
Collaboration diagram for TAO_Intrusive_Ref_Count_Base< ACE_LOCK >:
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_Base & | operator= (const TAO_Intrusive_Ref_Count_Base &) |
Private Attributes | |
ACE_Atomic_Op< ACE_LOCK, long > | ref_count_ |
Definition at line 40 of file Intrusive_Ref_Count_Base_T.h.
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_Intrusive_Ref_Count_Base< T >::~TAO_Intrusive_Ref_Count_Base | ( | void | ) | [virtual] |
TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO_Intrusive_Ref_Count_Base< T >::TAO_Intrusive_Ref_Count_Base | ( | void | ) | [protected] |
TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::TAO_Intrusive_Ref_Count_Base | ( | const TAO_Intrusive_Ref_Count_Base< ACE_LOCK > & | ) | [private] |
ACE_INLINE void TAO_Intrusive_Ref_Count_Base< T >::_add_ref | ( | void | ) |
Definition at line 17 of file Intrusive_Ref_Count_Base_T.inl.
References TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::ref_count_.
00018 { 00019 ++this->ref_count_; 00020 }
ACE_INLINE void TAO_Intrusive_Ref_Count_Base< T >::_remove_ref | ( | void | ) |
Definition at line 26 of file Intrusive_Ref_Count_Base_T.inl.
References TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::ref_count_.
00027 { 00028 long const new_count = --this->ref_count_; 00029 00030 if (new_count != 0) 00031 { 00032 return; 00033 } 00034 00035 delete this; 00036 }
TAO_Intrusive_Ref_Count_Base& TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::operator= | ( | const TAO_Intrusive_Ref_Count_Base< ACE_LOCK > & | ) | [private] |
ACE_Atomic_Op<ACE_LOCK, long> TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::ref_count_ [private] |
Definition at line 57 of file Intrusive_Ref_Count_Base_T.h.
Referenced by TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::_add_ref(), and TAO_Intrusive_Ref_Count_Base< ACE_LOCK >::_remove_ref().