|
Public Member Functions |
| | CL_SharedPtr () |
| | CL_SharedPtr (const CL_SharedPtr< Type > ©) |
| | CL_SharedPtr (const CL_UnknownSharedPtr ©) |
| template<typename InitType> |
| | CL_SharedPtr (InitType *ptr) |
| template<typename InitType> |
| | CL_SharedPtr (InitType *ptr, CL_Mutex *ref_mutex) |
| template<typename InitType> |
| | CL_SharedPtr (InitType *ptr, CL_MemoryPool *memory_pool) |
| template<typename InitType> |
| | CL_SharedPtr (InitType *ptr, CL_MemoryPool *memory_pool, CL_Mutex *ref_mutex) |
| template<typename InitType> |
| | CL_SharedPtr (InitType *ptr, void(*free_callback)(InitType *ptr)) |
| template<typename InitType> |
| | CL_SharedPtr (InitType *ptr, void(*free_callback)(InitType *ptr), CL_Mutex *ref_mutex) |
| template<typename InitType, typename FreeClass> |
| | CL_SharedPtr (InitType *ptr, FreeClass *free_class, void(FreeClass::*free_callback)(InitType *ptr)) |
| template<typename InitType, typename FreeClass> |
| | CL_SharedPtr (InitType *ptr, FreeClass *free_class, void(FreeClass::*free_callback)(InitType *ptr), CL_Mutex *ref_mutex) |
| | CL_SharedPtr (const CL_SharedPtr_Link &link, Type *ptr) |
| | ~CL_SharedPtr () |
| CL_SharedPtr & | operator= (const CL_SharedPtr ©) |
| bool | disconnect () |
| | Disconnect from linked list and unset the pointer.
|
| bool | is_null () const |
| | Tests if the pointer is unset.
|
| Type * | get () |
| | Retrieves the pointer.
|
| const Type * | get () const |
| | Retrieves the pointer.
|
| | operator Type * () |
| | operator const Type * () const |
| | operator CL_UnknownSharedPtr () |
| | operator CL_UnknownSharedPtr () const |
| Type * | operator-> () |
| const Type * | operator-> () const |
| template<typename OtherType> |
| bool | operator== (OtherType *other) const |
| template<typename OtherType> |
| bool | operator!= (OtherType *other) const |
| template<typename OtherType> |
| bool | operator< (OtherType *other) const |
| template<typename OtherType> |
| bool | operator<= (OtherType *other) const |
| template<typename OtherType> |
| bool | operator> (OtherType *other) const |
| template<typename OtherType> |
| bool | operator>= (OtherType *other) const |
| template<typename Type> |
| void | create_deleter (Type *instance) |
| template<typename Type> |
| void | create_deleter (Type *ptr, CL_MemoryPool *pool) |
| template<typename Type> |
| void | create_deleter (Type *ptr, void(*free_callback)(Type *ptr)) |
| template<typename Type, typename FreeClass> |
| void | create_deleter (Type *ptr, FreeClass *free_class, void(FreeClass::*free_callback)(Type *ptr)) |
| void | call_deleter () |
| void | connect (const CL_SharedPtr_Link ©) |
| void | set_weak_link () |
| bool | is_invalid_weak_link () const |
Public Attributes |
| Type * | ptr |
| CL_Mutex * | mutex |