Cpp Utilities 1.2.3
|
Proxy class for operator-> in SafeSharedPtr, behave like underlying object, and provide RAII read-write lock for thread safety. More...
#include <SafeSharedPtr.hpp>
Public Types | |
using | pointer = T * |
Pointer type of element. More... | |
using | const_pointer = const T * |
Const pointer type of element. More... | |
using | reference = T & |
Reference type of element. More... | |
using | const_reference = const T & |
Const eference type of element. More... | |
Public Member Functions | |
PtrHelper (const SafeSharedPtr &p) | |
Constructor a constant PtrHelper to gain access to underlying object of SafeSharedPtr. More... | |
PtrHelper (PtrHelper &&other) noexcept | |
Move constructor, transport ownership to another PtrHelper, keep existing lock state. More... | |
~PtrHelper () | |
Destructor, release Lock if exists. More... | |
PtrHelper & | operator= (PtrHelper &&other) |
Move assigment, transport ownership to another PtrHelper, keep existing lock state. More... | |
operator pointer () | |
Operator overload to act as T* . More... | |
operator const_pointer () const | |
Operator overload to act as const T* . More... | |
pointer | operator-> () |
Operator overload to act as T* . More... | |
const_pointer | operator-> () const |
Operator overload to act as const T* . More... | |
Proxy class for operator-> in SafeSharedPtr, behave like underlying object, and provide RAII read-write lock for thread safety.
Lock | Lock type used for protect the object. |
std::move
with move constructor and move assignment to transport it's ownership, or simply use it like type T* or T&. using Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::PtrHelper< Lock >::pointer = T* |
Pointer type of element.
using Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::PtrHelper< Lock >::const_pointer = const T* |
Const pointer type of element.
using Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::PtrHelper< Lock >::reference = T& |
Reference type of element.
using Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::PtrHelper< Lock >::const_reference = const T& |
Const eference type of element.
|
inlineexplicit |
Constructor a constant PtrHelper to gain access to underlying object of SafeSharedPtr.
Will construct Lock object to guard the pointer.
p | SafeSharedPtr to access from. |
|
inlinenoexcept |
|
inline |
Destructor, release Lock if exists.
|
inline |
|
inline |
Operator overload to act as T*
.
T&
.
|
inline |
Operator overload to act as const T*
.
const T&
.
|
inline |
Operator overload to act as T*
.
T*
.
|
inline |
Operator overload to act as const T*
.
const T*
.