diff options
author | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2009-05-16 10:57:16 +0000 |
---|---|---|
committer | gdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4> | 2009-05-16 10:57:16 +0000 |
commit | 2706d240bbea25b21dac8e0bc123de9cb2080a13 (patch) | |
tree | 2dadce33dd364f5d745f3f8c5274289ad237e63d /src/include/mutexes.h | |
parent | 2f39b6e6b5bd6383c125fbf151ffd0d7e488a1de (diff) | |
download | ChibiOS-2706d240bbea25b21dac8e0bc123de9cb2080a13.tar.gz ChibiOS-2706d240bbea25b21dac8e0bc123de9cb2080a13.tar.bz2 ChibiOS-2706d240bbea25b21dac8e0bc123de9cb2080a13.zip |
Added static initializers to thread queues, semaphores, mutexes, condvars and event sources.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@975 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'src/include/mutexes.h')
-rw-r--r-- | src/include/mutexes.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/include/mutexes.h b/src/include/mutexes.h index 16b59f695..6ef6e48f4 100644 --- a/src/include/mutexes.h +++ b/src/include/mutexes.h @@ -57,6 +57,22 @@ extern "C" { #endif
/**
+ * @brief Data part of a static mutex initializer.
+ * @details This macro should be used when statically initializing a mutex
+ * that is part of a bigger structure.
+ * @param name the name of the mutex variable
+ */
+#define _MUTEX_DATA(name) {_THREADSQUEUE_DATA(name.m_queue), NULL, NULL}
+
+/**
+ * @brief Static mutex initializer.
+ * @details Statically initialized mutexes require no explicit initialization
+ * using @p chMtxInit().
+ * @param name the name of the mutex variable
+ */
+#define MUTEX_DECL(name) Mutex name = _MUTEX_DATA(name)
+
+/**
* Returns @p TRUE if the mutex queue contains at least a waiting thread.
*/
#define chMtxQueueNotEmptyS(mp) notempty(&(mp)->m_queue)
|