diff options
Diffstat (limited to 'os/lib/include')
-rw-r--r-- | os/lib/include/chlib.h | 119 | ||||
-rw-r--r-- | os/lib/include/chpipes.h | 30 |
2 files changed, 70 insertions, 79 deletions
diff --git a/os/lib/include/chlib.h b/os/lib/include/chlib.h index 02f50e9c2..ab55d333b 100644 --- a/os/lib/include/chlib.h +++ b/os/lib/include/chlib.h @@ -83,6 +83,61 @@ #error "OS check failed, must be included after ch.h"
#endif
+/* Configuration file checks.*/
+#if !defined(CH_CFG_USE_MAILBOXES)
+#error "CH_CFG_USE_MAILBOXES not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_USE_MEMCORE)
+#error "CH_CFG_USE_MEMCORE not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_USE_HEAP)
+#error "CH_CFG_USE_HEAP not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_USE_MEMPOOLS)
+#error "CH_CFG_USE_MEMPOOLS not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_USE_OBJ_FIFOS)
+#error "CH_CFG_USE_OBJ_FIFOS not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_USE_PIPES)
+//#error "CH_CFG_USE_PIPES not defined in chconf.h"
+#define CH_CFG_USE_PIPES FALSE /* temporary */
+#endif
+
+/* Objects factory options checks.*/
+#if !defined(CH_CFG_USE_FACTORY)
+#error "CH_CFG_USE_FACTORY not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
+#error "CH_CFG_FACTORY_MAX_NAMES_LENGTH not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
+#error "CH_CFG_FACTORY_OBJECTS_REGISTRY not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
+#error "CH_CFG_FACTORY_GENERIC_BUFFERS not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_FACTORY_SEMAPHORES)
+#error "CH_CFG_FACTORY_SEMAPHORES not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_FACTORY_MAILBOXES)
+#error "CH_CFG_FACTORY_MAILBOXES not defined in chconf.h"
+#endif
+
+#if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
+#error "CH_CFG_FACTORY_OBJ_FIFOS not defined in chconf.h"
+#endif
+
/* License checks.*/
#if !defined(CH_CUSTOMER_LIC_LIB) || !defined(CH_LICENSE_FEATURES)
#error "malformed chlicense.h"
@@ -108,7 +163,7 @@ #define CH_CFG_USE_FACTORY FALSE
-#endif /* (CH_CUSTOMER_LIC_LIB == FALSE) || \
+#endif /* (CH_CUSTOMER_LIC_LIB == FALSE) ||
(CH_LICENSE_FEATURES == CH_FEATURES_INTERMEDIATE) ||
(CH_LICENSE_FEATURES == CH_FEATURES_BASIC) */
@@ -129,67 +184,9 @@ #define CH_CFG_USE_OBJ_FIFOS FALSE
#define CH_CFG_USE_PIPES FALSE
-#endif /* (CH_CUSTOMER_LIC_LIB == FALSE) || \
+#endif /* (CH_CUSTOMER_LIC_LIB == FALSE) ||
(CH_LICENSE_FEATURES == CH_FEATURES_BASIC) */
-/* Configuration file checks.*/
-#if !defined(CH_CFG_USE_SEMAPHORES)
-#error "CH_CFG_USE_SEMAPHORES not defined in chconf.h"
-#endif
-
-#if !defined(CH_CFG_USE_MAILBOXES)
-#error "CH_CFG_USE_MAILBOXES not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_USE_MEMCORE)
-#error "CH_CFG_USE_MEMCORE not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_USE_HEAP)
-#error "CH_CFG_USE_HEAP not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_USE_MEMPOOLS)
-#error "CH_CFG_USE_MEMPOOLS not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_USE_OBJ_FIFOS)
-#error "CH_CFG_USE_OBJ_FIFOS not defined in chlibconf.h"
-#endif
-
-//#if !defined(CH_CFG_USE_PIPES)
-//#error "CH_CFG_USE_PIPES not defined in chlibconf.h"
-//#endif
-
-/* Objects factory options checks.*/
-#if !defined(CH_CFG_USE_FACTORY)
-#error "CH_CFG_USE_FACTORY not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
-#error "CH_CFG_FACTORY_MAX_NAMES_LENGTH not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
-#error "CH_CFG_FACTORY_OBJECTS_REGISTRY not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
-#error "CH_CFG_FACTORY_GENERIC_BUFFERS not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_FACTORY_SEMAPHORES)
-#error "CH_CFG_FACTORY_SEMAPHORES not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_FACTORY_MAILBOXES)
-#error "CH_CFG_FACTORY_MAILBOXES not defined in chlibconf.h"
-#endif
-
-#if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
-#error "CH_CFG_FACTORY_OBJ_FIFOS not defined in chlibconf.h"
-#endif
-
/*===========================================================================*/
/* Module data structures and types. */
/*===========================================================================*/
@@ -213,7 +210,7 @@ #include "chmemheaps.h"
#include "chmempools.h"
#include "chobjfifos.h"
-//#include "chpipes.h"
+#include "chpipes.h"
#include "chfactory.h"
#endif /* CHLIB_H */
diff --git a/os/lib/include/chpipes.h b/os/lib/include/chpipes.h index c66c48d68..a09b3c72a 100644 --- a/os/lib/include/chpipes.h +++ b/os/lib/include/chpipes.h @@ -56,7 +56,7 @@ typedef struct { after the buffer. */ uint8_t *wrptr; /**< @brief Write pointer. */ uint8_t *rdptr; /**< @brief Read pointer. */ - size_t cnt; /**< @brief Messages in queue. */ + size_t cnt; /**< @brief Bytes in the pipe. */ bool reset; /**< @brief True if in reset state. */ threads_queue_t qw; /**< @brief Queued writers. */ threads_queue_t qr; /**< @brief Queued readers. */ @@ -145,9 +145,9 @@ extern "C" { * @param[in] pp the pointer to an initialized @p pipe_t object * @return The size of the pipe. * - * @iclass + * @api */ -static inline size_t chPipeGetSizeI(const pipe_t *pp) { +static inline size_t chPipeGetSize(const pipe_t *pp) { /*lint -save -e9033 [10.8] Perfectly safe pointers arithmetic.*/ @@ -161,11 +161,9 @@ static inline size_t chPipeGetSizeI(const pipe_t *pp) { * @param[in] pp the pointer to an initialized @p pipe_t object * @return The number of queued bytes. * - * @iclass + * @api */ -static inline size_t chPipeGetUsedCountI(const pipe_t *pp) { - - chDbgCheckClassI(); +static inline size_t chPipeGetUsedCount(const pipe_t *pp) { return pp->cnt; } @@ -176,13 +174,11 @@ static inline size_t chPipeGetUsedCountI(const pipe_t *pp) { * @param[in] pp the pointer to an initialized @p pipe_t object * @return The number of empty byte slots. * - * @iclass + * @api */ -static inline size_t chPipeGetFreeCountI(const pipe_t *pp) { - - chDbgCheckClassI(); +static inline size_t chPipeGetFreeCount(const pipe_t *pp) { - return chPipeGetSizeI(pp) - chPipeGetUsedCountI(pp); + return chPipeGetSize(pp) - chPipeGetUsedCount(pp); } /** @@ -195,11 +191,9 @@ static inline size_t chPipeGetFreeCountI(const pipe_t *pp) { * @param[in] pp the pointer to an initialized @p pipe_t object * @return The next byte in queue. * - * @iclass + * @api */ -static inline uint8_t chPipePeekI(const pipe_t *pp) { - - chDbgCheckClassI(); +static inline uint8_t chPipePeek(const pipe_t *pp) { return *pp->rdptr; } @@ -209,9 +203,9 @@ static inline uint8_t chPipePeekI(const pipe_t *pp) { * * @param[in] pp the pointer to an initialized @p pipe_t object * - * @xclass + * @api */ -static inline void chPipeResumeX(pipe_t *pp) { +static inline void chPipeResume(pipe_t *pp) { pp->reset = false; } |