# mission1.adb

    --
    -- Ce programme effectue un tour de piste
    -- en utilisant l'acteur Simulation
    --

    with Simulation ;

    procedure Mission1 is

       package S renames Simulation ;

       -- Cette action déplace l'avion du point K au début de la piste
       procedure Rouler_KA is
       begin
          -- On observe un magnifique bloc séquence.

          S.Attendre_Autorisation_Roulage ;
          S.Rouler_Vers (Dest => 'L') ;
          S.Rouler_Vers (Dest => 'M') ;

          -- Facultatif :
          --S.Rouler_Vers (Dest => 'H') ;
          --S.Rouler_Vers (Dest => 'G') ;
          --S.Rouler_Vers (Dest => 'F') ;

          S.Rouler_Vers (Dest => 'E') ;
          S.Rouler_Vers (Dest => 'A') ;
       end Rouler_KA ;

       -- Cette action déplace l'avion de la fin de la piste au point K
       procedure Rouler_DK is
       begin
          S.Rouler_Vers (Dest => 'N') ;
          S.Rouler_Vers (Dest => 'P') ;

          --S.Rouler_Vers (Dest => 'R') ;
          --S.Rouler_Vers (Dest => 'S') ;
          --S.Rouler_Vers (Dest => 'T') ;

          S.Rouler_Vers (Dest => 'M') ;
          S.Rouler_Vers (Dest => 'L') ;
          S.Rouler_Vers (Dest => 'K') ;
       end Rouler_DK ;

       procedure Tester_Roulage is
       begin
          -- Aller en début de piste
          Rouler_KA ;

          -- Parcourir la piste
          S.Attendre_Autorisation_Decollage ;
          S.Parcourir_Piste ;

          -- Retour au bercail
          Rouler_DK ;
       end Tester_Roulage ;

    begin
       --
       -- Le programme Mission1 commence l'exécution ici
       -- Le corps de Mission1 est un simple appel de procédure (un bloc)
       --

       Tester_Roulage ;

    end Mission1 ;