WE310F5  39.00.000
m2mb_os_q.h File Reference

OS queue prototypes. More...

Go to the source code of this file.

#define M2MB_OS_Q_INVALID   0
 
#define M2MB_OS_Q_INVALID_ATTR   0
 
#define M2MB_OS_Q_TX_PRIORITIZE   1
 
#define WORD32_FOR_MSG(type)   ( ( sizeof( type ) % 4 ) == 0 ? sizeof( type ) / 4 : sizeof( type ) / 4 + 1 )
 
#define BYTES_FOR_MSG(type)   ( 4 * WORD32_FOR_MSG( type ) )
 
#define m2mb_os_q_setAttrItem_(h, args, ...)   m2mb_os_q_setAttrItem( h, CMDS_ARGS( args ) )
 
enum  M2MB_OS_Q_SEL_CMD_E {
  M2MB_OS_Q_SEL_CMD_CREATE_ATTR,
  M2MB_OS_Q_SEL_CMD_DEL_ATTR,
  M2MB_OS_Q_SEL_CMD_NAME,
  M2MB_OS_Q_SEL_CMD_USRNAME,
  M2MB_OS_Q_SEL_CMD_MSG_SIZE,
  M2MB_OS_Q_SEL_CMD_QSTART,
  M2MB_OS_Q_SEL_CMD_QSIZE,
  M2MB_OS_Q_SEL_CMD_SUSPENDED_COUNT,
  M2MB_OS_Q_SEL_CMD_1ST_SUSP,
  M2MB_OS_Q_SEL_CMD_ENQUEUED,
  M2MB_OS_Q_SEL_CMD_QROOM,
  M2MB_OS_Q_SEL_CMD_END
}
 
typedef struct M2MB_OS_Q_HANDLE_TAG * M2MB_OS_Q_HANDLE
 
typedef struct M2MB_OS_Q_ATTR_HANDLE_TAG * M2MB_OS_Q_ATTR_HANDLE
 
M2MB_OS_RESULT_E m2mb_os_q_init (M2MB_OS_Q_HANDLE *pQHandle, M2MB_OS_Q_ATTR_HANDLE *pQAttrHandle)
 Message Queue creation. More...
 
M2MB_OS_RESULT_E m2mb_os_q_deinit (M2MB_OS_Q_HANDLE qHandle)
 Message Queue Deinit or Deletion. More...
 
M2MB_OS_RESULT_E m2mb_os_q_rx (M2MB_OS_Q_HANDLE qHandle, void *pDest, UINT32 timeoutTicks)
 Receive message from the queue. More...
 
M2MB_OS_RESULT_E m2mb_os_q_tx (M2MB_OS_Q_HANDLE qHandle, void *pSource, UINT32 timeoutTicks, UINT8 priority)
 Send message to the queue. More...
 
M2MB_OS_RESULT_E m2mb_os_q_hptf (M2MB_OS_Q_HANDLE queueHandle)
 Prioritize queue suspension list Set HPTF: Highest Priority Task First to receive the message from queue (one shot) More...
 
M2MB_OS_RESULT_E m2mb_os_q_clear (M2MB_OS_Q_HANDLE qHandle)
 Clear all messages from the queue. More...
 
M2MB_OS_RESULT_E m2mb_os_q_setAttrItem (M2MB_OS_Q_ATTR_HANDLE *pQAttrHandle, UINT8 nCmds,...)
 Set specific attribute for queue creation. More...
 
M2MB_OS_RESULT_E m2mb_os_q_getItem (M2MB_OS_Q_HANDLE qHandle, M2MB_OS_Q_SEL_CMD_E selCmd, MEM_W *pOut, void *pIn)
 Get specific properties of the queue. More...
 
M2MB_OS_RESULT_E m2mb_os_q_setItem (M2MB_OS_Q_HANDLE qHandle, M2MB_OS_Q_SEL_CMD_E selCmd, void *pIn)
 Set specific properties of the queue. More...
 

Detailed Description

OS queue prototypes.

we866e4/epl/inc/rtos/m2mb_os_q.h

Basic functions for OS queue are provided

Note
Dependencies:
"#include m2mb_types.h"
"#include m2mb_os_types.h"
Author
Alessandro Papagno
Date
03/03/2017

Definition in file m2mb_os_q.h.