bakery
2.6
|
A shared reference-counting smart-pointer. More...
#include <sharedptr.h>
Public Types | |
typedef size_t | size_type |
Public Member Functions | |
sharedptr () | |
Allocate a new instance. More... | |
sharedptr (T_obj *pobj) | |
Take ownership. More... | |
sharedptr (const sharedptr &src) | |
Share ownership. More... | |
sharedptr & | operator= (const sharedptr &src) |
Share ownership. More... | |
virtual | ~sharedptr () |
T_obj & | operator* () |
Dereferencing. More... | |
const T_obj & | operator* () const |
Dereferencing. More... | |
T_obj * | operator-> () const |
Dereferencing. More... | |
operator bool () const | |
Test whether the RefPtr<> points to any underlying instance. More... | |
T_obj * | obj () |
Get the underlying instance: More... | |
const T_obj * | obj () const |
Get the underlying instance: More... | |
Protected Member Functions | |
void | ref () |
void | unref () |
Protected Attributes | |
size_type * | m_pRefCount |
T_obj * | m_pobj |
A shared reference-counting smart-pointer.
typedef size_t Bakery::sharedptr< T_obj >::size_type |
Bakery::sharedptr< T_obj >::sharedptr | ( | ) |
Allocate a new instance.
|
explicit |
Take ownership.
References Bakery::sharedptr< T_obj >::ref().
Bakery::sharedptr< T_obj >::sharedptr | ( | const sharedptr< T_obj > & | src | ) |
Share ownership.
References Bakery::sharedptr< T_obj >::ref().
|
virtual |
References Bakery::sharedptr< T_obj >::unref().
|
inline |
Get the underlying instance:
References Bakery::sharedptr< T_obj >::m_pobj.
|
inline |
Get the underlying instance:
References Bakery::sharedptr< T_obj >::m_pobj.
|
inline |
Test whether the RefPtr<> points to any underlying instance.
Mimics usage of ordinary pointers:
References Bakery::sharedptr< T_obj >::m_pobj.
|
inline |
Dereferencing.
References Bakery::sharedptr< T_obj >::m_pobj.
|
inline |
Dereferencing.
References Bakery::sharedptr< T_obj >::m_pobj.
|
inline |
Dereferencing.
Use the methods of the underlying instance like so:
References Bakery::sharedptr< T_obj >::m_pobj.
sharedptr< T_obj > & Bakery::sharedptr< T_obj >::operator= | ( | const sharedptr< T_obj > & | src | ) |
Share ownership.
References Bakery::sharedptr< T_obj >::m_pobj, Bakery::sharedptr< T_obj >::m_pRefCount, Bakery::sharedptr< T_obj >::ref(), and Bakery::sharedptr< T_obj >::unref().
|
inlineprotected |
References Bakery::sharedptr< T_obj >::m_pobj, and Bakery::sharedptr< T_obj >::m_pRefCount.
Referenced by Bakery::sharedptr< T_obj >::operator=(), and Bakery::sharedptr< T_obj >::sharedptr().
|
inlineprotected |
References Bakery::sharedptr< T_obj >::m_pobj, and Bakery::sharedptr< T_obj >::m_pRefCount.
Referenced by Bakery::sharedptr< T_obj >::operator=(), and Bakery::sharedptr< T_obj >::~sharedptr().
|
protected |
|
protected |