HF Interface Wrapper 0.1.0-dev
Embedded C++ hardware abstraction layer
Loading...
Searching...
No Matches
PlatformSharedLock< SharedMutex > Class Template Reference

#include <PlatformMutex.h>

Public Member Functions

 PlatformSharedLock (SharedMutex &mutex, uint32_t timeout_ms=0) noexcept
 
 ~PlatformSharedLock () noexcept
 
 PlatformSharedLock (const PlatformSharedLock &)=delete
 
PlatformSharedLockoperator= (const PlatformSharedLock &)=delete
 
 PlatformSharedLock (PlatformSharedLock &&other) noexcept
 
PlatformSharedLockoperator= (PlatformSharedLock &&other) noexcept
 
bool IsLocked () const noexcept
 
void Unlock () noexcept
 

Private Attributes

SharedMutex * mutex_
 
bool locked_
 

Constructor & Destructor Documentation

◆ PlatformSharedLock() [1/3]

template<typename SharedMutex >
PlatformSharedLock< SharedMutex >::PlatformSharedLock ( SharedMutex & mutex,
uint32_t timeout_ms = 0 )
inlineexplicitnoexcept

◆ ~PlatformSharedLock()

template<typename SharedMutex >
PlatformSharedLock< SharedMutex >::~PlatformSharedLock ( )
inlinenoexcept

◆ PlatformSharedLock() [2/3]

template<typename SharedMutex >
PlatformSharedLock< SharedMutex >::PlatformSharedLock ( const PlatformSharedLock< SharedMutex > & )
delete

◆ PlatformSharedLock() [3/3]

template<typename SharedMutex >
PlatformSharedLock< SharedMutex >::PlatformSharedLock ( PlatformSharedLock< SharedMutex > && other)
inlinenoexcept

Member Function Documentation

◆ IsLocked()

template<typename SharedMutex >
bool PlatformSharedLock< SharedMutex >::IsLocked ( ) const
inlinenoexcept

◆ operator=() [1/2]

template<typename SharedMutex >
PlatformSharedLock & PlatformSharedLock< SharedMutex >::operator= ( const PlatformSharedLock< SharedMutex > & )
delete

◆ operator=() [2/2]

template<typename SharedMutex >
PlatformSharedLock & PlatformSharedLock< SharedMutex >::operator= ( PlatformSharedLock< SharedMutex > && other)
inlinenoexcept

◆ Unlock()

template<typename SharedMutex >
void PlatformSharedLock< SharedMutex >::Unlock ( )
inlinenoexcept

Member Data Documentation

◆ locked_

template<typename SharedMutex >
bool PlatformSharedLock< SharedMutex >::locked_
private

◆ mutex_

template<typename SharedMutex >
SharedMutex* PlatformSharedLock< SharedMutex >::mutex_
private

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