#include <memory>
#include <utility>
#include <type_traits>
#include "../Common.h"
#include <shared_mutex>
Go to the source code of this file.
|
class | Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t > |
| Wrapper to std::shared_ptr to provide thread-safety while operating the underlying pointer. More...
|
|
class | Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::PtrHelper< Lock > |
| Proxy class for operator-> in SafeSharedPtr, behave like underlying object, and provide RAII read-write lock for thread safety. More...
|
|
class | Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::RefHelper< Lock > |
| Proxy class for operator* in SafeSharedPtr, behave like underlying object, and provide RAII read-write lock for thread safety. More...
|
|
class | Memory::SafeSharedPtr< T, mutex_t, read_lock_t, write_lock_t >::ArrayHelper< Lock > |
| Proxy class for operator[] in SafeSharedPtr, behave like array element of underlying array object, and provide RAII read-write lock for thread safety. More...
|
|
class | Memory::SafeWeakPtr< T, mutex_t, read_lock_t, write_lock_t > |
| Wrapper to std::weak_ptr to provide weak reference for SafeSharedPtr. More...
|
|
class | Memory::EnableSafeSharedFromThis< T, mutex_t, read_lock_t, write_lock_t > |
| A proxy class from std::enable_shared_from_this to provide same functionality for SafeSharedPtr. More...
|
|
|
namespace | Memory |
| Namespace for all classes, typedefs and functions of memory safety. See Memory Safety for more instrucion.
|
|
namespace | std |
| Contains std functions overload for classes in Utilities, cannot hide in doxygen, just ignore it.
|
|