File : showh.adb


with Reps, Messages, Fouriers_Init;
use Reps, Messages, Fouriers_Init;
with Intervals, Intervals.Ops, Intervals.IO;
use Intervals, Intervals.Ops, Intervals.IO;
with Fouriers, Fouriers.IO;

procedure ShowH is

  subtype Scalar is Interval;

  Lmax: constant Positive := 60;
  Wmax: constant Positive := 50;
  Pdeg: constant Positive := 22;
  Dho:  constant Natural  :=  8;

  package Scal_Fou is new Fouriers (Lmax => Lmax, Wmax => Wmax, Pdeg => Pdeg, Dho => Dho, Scalar => Scalar);
  package Scal_Fou_IO is new Scal_Fou.IO;
  use Scal_Fou, Scal_Fou_IO;

  Cut: Rep;
  Itype: String(1 .. 3);
  Iname: String(1 .. 100);
  H: Fourier;
  I,J: Integer;

begin
  PromptString("file name: ",Iname,I);
  PromptString("data type (Dec/Hex): ",Itype,J);
  J := PromptInteger("parity (0/1): ");
  Cut := PromptRep("Cutoff = ");
  Show("");
  Show("");

  Read(Iname(1 .. I),J,(Two,One),H,Itype(1)='D');

  Show("");
  Show(H,Cut);
  Show("");
end ShowH;