msg.h File Reference

Messaging API for inter process communication. More...

Detailed Description

#include <stdint.h>
#include <stdbool.h>
#include "kernel_types.h"
+ Include dependency graph for msg.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  msg_t
 Describes a message object which can be sent between threads. More...
 

Macros

#define KERNEL_PID_ISR   (KERNEL_PID_LAST + 1)
 Value of msg_t::sender_pid if the sender was an interrupt service routine.
 

Functions

int msg_send (msg_t *m, kernel_pid_t target_pid)
 Send a message (blocking). More...
 
int msg_try_send (msg_t *m, kernel_pid_t target_pid)
 Send a message (non-blocking). More...
 
int msg_send_to_self (msg_t *m)
 Send a message to the current thread. More...
 
int msg_send_int (msg_t *m, kernel_pid_t target_pid)
 Send message from interrupt. More...
 
static int msg_sent_by_int (const msg_t *m)
 Test if the message was sent inside an ISR. More...
 
int msg_receive (msg_t *m)
 Receive a message. More...
 
int msg_try_receive (msg_t *m)
 Try to receive a message. More...
 
int msg_send_receive (msg_t *m, msg_t *reply, kernel_pid_t target_pid)
 Send a message, block until reply received. More...
 
int msg_reply (msg_t *m, msg_t *reply)
 Replies to a message. More...
 
int msg_reply_int (msg_t *m, msg_t *reply)
 Replies to a message from interrupt. More...
 
int msg_avail (void)
 Check how many messages are available in the message queue. More...
 
void msg_init_queue (msg_t *array, int num)
 Initialize the current thread's message queue. More...
 
void msg_queue_print (void)
 Prints the message queue of the current thread.