1 ------------------------------------------------------------------------------
3 -- GNAT RUN-TIME LIBRARY (GNARL) COMPONENTS --
5 -- SYSTEM.INTERRUPT_MANAGEMENT.OPERATIONS --
9 -- Copyright (C) 1992-2005, Free Software Foundation, Inc. --
11 -- GNARL is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 2, or (at your option) any later ver- --
14 -- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
15 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
16 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
17 -- for more details. You should have received a copy of the GNU General --
18 -- Public License distributed with GNARL; see file COPYING. If not, write --
19 -- to the Free Software Foundation, 51 Franklin Street, Fifth Floor, --
20 -- Boston, MA 02110-1301, USA. --
22 -- As a special exception, if other files instantiate generics from this --
23 -- unit, or you link this unit with other files to produce an executable, --
24 -- this unit does not by itself cause the resulting executable to be --
25 -- covered by the GNU General Public License. This exception does not --
26 -- however invalidate any other reasons why the executable file might be --
27 -- covered by the GNU Public License. --
29 -- GNARL was developed by the GNARL team at Florida State University. --
30 -- Extensive contributions were provided by Ada Core Technologies, Inc. --
32 ------------------------------------------------------------------------------
34 -- This is a NO tasking version of this package
36 package body System
.Interrupt_Management
.Operations
is
38 -- Turn off warnings since many unused formals
40 pragma Warnings
(Off
);
42 ----------------------------
43 -- Thread_Block_Interrupt --
44 ----------------------------
46 procedure Thread_Block_Interrupt
47 (Interrupt
: Interrupt_ID
)
51 end Thread_Block_Interrupt
;
53 ------------------------------
54 -- Thread_Unblock_Interrupt --
55 ------------------------------
57 procedure Thread_Unblock_Interrupt
58 (Interrupt
: Interrupt_ID
)
62 end Thread_Unblock_Interrupt
;
64 ------------------------
65 -- Set_Interrupt_Mask --
66 ------------------------
68 procedure Set_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
71 end Set_Interrupt_Mask
;
73 procedure Set_Interrupt_Mask
74 (Mask
: access Interrupt_Mask
;
75 OMask
: access Interrupt_Mask
) is
78 end Set_Interrupt_Mask
;
80 ------------------------
81 -- Get_Interrupt_Mask --
82 ------------------------
84 procedure Get_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
87 end Get_Interrupt_Mask
;
93 function Interrupt_Wait
94 (Mask
: access Interrupt_Mask
)
101 ----------------------------
102 -- Install_Default_Action --
103 ----------------------------
105 procedure Install_Default_Action
(Interrupt
: Interrupt_ID
) is
108 end Install_Default_Action
;
110 ---------------------------
111 -- Install_Ignore_Action --
112 ---------------------------
114 procedure Install_Ignore_Action
(Interrupt
: Interrupt_ID
) is
117 end Install_Ignore_Action
;
119 -------------------------
120 -- Fill_Interrupt_Mask --
121 -------------------------
123 procedure Fill_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
126 end Fill_Interrupt_Mask
;
128 --------------------------
129 -- Empty_Interrupt_Mask --
130 --------------------------
132 procedure Empty_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
135 end Empty_Interrupt_Mask
;
137 -----------------------
138 -- Add_To_Sigal_Mask --
139 -----------------------
141 procedure Add_To_Interrupt_Mask
142 (Mask
: access Interrupt_Mask
;
143 Interrupt
: Interrupt_ID
)
147 end Add_To_Interrupt_Mask
;
149 --------------------------------
150 -- Delete_From_Interrupt_Mask --
151 --------------------------------
153 procedure Delete_From_Interrupt_Mask
154 (Mask
: access Interrupt_Mask
;
155 Interrupt
: Interrupt_ID
)
159 end Delete_From_Interrupt_Mask
;
166 (Mask
: access Interrupt_Mask
;
167 Interrupt
: Interrupt_ID
) return Boolean
173 -------------------------
174 -- Copy_Interrupt_Mask --
175 -------------------------
177 procedure Copy_Interrupt_Mask
178 (X
: out Interrupt_Mask
;
183 end Copy_Interrupt_Mask
;
185 -------------------------
186 -- Interrupt_Self_Process --
187 -------------------------
189 procedure Interrupt_Self_Process
(Interrupt
: Interrupt_ID
) is
192 end Interrupt_Self_Process
;
194 --------------------------
195 -- Setup_Interrupt_Mask --
196 --------------------------
198 procedure Setup_Interrupt_Mask
is
201 end Setup_Interrupt_Mask
;
203 end System
.Interrupt_Management
.Operations
;