1 ------------------------------------------------------------------------------
3 -- GNAT 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 -- Copyright (C) 1992-2005 Free Software Foundation, Inc. --
12 -- GNARL is free software; you can redistribute it and/or modify it under --
13 -- terms of the GNU General Public License as published by the Free Soft- --
14 -- ware Foundation; either version 2, or (at your option) any later ver- --
15 -- sion. GNARL is distributed in the hope that it will be useful, but WITH- --
16 -- OUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY --
17 -- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License --
18 -- for more details. You should have received a copy of the GNU General --
19 -- Public License distributed with GNARL; see file COPYING. If not, write --
20 -- to the Free Software Foundation, 51 Franklin Street, Fifth Floor, --
21 -- Boston, MA 02110-1301, USA. --
23 -- As a special exception, if other files instantiate generics from this --
24 -- unit, or you link this unit with other files to produce an executable, --
25 -- this unit does not by itself cause the resulting executable to be --
26 -- covered by the GNU General Public License. This exception does not --
27 -- however invalidate any other reasons why the executable file might be --
28 -- covered by the GNU Public License. --
30 -- GNARL was developed by the GNARL team at Florida State University. --
31 -- Extensive contributions were provided by Ada Core Technologies, Inc. --
33 ------------------------------------------------------------------------------
35 -- This is a NO tasking version of this package
37 package body System
.Interrupt_Management
.Operations
is
39 -- Turn off warnings since many unused formals
41 pragma Warnings
(Off
);
43 ----------------------------
44 -- Thread_Block_Interrupt --
45 ----------------------------
47 procedure Thread_Block_Interrupt
48 (Interrupt
: Interrupt_ID
)
52 end Thread_Block_Interrupt
;
54 ------------------------------
55 -- Thread_Unblock_Interrupt --
56 ------------------------------
58 procedure Thread_Unblock_Interrupt
59 (Interrupt
: Interrupt_ID
)
63 end Thread_Unblock_Interrupt
;
65 ------------------------
66 -- Set_Interrupt_Mask --
67 ------------------------
69 procedure Set_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
72 end Set_Interrupt_Mask
;
74 procedure Set_Interrupt_Mask
75 (Mask
: access Interrupt_Mask
;
76 OMask
: access Interrupt_Mask
) is
79 end Set_Interrupt_Mask
;
81 ------------------------
82 -- Get_Interrupt_Mask --
83 ------------------------
85 procedure Get_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
88 end Get_Interrupt_Mask
;
94 function Interrupt_Wait
95 (Mask
: access Interrupt_Mask
)
102 ----------------------------
103 -- Install_Default_Action --
104 ----------------------------
106 procedure Install_Default_Action
(Interrupt
: Interrupt_ID
) is
109 end Install_Default_Action
;
111 ---------------------------
112 -- Install_Ignore_Action --
113 ---------------------------
115 procedure Install_Ignore_Action
(Interrupt
: Interrupt_ID
) is
118 end Install_Ignore_Action
;
120 -------------------------
121 -- Fill_Interrupt_Mask --
122 -------------------------
124 procedure Fill_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
127 end Fill_Interrupt_Mask
;
129 --------------------------
130 -- Empty_Interrupt_Mask --
131 --------------------------
133 procedure Empty_Interrupt_Mask
(Mask
: access Interrupt_Mask
) is
136 end Empty_Interrupt_Mask
;
138 -----------------------
139 -- Add_To_Sigal_Mask --
140 -----------------------
142 procedure Add_To_Interrupt_Mask
143 (Mask
: access Interrupt_Mask
;
144 Interrupt
: Interrupt_ID
)
148 end Add_To_Interrupt_Mask
;
150 --------------------------------
151 -- Delete_From_Interrupt_Mask --
152 --------------------------------
154 procedure Delete_From_Interrupt_Mask
155 (Mask
: access Interrupt_Mask
;
156 Interrupt
: Interrupt_ID
)
160 end Delete_From_Interrupt_Mask
;
167 (Mask
: access Interrupt_Mask
;
168 Interrupt
: Interrupt_ID
) return Boolean
174 -------------------------
175 -- Copy_Interrupt_Mask --
176 -------------------------
178 procedure Copy_Interrupt_Mask
179 (X
: out Interrupt_Mask
;
184 end Copy_Interrupt_Mask
;
186 -------------------------
187 -- Interrupt_Self_Process --
188 -------------------------
190 procedure Interrupt_Self_Process
(Interrupt
: Interrupt_ID
) is
193 end Interrupt_Self_Process
;
195 --------------------------
196 -- Setup_Interrupt_Mask --
197 --------------------------
199 procedure Setup_Interrupt_Mask
is
202 end Setup_Interrupt_Mask
;
204 end System
.Interrupt_Management
.Operations
;