Warning, /cpukit/include/adainclude/rtems-tasks.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-2008.
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.Tasks is
0042
0043 subtype Priority is RTEMS.Unsigned32;
0044
0045 Current_Priority : constant Priority := 0;
0046 No_Priority : constant Priority := 0;
0047
0048 subtype Argument is RTEMS.Unsigned32;
0049 type Argument_PTR is access all Argument;
0050
0051 type Entry_Point is access procedure (
0052 Argument : RTEMS.Unsigned32
0053 );
0054 pragma Convention (C, Entry_Point);
0055
0056
0057 --
0058 -- Task Manager
0059 --
0060
0061 procedure Create (
0062 Name : in RTEMS.Name;
0063 Initial_Priority : in Priority;
0064 Stack_Size : in RTEMS.Size;
0065 Initial_Modes : in RTEMS.Mode;
0066 Attribute_Set : in RTEMS.Attribute;
0067 ID : out RTEMS.ID;
0068 Result : out RTEMS.Status_Codes
0069 );
0070
0071 procedure Ident (
0072 Name : in RTEMS.Name;
0073 Node : in RTEMS.Node;
0074 ID : out RTEMS.ID;
0075 Result : out RTEMS.Status_Codes
0076 );
0077
0078 procedure Start (
0079 ID : in RTEMS.ID;
0080 Entry_Point : in RTEMS.Tasks.Entry_Point;
0081 Argument : in RTEMS.Tasks.Argument;
0082 Result : out RTEMS.Status_Codes
0083 );
0084
0085 procedure Restart (
0086 ID : in RTEMS.ID;
0087 Argument : in RTEMS.Tasks.Argument;
0088 Result : out RTEMS.Status_Codes
0089 );
0090
0091 procedure Delete (
0092 ID : in RTEMS.ID;
0093 Result : out RTEMS.Status_Codes
0094 );
0095
0096 procedure Suspend (
0097 ID : in RTEMS.ID;
0098 Result : out RTEMS.Status_Codes
0099 );
0100
0101 procedure Resume (
0102 ID : in RTEMS.ID;
0103 Result : out RTEMS.Status_Codes
0104 );
0105
0106 procedure Is_Suspended (
0107 ID : in RTEMS.ID;
0108 Result : out RTEMS.Status_Codes
0109 );
0110
0111 procedure Set_Priority (
0112 ID : in RTEMS.ID;
0113 New_Priority : in Priority;
0114 Old_Priority : out Priority;
0115 Result : out RTEMS.Status_Codes
0116 );
0117
0118 procedure Mode (
0119 Mode_Set : in RTEMS.Mode;
0120 Mask : in RTEMS.Mode;
0121 Previous_Mode_Set : out RTEMS.Mode;
0122 Result : out RTEMS.Status_Codes
0123 );
0124
0125 procedure Wake_When (
0126 Time_Buffer : in RTEMS.Time_Of_Day;
0127 Result : out RTEMS.Status_Codes
0128 );
0129
0130 procedure Wake_After (
0131 Ticks : in RTEMS.Interval;
0132 Result : out RTEMS.Status_Codes
0133 );
0134
0135 end RTEMS.Tasks;
0136