diff --git a/include/sta/mutex.hpp b/include/sta/mutex.hpp index 1147f75..6dd2094 100644 --- a/include/sta/mutex.hpp +++ b/include/sta/mutex.hpp @@ -5,9 +5,16 @@ #ifndef STA_CORE_MUTEX_HPP #define STA_CORE_MUTEX_HPP +#include + namespace sta { + /** + * @brief Hippity hoppity, this is now namespace sta's property. + */ + using std::lock_guard; + /** * @brief Interface for mutex objects. * @@ -25,6 +32,16 @@ namespace sta */ virtual void release() = 0; + /** + * @brief Identical to acquire(). Added for compatibility with std::lock_guard. + */ + void lock(); + + /** + * @brief Identical to release(). Added for compatibility with std::lock_guard. + */ + void unlock(); + static Mutex * ALWAYS_FREE; /**< Fake mutex that can always be acquired */ }; } // namespace sta diff --git a/src/mutex.cpp b/src/mutex.cpp index 2472911..ea8438b 100644 --- a/src/mutex.cpp +++ b/src/mutex.cpp @@ -3,6 +3,16 @@ namespace sta { + void Mutex::lock() + { + acquire(); + } + + void Mutex::unlock() + { + release(); + } + /** * @brief Dummy mutex implementation with no access control. */