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

#include <PlatformMutex.h>

Public Member Functions

 PlatformUniqueLock (Mutex &mutex, uint32_t timeout_ms=0) noexcept
 
 ~PlatformUniqueLock () noexcept
 
 PlatformUniqueLock (const PlatformUniqueLock &)=delete
 
PlatformUniqueLockoperator= (const PlatformUniqueLock &)=delete
 
 PlatformUniqueLock (PlatformUniqueLock &&other) noexcept
 
PlatformUniqueLockoperator= (PlatformUniqueLock &&other) noexcept
 
bool IsLocked () const noexcept
 
void Unlock () noexcept
 

Private Attributes

Mutex * mutex_
 
bool locked_
 

Constructor & Destructor Documentation

◆ PlatformUniqueLock() [1/3]

template<typename Mutex >
PlatformUniqueLock< Mutex >::PlatformUniqueLock ( Mutex & mutex,
uint32_t timeout_ms = 0 )
inlineexplicitnoexcept

◆ ~PlatformUniqueLock()

template<typename Mutex >
PlatformUniqueLock< Mutex >::~PlatformUniqueLock ( )
inlinenoexcept

◆ PlatformUniqueLock() [2/3]

template<typename Mutex >
PlatformUniqueLock< Mutex >::PlatformUniqueLock ( const PlatformUniqueLock< Mutex > & )
delete

◆ PlatformUniqueLock() [3/3]

template<typename Mutex >
PlatformUniqueLock< Mutex >::PlatformUniqueLock ( PlatformUniqueLock< Mutex > && other)
inlinenoexcept

Member Function Documentation

◆ IsLocked()

template<typename Mutex >
bool PlatformUniqueLock< Mutex >::IsLocked ( ) const
inlinenoexcept

◆ operator=() [1/2]

template<typename Mutex >
PlatformUniqueLock & PlatformUniqueLock< Mutex >::operator= ( const PlatformUniqueLock< Mutex > & )
delete

◆ operator=() [2/2]

template<typename Mutex >
PlatformUniqueLock & PlatformUniqueLock< Mutex >::operator= ( PlatformUniqueLock< Mutex > && other)
inlinenoexcept

◆ Unlock()

template<typename Mutex >
void PlatformUniqueLock< Mutex >::Unlock ( )
inlinenoexcept

Member Data Documentation

◆ locked_

template<typename Mutex >
bool PlatformUniqueLock< Mutex >::locked_
private

◆ mutex_

template<typename Mutex >
Mutex* PlatformUniqueLock< Mutex >::mutex_
private

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