Warning, /cpukit/include/adainclude/rtems-message_queue.ads is written in an unsupported language. File is not indexed.
0001 -- SPDX-License-Identifier: BSD-2-Clause
0002
0003 --
0004 -- RTEMS / Specification
0005 --
0006 -- DESCRIPTION:
0007 --
0008 -- This package provides the interface to the RTEMS API.
0009 --
0010 -- DEPENDENCIES:
0011 --
0012 -- NOTES:
0013 -- RTEMS initialization and configuration are called from
0014 -- the BSP side, therefore should never be called from ADA.
0015 --
0016 -- COPYRIGHT (c) 1997-2011.
0017 -- On-Line Applications Research Corporation (OAR).
0018 --
0019 -- Redistribution and use in source and binary forms, with or without
0020 -- modification, are permitted provided that the following conditions
0021 -- are met:
0022 -- 1. Redistributions of source code must retain the above copyright
0023 -- notice, this list of conditions and the following disclaimer.
0024 -- 2. Redistributions in binary form must reproduce the above copyright
0025 -- notice, this list of conditions and the following disclaimer in the
0026 -- documentation and/or other materials provided with the distribution.
0027 --
0028 -- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
0029 -- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
0030 -- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
0031 -- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
0032 -- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
0033 -- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
0034 -- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
0035 -- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
0036 -- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
0037 -- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
0038 -- POSSIBILITY OF SUCH DAMAGE.
0039 --
0040
0041 package RTEMS.Message_Queue is
0042
0043 --
0044 -- Message Queue Manager
0045 --
0046
0047 procedure Create (
0048 Name : in RTEMS.Name;
0049 Count : in RTEMS.Unsigned32;
0050 Max_Message_Size : in RTEMS.Size;
0051 Attribute_Set : in RTEMS.Attribute;
0052 ID : out RTEMS.ID;
0053 Result : out RTEMS.Status_Codes
0054 );
0055
0056 procedure Ident (
0057 Name : in RTEMS.Name;
0058 Node : in RTEMS.Unsigned32;
0059 ID : out RTEMS.ID;
0060 Result : out RTEMS.Status_Codes
0061 );
0062
0063 procedure Delete (
0064 ID : in RTEMS.ID;
0065 Result : out RTEMS.Status_Codes
0066 );
0067
0068 procedure Send (
0069 ID : in RTEMS.ID;
0070 Buffer : in RTEMS.Address;
0071 Size : in RTEMS.Size;
0072 Result : out RTEMS.Status_Codes
0073 );
0074
0075 procedure Urgent (
0076 ID : in RTEMS.ID;
0077 Buffer : in RTEMS.Address;
0078 Size : in RTEMS.Size;
0079 Result : out RTEMS.Status_Codes
0080 );
0081
0082 procedure Broadcast (
0083 ID : in RTEMS.ID;
0084 Buffer : in RTEMS.Address;
0085 Size : in RTEMS.Size;
0086 Count : out RTEMS.Unsigned32;
0087 Result : out RTEMS.Status_Codes
0088 );
0089
0090 procedure Receive (
0091 ID : in RTEMS.ID;
0092 Buffer : in RTEMS.Address;
0093 Option_Set : in RTEMS.Option;
0094 Timeout : in RTEMS.Interval;
0095 Size : in out RTEMS.Size;
0096 Result : out RTEMS.Status_Codes
0097 );
0098
0099 procedure Get_Number_Pending (
0100 ID : in RTEMS.ID;
0101 Count : out RTEMS.Unsigned32;
0102 Result : out RTEMS.Status_Codes
0103 );
0104
0105 procedure Flush (
0106 ID : in RTEMS.ID;
0107 Count : out RTEMS.Unsigned32;
0108 Result : out RTEMS.Status_Codes
0109 );
0110
0111 end RTEMS.Message_Queue;
0112