FreeRTOScpp
|
A Base class to provide block based locking capability. More...
#include <Lock.h>
Public Member Functions | |
Lockable () | |
virtual | ~Lockable () |
virtual bool | give ()=0 |
virtual bool | take (TickType_t wait=portMAX_DELAY)=0 |
bool | take (Time_ms ms) |
Private Member Functions | |
Lockable (Lockable const &)=delete | |
We are not copyable. More... | |
void | operator= (Lockable const &)=delete |
We are not assignable. More... | |
A Base class to provide block based locking capability.
Any object that supports "Locking" should be derived from Lockable (like a Semaphore or Mutex)
Such objects need to provide an interface consisting of
|
inline |
|
inlinevirtual |
|
privatedelete |
We are not copyable.
|
pure virtual |
Implemented in FreeRTOScpp::RecursiveMutex, FreeRTOScpp::Mutex, FreeRTOScpp::BinarySemaphore, FreeRTOScpp::Writer, and FreeRTOScpp::Reader.
Referenced by take(), FreeRTOScpp::Lock::unlock(), and FreeRTOScpp::Lock::~Lock().
|
privatedelete |
|
pure virtual |
Implemented in FreeRTOScpp::RecursiveMutex, FreeRTOScpp::BinarySemaphore, FreeRTOScpp::Mutex, FreeRTOScpp::Writer, and FreeRTOScpp::Reader.
Referenced by FreeRTOScpp::Lock::lock(), and ~Lockable().
|
inline |
References give(), Lockable(), FreeRTOScpp::ms2ticks(), operator=(), and take().
Referenced by take().