http://www.adaconcept.com/programs/orokles/utemezo.adb
-- Rotter Gyorgy
-- Ebben a programunkban az objektum orientalt programozassal kezdunk ismerkedni.
with Ada.Text_IO;
with Idozito.Muvelet_Idozito; -- Emlekezteto, ha egy csomagot with-elunk a szulo csomagot is with -eljuk vele egyutt!
procedure utemezo is
-- vegyuk eszre, hogy tulajdonkeppen ket szalon fut a programunk.
-- Az "egyik szal az, ahol az ido telik (operacios rendszer), a masik szal pedig az altalunk irt program"
Visszaszamlalo : Idozito.Idozito_Tipus;
begin
Ada.Text_IO.Put_Line("Program indul");
Idozito.Inicializal(Visszaszamlalo);
while not Idozito.Lejart(Visszaszamlalo) loop
Idozito.Start(Visszaszamlalo, 2.0); -- nem a ciklus elott inditottuk el a Visszaszamlalo -t
Ada.Text_IO.Put_Line("Ezek a sorok varakozas kozben irodnak ki az elso ciklusban.");
Idozito.Frissit(Visszaszamlalo);
end loop;
declare
Kiiras_Idozito : Idozito.Muvelet_Idozito.Muvelet_Idozito_Tipus;
procedure Kiir is
begin
Ada.Text_IO.Put_Line("Kiiras_Idozito lejart.");
end Kiir;
Kiiras : constant Idozito.Muvelet_Idozito.Muvelet_Mutato_Tipus := Kiir'Unrestricted_Access;
begin
Idozito.Inicializal(Visszaszamlalo);
Idozito.Start(Visszaszamlalo, 4.0);
Idozito.Muvelet_Idozito.Inicializal(Kiiras_Idozito);
Idozito.Muvelet_Idozito.Muvelet_Beallitas(Kiiras_Idozito, Kiiras);
Idozito.Muvelet_Idozito.Start(Kiiras_Idozito, 2.0); -- figyeljuk meg, hogy a Idozito.Muvelet_Idozito csomagban nincsen delkaralva Start nevu eljaras.
while not Idozito.Lejart(Visszaszamlalo) loop
Ada.Text_IO.Put_Line("Ezek a sorok varakozas kozben irodnak ki a masodik ciklusban.");
Idozito.Muvelet_Idozito.Vegrehajt(Kiiras_Idozito);
Idozito.Muvelet_Idozito.Frissit(Kiiras_Idozito); -- figyeljuk meg, hogy a Idozito.Muvelet_Idozito csomagban nincsen delkaralva Frissit nevu eljaras.
Idozito.Frissit(Visszaszamlalo);
end loop;
end;
Ada.Text_IO.Put_Line("Program vege");
end utemezo;