|
|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1920 (0x780)
Types: TextFile
Notes: R1k Text-file segment
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
└─⟦cfc2e13cd⟧ »Space Info Vol 2«
└─⟦504ef8b50⟧
└─⟦this⟧
with Text_Io;
package body Feu_Rouge is
F1 : Objet;
procedure Demarrer (F : in Objet) is
begin
F.Feu.Demarre;
end Demarrer;
procedure Arreter (F : in Objet) is
begin
F.Feu.Arrete;
end Arreter;
procedure Changer_Tempo (F : in Objet;
Tr : in Duration;
To : in Duration;
Tv : in Duration) is
begin
F.Feu.Changt_Tempo (Tr, To, Tv);
end Changer_Tempo;
task body Feu_Type is
Marche : Boolean := False;
Duree_Vert : Duration := 1.0;
Duree_Orange : Duration := 1.0;
Duree_Rouge : Duration := 1.0;
begin
while not (Marche) loop --boucle d'attente de mise en marche
accept Demarre do
Marche := True;
Text_Io.Put_Line ("demarrage du feu");
end Demarre;
end loop;
while Marche loop --boucle du cycle du feu en marche
Text_Io.Put_Line ("je suis vert");
delay Duree_Vert;
Text_Io.Put_Line ("je suis orange");
delay Duree_Orange;
Text_Io.Put_Line ("je suis rouge");
delay Duree_Rouge;
select
accept Changt_Tempo (Tr : in Duration;
To : in Duration;
Tv : in Duration) do
Duree_Vert := Tv;
Duree_Orange := To;
Duree_Rouge := Tr;
Text_Io.Put_Line ("rdv de chgt");
end Changt_Tempo;
or
accept Arrete do
Marche := False;
Text_Io.Put_Line ("rdv d'arret");
end Arrete;
or
delay 1.0;
end select;
end loop;
end Feu_Type;
end Feu_Rouge