Shaka Player Embedded
Public Types | Public Member Functions | List of all members
shaka::util::shared_lock< Mutex > Class Template Reference

#include <shared_lock.h>

Public Types

using mutex_type = Mutex
 

Public Member Functions

 shared_lock ()
 
 shared_lock (mutex_type &mutex)
 
 shared_lock (shared_lock &&other)
 
 ~shared_lock ()
 
 SHAKA_NON_COPYABLE_TYPE (shared_lock)
 
shared_lockoperator= (shared_lock &&other)
 
 operator bool () const
 
bool owns_lock () const
 
mutex_typemutex () const
 
void swap (shared_lock &other)
 
mutex_typerelease ()
 

Detailed Description

template<typename Mutex>
class shaka::util::shared_lock< Mutex >

Similar to std::unique_lock, this locks the given shared mutex in the shared mode.

Definition at line 112 of file shared_lock.h.

Member Typedef Documentation

§ mutex_type

template<typename Mutex>
using shaka::util::shared_lock< Mutex >::mutex_type = Mutex

Definition at line 114 of file shared_lock.h.

Constructor & Destructor Documentation

§ shared_lock() [1/3]

template<typename Mutex>
shaka::util::shared_lock< Mutex >::shared_lock ( )
inline

Definition at line 116 of file shared_lock.h.

§ shared_lock() [2/3]

template<typename Mutex>
shaka::util::shared_lock< Mutex >::shared_lock ( mutex_type mutex)
inlineexplicit

Definition at line 117 of file shared_lock.h.

§ shared_lock() [3/3]

template<typename Mutex>
shaka::util::shared_lock< Mutex >::shared_lock ( shared_lock< Mutex > &&  other)
inline

Definition at line 121 of file shared_lock.h.

§ ~shared_lock()

template<typename Mutex>
shaka::util::shared_lock< Mutex >::~shared_lock ( )
inline

Definition at line 127 of file shared_lock.h.

Member Function Documentation

§ mutex()

template<typename Mutex>
mutex_type* shaka::util::shared_lock< Mutex >::mutex ( ) const
inline

Definition at line 141 of file shared_lock.h.

§ operator bool()

template<typename Mutex>
shaka::util::shared_lock< Mutex >::operator bool ( ) const
inline

Definition at line 139 of file shared_lock.h.

§ operator=()

template<typename Mutex>
shared_lock& shaka::util::shared_lock< Mutex >::operator= ( shared_lock< Mutex > &&  other)
inline

Definition at line 134 of file shared_lock.h.

§ owns_lock()

template<typename Mutex>
bool shaka::util::shared_lock< Mutex >::owns_lock ( ) const
inline

Definition at line 140 of file shared_lock.h.

§ release()

template<typename Mutex>
mutex_type* shaka::util::shared_lock< Mutex >::release ( )
inline

Definition at line 148 of file shared_lock.h.

§ SHAKA_NON_COPYABLE_TYPE()

template<typename Mutex>
shaka::util::shared_lock< Mutex >::SHAKA_NON_COPYABLE_TYPE ( shared_lock< Mutex )

§ swap()

template<typename Mutex>
void shaka::util::shared_lock< Mutex >::swap ( shared_lock< Mutex > &  other)
inline

Definition at line 143 of file shared_lock.h.


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