blocxx
BLOCXX_NAMESPACE::COWReferenceBase Class Reference

#include <COWReferenceBase.hpp>

Inheritance diagram for BLOCXX_NAMESPACE::COWReferenceBase:
BLOCXX_NAMESPACE::COWReference< V > BLOCXX_NAMESPACE::COWReference< L > BLOCXX_NAMESPACE::COWReference< container_t > BLOCXX_NAMESPACE::COWReference< M > BLOCXX_NAMESPACE::COWReference< T >

Protected Member Functions

 COWReferenceBase ()
 
 COWReferenceBase (const COWReferenceBase &arg)
 
void incRef ()
 
bool decRef ()
 
bool refCountGreaterThanOne () const
 
bool getWriteLock ()
 
void swap (COWReferenceBase &arg)
 
void useRefCountOf (const COWReferenceBase &arg)
 

Protected Attributes

RefCount *volatile m_pRefCount
 

Detailed Description

Definition at line 61 of file COWReferenceBase.hpp.

Constructor & Destructor Documentation

◆ COWReferenceBase() [1/2]

◆ COWReferenceBase() [2/2]

BLOCXX_NAMESPACE::COWReferenceBase::COWReferenceBase ( const COWReferenceBase & arg)
inlineprotected

Definition at line 66 of file COWReferenceBase.hpp.

References COWReferenceBase(), and m_pRefCount.

Member Function Documentation

◆ decRef()

bool BLOCXX_NAMESPACE::COWReferenceBase::decRef ( )
inlineprotected

Definition at line 76 of file COWReferenceBase.hpp.

References m_pRefCount.

Referenced by BLOCXX_NAMESPACE::COWReference< T >::decRef(), and useRefCountOf().

◆ getWriteLock()

bool BLOCXX_NAMESPACE::COWReferenceBase::getWriteLock ( )
inlineprotected

Definition at line 92 of file COWReferenceBase.hpp.

References incRef(), and m_pRefCount.

Referenced by BLOCXX_NAMESPACE::COWReference< T >::getWriteLock().

◆ incRef()

void BLOCXX_NAMESPACE::COWReferenceBase::incRef ( )
inlineprotected

Definition at line 71 of file COWReferenceBase.hpp.

References m_pRefCount.

Referenced by getWriteLock(), and useRefCountOf().

◆ refCountGreaterThanOne()

bool BLOCXX_NAMESPACE::COWReferenceBase::refCountGreaterThanOne ( ) const
inlineprotected

Definition at line 86 of file COWReferenceBase.hpp.

References m_pRefCount.

Referenced by BLOCXX_NAMESPACE::COWReference< T >::getWriteLock().

◆ swap()

void BLOCXX_NAMESPACE::COWReferenceBase::swap ( COWReferenceBase & arg)
inlineprotected

◆ useRefCountOf()

void BLOCXX_NAMESPACE::COWReferenceBase::useRefCountOf ( const COWReferenceBase & arg)
inlineprotected

Member Data Documentation

◆ m_pRefCount

RefCount* volatile BLOCXX_NAMESPACE::COWReferenceBase::m_pRefCount
protected

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