[BACK]Return to driver_for_criterion.adb CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Stalift

File: [local] / OpenXM_contrib / PHC / Ada / Root_Counts / Stalift / driver_for_criterion.adb (download)

Revision 1.1.1.1 (vendor branch), Sun Oct 29 17:45:29 2000 UTC (23 years, 7 months ago) by maekawa
Branch: PHC, MAIN
CVS Tags: v2, maekawa-ipv6, RELEASE_1_2_3, RELEASE_1_2_2_KNOPPIX_b, RELEASE_1_2_2_KNOPPIX, RELEASE_1_2_2, RELEASE_1_2_1, HEAD
Changes since 1.1: +0 -0 lines

Import the second public release of PHCpack.

OKed by Jan Verschelde.

with Communications_with_User;           use Communications_with_User;
with Drivers_for_Vertex_Points;          use Drivers_for_Vertex_Points;
with Drivers_for_Mixed_Contributions;    use Drivers_for_Mixed_Contributions;

procedure Driver_for_Criterion
             ( file : in file_type; points : in out Array_of_Lists ) is

  function Menu_for_Criterion return character is

  -- DESCRIPTION :
  --   Shows the menu for computing the set of essential points.

    ans : character;

  begin
    new_line;
    put_line("MENU for sweeping out non-contributing points :");
    put_line("  0. no computation of vertex points.");
    put_line("  1. elimination of non-vertex points");
    put_line("  2. apply simple criterion once");
    put_line("  3. exhaustive sweep through supports");
    put("Make your choice : "); Ask_Alternative(ans,"0123");
    return ans;
  end Menu_for_Criterion;

  procedure Dispatch_Criterion ( choice : character ) is

  -- DESCRIPTION :
  --   Dispatches the selected choice.

    nred : natural := 0;

  begin
    if choice /= '0'
     then Vertex_Points(file,points);
          case choice is
            when '2' => Once_Simple_Sweep(file,points,nred);
            when '3' => Full_Simple_Sweep(file,points,nred);
            when others => null;
          end case;
    end if;
  end Dispatch_Criterion;

  procedure Driver is

    choice : character := Menu_for_Criterion;

  begin
    Dispatch_Criterion(choice);
  end Driver;

begin
  Driver;
end Driver_for_Criterion;