http://www.adaconcept.com/programs/orokles/idozito-muvelet_idozito.ads
package Idozito.Muvelet_Idozito is


   type Muvelet_Mutato_Tipus is access procedure;


   Alapertelmezett_Muvelet: constant Muvelet_Mutato_Tipus;                -- kesleltetett ideju konstans


   type Muvelet_Idozito_Tipus is new Idozito_Tipus with private;          -- az oroklodes segitsegevel specializalhatunk, ezt ugy erjuk el, hogy tovabbi adatmezokkel es metodusokkal terjesztjuk ki a szuloosztalyunkat

   -- overriding                                                          -- Ada 2005 opcionalis kulcsszo forditasi ideju ellenorzeshez konzisztens hasznalataval sok hiba elkerulheto
   procedure Inicializal(Muvelet_Idozito : out Muvelet_Idozito_Tipus);    -- feluldefinialas  (figyeljuk meg, hogy megvaltoztattuk a formalis parameter nevet)


   -- not overriding
   procedure Muvelet_Beallitas(Muvelet_Idozito : in out Muvelet_Idozito_Tipus; Uj_Muvelet : Muvelet_Mutato_Tipus := Alapertelmezett_Muvelet);

   -- not overriding                                                      -- Ada 2005
   procedure Vegrehajt(Muvelet_Idozito : in out Muvelet_Idozito_Tipus);

private


   procedure Null_Eljaras;                                                -- a null procedure kesobb fontos fogalom lesz interface-eknel...

   Alapertelmezett_Muvelet : constant Muvelet_Mutato_Tipus := Null_Eljaras'Access;


   -- a Muvelet_Idozito_Tipus orokli az Idozito_Tipus metodusait, es egy uj adatmezovel boviti
   type Muvelet_Idozito_Tipus is new Idozito_Tipus with record
     Muvelet : Muvelet_Mutato_Tipus;
   end record;


end Idozito.Muvelet_Idozito;