Kodi Documentation 18.0
Kodi is an open source media player and entertainment hub.
XbmcThreads::UniqueLock< L > Class Template Reference

#include <Lockables.h>

Public Member Functions

bool owns_lock () const
 
void lock ()
 
bool try_lock ()
 
void unlock ()
 
L & get_underlying ()
 

Protected Member Functions

 UniqueLock (L &lockable)
 
 UniqueLock (L &lockable, bool try_to_lock_discrim)
 
 ~UniqueLock ()
 

Protected Attributes

L & mutex
 
bool owns
 

Detailed Description

template<typename L>
class XbmcThreads::UniqueLock< L >

This template can be used to define the base implementation for any UniqueLock (such as CSingleLock) that uses a Lockable as its mutex/critical section.

Constructor & Destructor Documentation

◆ UniqueLock() [1/2]

template<typename L >
XbmcThreads::UniqueLock< L >::UniqueLock ( L &  lockable)
inlineexplicitprotected

◆ UniqueLock() [2/2]

template<typename L >
XbmcThreads::UniqueLock< L >::UniqueLock ( L &  lockable,
bool  try_to_lock_discrim 
)
inlineprotected

◆ ~UniqueLock()

template<typename L >
XbmcThreads::UniqueLock< L >::~UniqueLock ( )
inlineprotected

Member Function Documentation

◆ get_underlying()

template<typename L >
L & XbmcThreads::UniqueLock< L >::get_underlying ( )
inline

See the note on the same method on CountingLockable

◆ lock()

template<typename L >
void XbmcThreads::UniqueLock< L >::lock ( )
inline

◆ owns_lock()

template<typename L >
bool XbmcThreads::UniqueLock< L >::owns_lock ( ) const
inline

◆ try_lock()

template<typename L >
bool XbmcThreads::UniqueLock< L >::try_lock ( )
inline

◆ unlock()

template<typename L >
void XbmcThreads::UniqueLock< L >::unlock ( )
inline

Member Data Documentation

◆ mutex

template<typename L >
L& XbmcThreads::UniqueLock< L >::mutex
protected

◆ owns

template<typename L >
bool XbmcThreads::UniqueLock< L >::owns
protected

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