DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 Tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - downloadIndex: ┃ T V ┃
Length: 1425 (0x591) Types: TextFile Names: »V«
└─⟦a7d1ea751⟧ Bits:30000550 8mm tape, Rational 1000, !users!projects 94_04_11 └─ ⟦129cab021⟧ »DATA« └─⟦this⟧
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;