3 package Simulator
.Controller
is
4 pragma Remote_Call_Interface
;
6 type Pool_Access
is access all Simulator
.Pool_Type
'Class;
7 type Race_Access
is access all Simulator
.Remote_Race
'Class;
8 type Monitor_Access
is access all Simulator
.Monitor_Pool_Type
'Class;
10 type RaceId_T
is new Positive range 1 .. 1;
12 -- a remote access-to-class-wide type used to construct
13 --+ dynamically-bound dispatching calls (which are all those
14 --+ that have a controlling parameter of a type in the derivation
15 --+ hierarchy of this type)
16 pragma Asynchronous
(Pool_Access
);
17 pragma Asynchronous
(Race_Access
);
18 --+ when we apply pragma Asynchronous to Pool_Access
19 --+ all subprograms that dispatch on Pool_Type'Class and have only
20 --+ 'in'-mode parameters become asynchronous RPC
22 -- a dynamically-bound dispatching subprogram
39 function SetStop
(i
: Boolean) return Boolean;
41 -- Funzioni di registrazione Monitor
42 function RegisterMonitor
43 (Monitor
: Monitor_Access
)
46 function UnregisterMonitor
47 (Monitor
: Monitor_Access
)
53 function GetMonitor
(MonitorId
: Positive)
54 return Monitor_Access
;
56 end Simulator
.Controller
;