17 #ifndef _RTEMS_RTEMS_MESSAGEIMPL_H 18 #define _RTEMS_RTEMS_MESSAGEIMPL_H 127 #if defined(RTEMS_MULTIPROCESSING) 128 #include <rtems/rtems/msgmp.h>
Thread queue context for the thread queue methods.
Inlined Routines in the Core Message Handler.
static __inline__ void _Message_queue_Free(Message_queue_Control *the_message_queue)
Deallocates a message queue control block into the inactive chain of free message queue control block...
static __inline__ void _Thread_queue_Context_initialize(Thread_queue_Context *queue_context)
Initializes a thread queue context.
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.
Message_queue_Submit_types
rtems_status_code _Message_queue_Submit(rtems_id id, const void *buffer, size_t size, Message_queue_Submit_types submit_type)
Message_queue_Submit.
rtems_status_code _Message_queue_Create(const rtems_message_queue_config *config, rtems_id *id, CORE_message_queue_Allocate_buffers allocate_buffers)
Creates a message queue.
Objects_Control * _Objects_Allocate(Objects_Information *information)
Allocates an object.
Objects_Information _Message_queue_Information
The Classic Message Queue objects information.
Inlined Routines in the Object Handler.
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
This structure defines the configuration of a message queue constructed by rtems_message_queue_constr...
Thread_queue_Lock_context Lock_context
The lock context for the thread queue acquire and release operations.
Classic Message Queue Manager API.
Objects_Id rtems_id
Values of this type identify an RTEMS object.
Objects_Control * _Objects_Get(Objects_Id id, ISR_lock_Context *lock_context, const Objects_Information *information)
Maps the specified object identifier to the associated local object control block.
ISR_lock_Context Lock_context
The lock context for the thread queue acquire and release operations.
#define RTEMS_INLINE_ROUTINE
Gives a hint to the compiler in a function declaration to inline this function.
static __inline__ void _Objects_Free(Objects_Information *information, Objects_Control *the_object)
Frees an object.