home *** CD-ROM | disk | FTP | other *** search
/ Programmer's ROM - The Computer Language Library / programmersrom.iso / ada / piwg / z000013.ada < prev    next >
Encoding:
Text File  |  1988-05-03  |  7.9 KB  |  355 lines

  1. with PHYSICAL_UNITS_ELECTRICAL ; use PHYSICAL_UNITS_ELECTRICAL ;
  2.  
  3. package PHYSICAL_UNITS_OUTPUT_ELECTRICAL is
  4.  
  5. -- This package specification defines a simple PUT for Ada types for physical
  6. -- quantities of electrical units.
  7. --
  8. -- Notice that there is not a procedure PUT defined for LENGTH_METER
  9. -- or for that matter, any " subtype " defined in the package PHYSICAL_UNITS.
  10. -- It is unnecessary and happens to be illegal ada.
  11.  
  12.   procedure PUT ( ITEM : CURRENT_AMPERE ) ;
  13.  
  14.   procedure PUT ( ITEM : CURRENT_MILLIAMPERE ) ;
  15.  
  16.   procedure PUT ( ITEM : CURRENT_MICROAMPERE ) ;
  17.  
  18.   procedure PUT ( ITEM : CURRENT_ABAMPERE ) ;
  19.  
  20.   procedure PUT ( ITEM : CURRENT_STATAMPERE ) ;
  21.  
  22.   procedure PUT ( ITEM : VOLTAGE_VOLT ) ;
  23.  
  24.   procedure PUT ( ITEM : VOLTAGE_MILLIVOLT ) ;
  25.  
  26.   procedure PUT ( ITEM : VOLTAGE_MICROVOLT ) ;
  27.  
  28.   procedure PUT ( ITEM : VOLTAGE_KILOVOLT ) ;
  29.  
  30.   procedure PUT ( ITEM : RESISTANCE_OHM ) ;
  31.  
  32.   procedure PUT ( ITEM : RESISTANCE_MILLIOHM ) ;
  33.  
  34.   procedure PUT ( ITEM : RESISTANCE_KILOHM ) ;
  35.  
  36.   procedure PUT ( ITEM : RESISTANCE_MEGOHM ) ;
  37.  
  38.   procedure PUT ( ITEM : RESISTIVITY_OHM_METER ) ;
  39.  
  40.   procedure PUT ( ITEM : CONDUCTANCE_MHO ) ;
  41.  
  42.   procedure PUT ( ITEM : CONDUCTIVITY_MHO_PER_METER ) ;
  43.  
  44.   procedure PUT ( ITEM : CAPACITANCE_FARAD ) ;
  45.  
  46.   procedure PUT ( ITEM : CAPACITANCE_MICROFARAD ) ;
  47.  
  48.   procedure PUT ( ITEM : CAPACITANCE_PICOFARAD ) ;
  49.  
  50.   procedure PUT ( ITEM : INDUCTANCE_HENRY ) ;
  51.  
  52.   procedure PUT ( ITEM : INDUCTANCE_MILLIHENRY ) ;
  53.  
  54.   procedure PUT ( ITEM : INDUCTANCE_MICROHENRY ) ;
  55.  
  56.   procedure PUT ( ITEM : CURRENT_DENSITY_AMPERE_PER_SQUARE_METER ) ;
  57.  
  58.   procedure PUT ( ITEM : CHARGE_DENSITY_COULOMB_PER_CUBIC_METER ) ;
  59.  
  60.   procedure PUT ( ITEM : MAGNETIC_FLUX_WEBER ) ;
  61.  
  62.   procedure PUT ( ITEM : MAGNETIC_FLUX_DENSITY_TESLA ) ;
  63.  
  64.   procedure PUT ( ITEM : MAGNETIC_INTENSITY_AMPERE_PER_METER ) ;
  65.  
  66.   procedure PUT ( ITEM : MAGNETIC_VECTOR_POTENTIAL_WEBER_PER_METER ) ;
  67.  
  68.   procedure PUT ( ITEM : ELECTRIC_FIELD_INTENSITY_VOLT_PER_METER ) ;
  69.  
  70.   procedure PUT ( ITEM : ELECTRIC_DISPLACEMENT_COULOMB_PER_SQUARE_METER ) ;
  71.  
  72.   procedure PUT ( ITEM : PERMEABILITY_HENRY_PER_METER ) ;
  73.  
  74.   procedure PUT ( ITEM : PERMITTIVITY_FARAD_PER_METER ) ;
  75.  
  76.   procedure PUT ( ITEM : FREQUENCY_HERTZ ) ;
  77.  
  78.   procedure PUT ( ITEM : FREQUENCY_KILOHERTZ ) ;
  79.  
  80.   procedure PUT ( ITEM : FREQUENCY_MEGAHERTZ ) ;
  81.  
  82.   procedure PUT ( ITEM : FREQUENCY_GIGAHERTZ ) ;
  83.  
  84.   procedure PUT ( ITEM : ANGULAR_FREQUENCY_RADIAN_PER_SECOND ) ;
  85.  
  86. --
  87. end PHYSICAL_UNITS_OUTPUT_ELECTRICAL ;
  88. with PHYSICAL_REAL ; use PHYSICAL_REAL ;
  89. with TEXT_IO ; use TEXT_IO ;
  90. with FLT_IO ; use FLT_IO ;
  91.  
  92. package body PHYSICAL_UNITS_OUTPUT_ELECTRICAL is
  93.  
  94.   procedure PUT ( ITEM : CURRENT_AMPERE ) is
  95.  
  96.   begin
  97.     PUT ( UNDIMENSION( ITEM )) ;
  98.     PUT ( " ampere " ) ;
  99.   end PUT ;
  100.  
  101.   procedure PUT ( ITEM : CURRENT_MILLIAMPERE ) is
  102.  
  103.   begin
  104.     PUT ( UNDIMENSION( ITEM )) ;
  105.     PUT ( " milliampere " ) ;
  106.   end PUT ;
  107.  
  108.   procedure PUT ( ITEM : CURRENT_MICROAMPERE ) is
  109.  
  110.   begin
  111.     PUT ( UNDIMENSION( ITEM )) ;
  112.     PUT ( " microampere " ) ;
  113.   end PUT ;
  114.  
  115.   procedure PUT ( ITEM : CURRENT_ABAMPERE ) is
  116.  
  117.   begin
  118.     PUT ( UNDIMENSION( ITEM )) ;
  119.     PUT ( " abampere " ) ;
  120.   end PUT ;
  121.  
  122.   procedure PUT ( ITEM : CURRENT_STATAMPERE ) is
  123.  
  124.   begin
  125.     PUT ( UNDIMENSION( ITEM )) ;
  126.     PUT ( " statampere " ) ;
  127.   end PUT ;
  128.  
  129.   procedure PUT ( ITEM : VOLTAGE_VOLT ) is
  130.  
  131.   begin
  132.     PUT ( UNDIMENSION( ITEM )) ;
  133.     PUT ( " volt " ) ;
  134.   end PUT ;
  135.  
  136.   procedure PUT ( ITEM : VOLTAGE_MILLIVOLT ) is
  137.  
  138.   begin
  139.     PUT ( UNDIMENSION( ITEM )) ;
  140.     PUT ( " millivolt " ) ;
  141.   end PUT ;
  142.  
  143.   procedure PUT ( ITEM : VOLTAGE_MICROVOLT ) is
  144.  
  145.   begin
  146.     PUT ( UNDIMENSION( ITEM )) ;
  147.     PUT ( " microvolt " ) ;
  148.   end PUT ;
  149.  
  150.   procedure PUT ( ITEM : VOLTAGE_KILOVOLT ) is
  151.  
  152.   begin
  153.     PUT ( UNDIMENSION( ITEM )) ;
  154.     PUT ( " kilovolt " ) ;
  155.   end PUT ;
  156.  
  157.   procedure PUT ( ITEM : RESISTANCE_OHM ) is
  158.  
  159.   begin
  160.     PUT ( UNDIMENSION( ITEM )) ;
  161.     PUT ( " ohm " ) ;
  162.   end PUT ;
  163.  
  164.   procedure PUT ( ITEM : RESISTANCE_MILLIOHM ) is
  165.  
  166.   begin
  167.     PUT ( UNDIMENSION( ITEM )) ;
  168.     PUT ( " milliohm " ) ;
  169.   end PUT ;
  170.  
  171.   procedure PUT ( ITEM : RESISTANCE_KILOHM ) is
  172.  
  173.   begin
  174.     PUT ( UNDIMENSION( ITEM )) ;
  175.     PUT ( " kilohm " ) ;
  176.   end PUT ;
  177.  
  178.   procedure PUT ( ITEM : RESISTANCE_MEGOHM ) is
  179.  
  180.   begin
  181.     PUT ( UNDIMENSION( ITEM )) ;
  182.     PUT ( " megohm " ) ;
  183.   end PUT ;
  184.  
  185.   procedure PUT ( ITEM : RESISTIVITY_OHM_METER ) is
  186.  
  187.   begin
  188.     PUT ( UNDIMENSION( ITEM )) ;
  189.     PUT ( " ohm meter " ) ;
  190.   end PUT ;
  191.  
  192.   procedure PUT ( ITEM : CONDUCTANCE_MHO ) is
  193.  
  194.   begin
  195.     PUT ( UNDIMENSION( ITEM )) ;
  196.     PUT ( " mho " ) ;
  197.   end PUT ;
  198.  
  199.   procedure PUT ( ITEM : CONDUCTIVITY_MHO_PER_METER ) is
  200.  
  201.   begin
  202.     PUT ( UNDIMENSION( ITEM )) ;
  203.     PUT ( " mho per meter " ) ;
  204.   end PUT ;
  205.  
  206.   procedure PUT ( ITEM : CAPACITANCE_FARAD ) is
  207.  
  208.   begin
  209.     PUT ( UNDIMENSION( ITEM )) ;
  210.     PUT ( " farad " ) ;
  211.   end PUT ;
  212.  
  213.   procedure PUT ( ITEM : CAPACITANCE_MICROFARAD ) is
  214.  
  215.   begin
  216.     PUT ( UNDIMENSION( ITEM )) ;
  217.     PUT ( " microfarad " ) ;
  218.   end PUT ;
  219.  
  220.   procedure PUT ( ITEM : CAPACITANCE_PICOFARAD ) is
  221.  
  222.   begin
  223.     PUT ( UNDIMENSION( ITEM )) ;
  224.     PUT ( " picofarad " ) ;
  225.   end PUT ;
  226.  
  227.   procedure PUT ( ITEM : INDUCTANCE_HENRY ) is
  228.  
  229.   begin
  230.     PUT ( UNDIMENSION( ITEM )) ;
  231.     PUT ( " henry " ) ;
  232.   end PUT ;
  233.  
  234.   procedure PUT ( ITEM : INDUCTANCE_MILLIHENRY ) is
  235.  
  236.   begin
  237.     PUT ( UNDIMENSION( ITEM )) ;
  238.     PUT ( " millihenry " ) ;
  239.   end PUT ;
  240.  
  241.   procedure PUT ( ITEM : INDUCTANCE_MICROHENRY ) is
  242.  
  243.   begin
  244.     PUT ( UNDIMENSION( ITEM )) ;
  245.     PUT ( " microhenry " ) ;
  246.   end PUT ;
  247.  
  248.   procedure PUT ( ITEM : CURRENT_DENSITY_AMPERE_PER_SQUARE_METER ) is
  249.  
  250.   begin
  251.     PUT ( UNDIMENSION( ITEM )) ;
  252.     PUT ( " ampere per square meter " ) ;
  253.   end PUT ;
  254.  
  255.   procedure PUT ( ITEM : CHARGE_DENSITY_COULOMB_PER_CUBIC_METER ) is
  256.  
  257.   begin
  258.     PUT ( UNDIMENSION( ITEM )) ;
  259.     PUT ( " coulomb per cubic meter " ) ;
  260.   end PUT ;
  261.  
  262.   procedure PUT ( ITEM : MAGNETIC_FLUX_WEBER ) is
  263.  
  264.   begin
  265.     PUT ( UNDIMENSION( ITEM )) ;
  266.     PUT ( " weber " ) ;
  267.   end PUT ;
  268.  
  269.   procedure PUT ( ITEM : MAGNETIC_FLUX_DENSITY_TESLA ) is
  270.  
  271.   begin
  272.     PUT ( UNDIMENSION( ITEM )) ;
  273.     PUT ( " tesla " ) ;
  274.   end PUT ;
  275.  
  276.   procedure PUT ( ITEM : MAGNETIC_INTENSITY_AMPERE_PER_METER ) is
  277.  
  278.   begin
  279.     PUT ( UNDIMENSION( ITEM )) ;
  280.     PUT ( " ampere per meter " ) ;
  281.   end PUT ;
  282.  
  283.   procedure PUT ( ITEM : MAGNETIC_VECTOR_POTENTIAL_WEBER_PER_METER ) is
  284.  
  285.   begin
  286.     PUT ( UNDIMENSION( ITEM )) ;
  287.     PUT ( " weber per meter " ) ;
  288.   end PUT ;
  289.  
  290.   procedure PUT ( ITEM : ELECTRIC_FIELD_INTENSITY_VOLT_PER_METER ) is
  291.  
  292.   begin
  293.     PUT ( UNDIMENSION( ITEM )) ;
  294.     PUT ( " volt per meter " ) ;
  295.   end PUT ;
  296.  
  297.   procedure PUT ( ITEM : ELECTRIC_DISPLACEMENT_COULOMB_PER_SQUARE_METER ) is
  298.  
  299.   begin
  300.     PUT ( UNDIMENSION( ITEM )) ;
  301.     PUT ( " coulomb per square meter " ) ;
  302.   end PUT ;
  303.  
  304.   procedure PUT ( ITEM : PERMEABILITY_HENRY_PER_METER ) is
  305.  
  306.   begin
  307.     PUT ( UNDIMENSION( ITEM )) ;
  308.     PUT ( " henry per meter " ) ;
  309.   end PUT ;
  310.  
  311.   procedure PUT ( ITEM : PERMITTIVITY_FARAD_PER_METER ) is
  312.  
  313.   begin
  314.     PUT ( UNDIMENSION( ITEM )) ;
  315.     PUT ( " farad per meter " ) ;
  316.   end PUT ;
  317.  
  318.   procedure PUT ( ITEM : FREQUENCY_HERTZ ) is
  319.  
  320.   begin
  321.     PUT ( UNDIMENSION( ITEM )) ;
  322.     PUT ( " hertz " ) ;
  323.   end PUT ;
  324.  
  325.   procedure PUT ( ITEM : FREQUENCY_KILOHERTZ ) is
  326.  
  327.   begin
  328.     PUT ( UNDIMENSION( ITEM )) ;
  329.     PUT ( " kilohertz " ) ;
  330.   end PUT ;
  331.  
  332.   procedure PUT ( ITEM : FREQUENCY_MEGAHERTZ ) is
  333.  
  334.   begin
  335.     PUT ( UNDIMENSION( ITEM )) ;
  336.     PUT ( " megahertz " ) ;
  337.   end PUT ;
  338.  
  339.   procedure PUT ( ITEM : FREQUENCY_GIGAHERTZ ) is
  340.  
  341.   begin
  342.     PUT ( UNDIMENSION( ITEM )) ;
  343.     PUT ( " gigahertz " ) ;
  344.   end PUT ;
  345.  
  346.   procedure PUT ( ITEM : ANGULAR_FREQUENCY_RADIAN_PER_SECOND ) is
  347.  
  348.   begin
  349.     PUT ( UNDIMENSION( ITEM )) ;
  350.     PUT ( " radian per second " ) ;
  351.   end PUT ;
  352.  
  353. --
  354. end PHYSICAL_UNITS_OUTPUT_ELECTRICAL ;
  355.