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

⟦b1f62a219⟧ TextFile

    Length: 2517 (0x9d5)
    Types: TextFile
    Names: »V«

Derivation

└─⟦516dceb10⟧ Bits:30000751 8mm tape, Rational 1000, RCI_VADS
    └─ ⟦9a14c9417⟧ »DATA« 
        └─⟦this⟧ 

TextFile

-- Copyright 1988 Verdix Corporation

------------------------------------------------------------------------------
-- User interface to the RTS time subprograms
------------------------------------------------------------------------------
WITH V_I_Types;
PACKAGE V_I_Time IS

   PRAGMA Suppress (All_Checks);
   PRAGMA Suppress (Exception_Tables);
   PRAGMA Not_Elaborated;

   SUBTYPE Day_T IS V_I_Types.Day_T;

   --------------------------------------------------------------------------
   -- Sets the current time for the RTS time procedures. Note, if
   -- the calendar package is used, then its set_time procedure must
   -- be called.
   --
   -- Note: the time of entries on the delay queue are moved forward/backward
   -- by (set_time - current_time). This is no problem for the delta
   -- delays (ADA delay statement or delay_for subprogram). However,
   -- delays till an absolute time (delay_until subprogram) will be
   -- incorrect.
   --------------------------------------------------------------------------
   PROCEDURE Set_Time (Day : Day_T; Sec : Duration);

   --------------------------------------------------------------------------
   -- Returns current time, whereby, duration_time is normalized to be
   -- less than the duration for a day (86400.0), ie. day is incremented by
   -- one every 24 hours.
   --------------------------------------------------------------------------
   PROCEDURE Current_Time (Day : OUT Day_T; Sec : OUT Duration);

   --------------------------------------------------------------------------
   -- This returns after delaying for at least the amount of time
   -- specified by 'delay_duration'. This procedure is automatically invoked
   -- by ADA delay statement.
   --------------------------------------------------------------------------
   PROCEDURE Delay_For (Sec : Duration);

   --------------------------------------------------------------------------
   -- This delays until an absolute time in the future.
   --------------------------------------------------------------------------
   PROCEDURE Delay_Until (Day : Day_T; Sec : Duration);

PRIVATE
   PRAGMA Interface (Ada, Set_Time);
   PRAGMA Interface_Name (Set_Time, "TS_SET_TIME");
   PRAGMA Interface (Ada, Current_Time);
   PRAGMA Interface_Name (Current_Time, "TS_CURRENT_TIME");
   PRAGMA Interface (Ada, Delay_For);
   PRAGMA Interface_Name (Delay_For, "TS_DELAY");
   PRAGMA Interface (Ada, Delay_Until);
   PRAGMA Interface_Name (Delay_Until, "TS_DELAY_UNTIL");
END V_I_Time;