RTEMS 6.1-rc4
Loading...
Searching...
No Matches
Macros | Typedefs | Functions
coremsgimpl.h File Reference

This header file provides interfaces of the Message Queue Handler which are used by the implementation and the Application Configuration. More...

#include <rtems/score/coremsg.h>
#include <rtems/score/status.h>
#include <rtems/score/chainimpl.h>
#include <rtems/score/threaddispatch.h>
#include <rtems/score/threadqimpl.h>
#include <limits.h>
#include <string.h>

Go to the source code of this file.

Macros

#define CORE_MESSAGE_QUEUE_SEND_REQUEST   INT_MAX
 Used when appending messages onto a message queue.
 
#define CORE_MESSAGE_QUEUE_URGENT_REQUEST   INT_MIN
 Used when prepending messages onto a message queue.
 
#define _CORE_message_queue_Set_notify(the_message_queue, the_handler)    do { } while ( 0 )
 Initializes notification information.
 

Typedefs

typedef int CORE_message_queue_Submit_types
 The modes in which a message may be submitted to a message queue.
 
typedef void *(* CORE_message_queue_Allocate_buffers) (CORE_message_queue_Control *the_message_queue, size_t size, const void *arg)
 This handler shall allocate the message buffer storage area for a message queue.
 

Functions

void * _CORE_message_queue_Workspace_allocate (CORE_message_queue_Control *the_message_queue, size_t size, const void *arg)
 This handler allocates the message buffer storage area for a message queue from the RTEMS Workspace.
 
Status_Control _CORE_message_queue_Initialize (CORE_message_queue_Control *the_message_queue, CORE_message_queue_Disciplines discipline, uint32_t maximum_pending_messages, size_t maximum_message_size, CORE_message_queue_Allocate_buffers allocate_buffers, const void *arg)
 Initializes a message queue.
 
void _CORE_message_queue_Close (CORE_message_queue_Control *the_message_queue, Thread_queue_Context *queue_context)
 Closes a message queue.
 
uint32_t _CORE_message_queue_Flush (CORE_message_queue_Control *the_message_queue, Thread_queue_Context *queue_context)
 Flushes pending messages.
 
Status_Control _CORE_message_queue_Broadcast (CORE_message_queue_Control *the_message_queue, const void *buffer, size_t size, uint32_t *count, Thread_queue_Context *queue_context)
 Broadcasts a message to the message queue.
 
Status_Control _CORE_message_queue_Submit (CORE_message_queue_Control *the_message_queue, Thread_Control *executing, const void *buffer, size_t size, CORE_message_queue_Submit_types submit_type, bool wait, Thread_queue_Context *queue_context)
 Submits a message to the message queue.
 
Status_Control _CORE_message_queue_Seize (CORE_message_queue_Control *the_message_queue, Thread_Control *executing, void *buffer, size_t *size_p, bool wait, Thread_queue_Context *queue_context)
 Seizes a message from the message queue.
 
void _CORE_message_queue_Insert_message (CORE_message_queue_Control *the_message_queue, CORE_message_queue_Buffer *the_message, const void *content_source, size_t content_size, CORE_message_queue_Submit_types submit_type)
 Inserts a message into the message queue.
 

Detailed Description

This header file provides interfaces of the Message Queue Handler which are used by the implementation and the Application Configuration.