DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400 Tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about Rational R1000/400 Tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ T V

⟦96a9224de⟧ TextFile

    Length: 1425 (0x591)
    Types: TextFile
    Names: »V«

Derivation

└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11
    └─ ⟦129cab021⟧ »DATA« 
        └─⟦this⟧ 

TextFile

package Sensor is

    type Classes is (Normal, With_Speed, Calibrating);
    type Time is delta 2.0 range 0.0 .. 100.0;
    type Object (Class : Classes := Normal) is private;

    function Value (A_Sensor : Sensor.Object) return Integer;  
    function Duration (A_Sensor : Sensor.Object) return Time;
    procedure Calibrate (A_Sensor : in out Sensor.Object;
                         Max : Integer := 100;
                         Min : Integer := 0;
                         Gain : Integer := 1);
    procedure Print (A_Sensor : Sensor.Object);  
    procedure Set (A_Sensor : in out Sensor.Object; The_Value : Integer);
    procedure Set (A_Sensor : in out Sensor.Object;
                   The_Value : Integer;
                   The_Time : Time);

private
    type Object (Class : Classes := Normal) is
        record  
            Current_Value : Integer;
            case Class is
                when Normal =>
                    null;  
                when With_Speed | Calibrating =>  
                    Action_Duration : Time;
                    case Class is
                        when Normal | With_Speed =>
                            null;
                        when Calibrating =>  
                            Max : Integer;
                            Min : Integer;
                            Gain : Integer;  
                    end case;
            end case;
        end record;
end Sensor;