1 ------------------------------------------------------------------------------
3 -- GNU ADA RUN-TIME LIBRARY (GNARL) COMPONENTS --
5 -- S Y S T E M . I N T E R R U P T _ M A N A G E M E N T . --
6 -- O P E R A T I O N S --
10 -- $Revision: 1.5 $ --
12 -- Copyright (C) 1992-1998 Free Software Foundation, Inc. --
14 -- GNARL is free software; you can redistribute it and/or modify it under --
15 -- terms of the GNU General Public License as published by the Free Soft- --
16 -- ware Foundation; either version 2, or (at your option) any later ver- --
17 -- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
18 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
19 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
20 -- for more details. You should have received a copy of the GNU General --
21 -- Public License distributed with GNARL; see file COPYING. If not, write --
22 -- to the Free Software Foundation, 59 Temple Place - Suite 330, Boston, --
23 -- MA 02111-1307, USA. --
25 -- As a special exception, if other files instantiate generics from this --
26 -- unit, or you link this unit with other files to produce an executable, --
27 -- this unit does not by itself cause the resulting executable to be --
28 -- covered by the GNU General Public License. This exception does not --
29 -- however invalidate any other reasons why the executable file might be --
30 -- covered by the GNU Public License. --
32 -- GNARL was developed by the GNARL team at Florida State University. It is --
33 -- now maintained by Ada Core Technologies Inc. in cooperation with Florida --
34 -- State University (http://www.gnat.com). --
36 ------------------------------------------------------------------------------
38 -- This is a NO tasking version of this package.
40 package body System
.Interrupt_Management
.Operations
is
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 end System
.Interrupt_Management
.Operations
;