RTEMS CPU Kit with SuperCore  4.11.3
message.h
Go to the documentation of this file.
1 
25 /* COPYRIGHT (c) 1989-2013.
26  * On-Line Applications Research Corporation (OAR).
27  *
28  * The license and distribution terms for this file may be
29  * found in the file LICENSE in this distribution or at
30  * http://www.rtems.org/license/LICENSE.
31  */
32 
33 #ifndef _RTEMS_RTEMS_MESSAGE_H
34 #define _RTEMS_RTEMS_MESSAGE_H
35 
36 #include <rtems/rtems/types.h>
37 #include <rtems/rtems/status.h>
38 #include <rtems/rtems/options.h>
39 #include <rtems/rtems/attr.h>
40 #include <rtems/score/object.h>
41 #include <rtems/score/coremsg.h>
42 
43 #ifdef __cplusplus
44 extern "C" {
45 #endif
46 
53 typedef struct {
61 
94  rtems_name name,
95  uint32_t count,
96  size_t max_message_size,
97  rtems_attribute attribute_set,
98  rtems_id *id
99 );
100 
120  rtems_name name,
121  uint32_t node,
122  rtems_id *id
123 );
124 
136  rtems_id id
137 );
138 
155  rtems_id id,
156  const void *buffer,
157  size_t size
158 );
159 
176  rtems_id id,
177  const void *buffer,
178  size_t size
179 );
180 
198  rtems_id id,
199  const void *buffer,
200  size_t size,
201  uint32_t *count
202 );
203 
226  rtems_id id,
227  void *buffer,
228  size_t *size,
229  rtems_option option_set,
230  rtems_interval timeout
231 );
232 
244  rtems_id id,
245  uint32_t *count
246 );
247 
259  rtems_id id,
260  uint32_t *count
261 );
262 
265 #ifdef __cplusplus
266 }
267 #endif
268 
269 #endif
270 /* end of include file */
rtems_attribute attribute_set
This field is the attribute set as defined by the API.
Definition: message.h:57
Constants and Structures Associated with the Object Handler.
rtems_status_code rtems_message_queue_create(rtems_name name, uint32_t count, size_t max_message_size, rtems_attribute attribute_set, rtems_id *id)
RTEMS Create Message Queue.
Definition: msgqcreate.c:34
uint32_t rtems_attribute
This defines the type used to contain Classic API attributes.
Definition: attr.h:44
The following defines the Object Control Block used to manage each object local to this node...
Definition: object.h:232
Objects_Id rtems_id
Used to manage and manipulate RTEMS object identifiers.
Definition: types.h:80
rtems_status_code rtems_message_queue_urgent(rtems_id id, const void *buffer, size_t size)
RTEMS Urgent Message Queue.
Definition: msgqurgent.c:39
Objects_Control Object
This field is the inherited object characteristics.
Definition: message.h:55
The following records define the control block used to manage each message queue. ...
Definition: message.h:53
Watchdog_Interval rtems_interval
Used to manage and manipulate intervals specified by clock ticks.
Definition: types.h:119
rtems_status_code
Classic API Status.
Definition: status.h:46
rtems_status_code rtems_message_queue_flush(rtems_id id, uint32_t *count)
rtems_message_queue_flush
Definition: msgqflush.c:50
uint32_t rtems_name
Classic API object name type.
Definition: types.h:74
rtems_status_code rtems_message_queue_receive(rtems_id id, void *buffer, size_t *size, rtems_option option_set, rtems_interval timeout)
RTEMS Message Queue Receive.
Definition: msgqreceive.c:33
CORE_message_queue_Control message_queue
This field is the instance of the SuperCore Message Queue.
Definition: message.h:59
uint32_t rtems_option
The following type defines the control block used to manage option sets.
Definition: options.h:45
rtems_status_code rtems_message_queue_broadcast(rtems_id id, const void *buffer, size_t size, uint32_t *count)
RTEMS Broadcast Message Queue.
Definition: msgqbroadcast.c:33
Constants and Structures Associated with the Message Queue Handler.
Control block used to manage each message queue.
Definition: coremsg.h:140
rtems_status_code rtems_message_queue_delete(rtems_id id)
RTEMS Delete Message Queue.
Definition: msgqdelete.c:33
rtems_status_code rtems_message_queue_get_number_pending(rtems_id id, uint32_t *count)
RTEMS Message Queue Get Number Pending.
Definition: msgqgetnumberpending.c:48
rtems_status_code rtems_message_queue_ident(rtems_name name, uint32_t node, rtems_id *id)
RTEMS Message Queue Name to Id.
Definition: msgqident.c:33
rtems_status_code rtems_message_queue_send(rtems_id id, const void *buffer, size_t size)
rtems_message_queue_send
Definition: msgqsend.c:56