|
|
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 - metrics - downloadIndex: B T
Length: 2206 (0x89e)
Types: TextFile
Names: »B«
└─⟦180fe333a⟧ Bits:30000405 8mm tape, Rational 1000, SW CATALOG, 10_20_0
└─⟦180fe333a⟧ Bits:30000537 8mm tape, Rational 1000, SW Catalog 10_20_0
└─⟦5cb1d1d7f⟧ »DATA«
└─⟦3b1ee7bd8⟧
└─⟦this⟧
separate (Tracker.Subsystem_Pkg)
procedure Ss_Set_Up is
------------------------------------------------------------------------------
--|
--| NAME: SS_SET_UP
--|
--| OVERVIEW:
--| This procedure is only called if there is an existing input file.
--| The subsystem list is set up by reading the subsystem record
--| from the input file by calling SS_READ, and adding it to the linked
--| list by calling the generic procedure ADD until there are no more
--| subsystem records.
--|
--| EXCEPTIONS HANDLED:
--| others Error reading the record from the file.
--| . This exception raises ERROR_IN_INPUT_FILE.
--|
--| HISTORY:
--| written by May Lee March 1985
--|
--| NOTES:
--| The number of subsystem records read in is determined by the
--| global variable num_of_subsystems.
--|
--| If an error is detected reading the data, the rest of the input line
--| is skipped and reading of the rest of the data continues. All errors
--| found are reported. Execution is not terminated until the entire
--| input file has been read.
--|
------------------------------------------------------------------------------
Ss_Record : Subsystem_Pointer;
Ss_Num : Integer := 1;
Bad_Data : Boolean := False;
procedure Ss_Read is separate;
begin
-- create a new subsystem, read it in, and add it to the list
for I in 1 .. Num_Of_Subsystems loop
begin
-- counter for exception
Ss_Num := I;
-- create null record
Ss_Record := new Subsystem_Type;
-- get a record of data
Ss_Read;
-- add to list
Add (Ss_List, Ss_Record.Name, Ss_Record);
exception
when others =>
Skip_Line (Tracker_File);
Put (" Error reading subsystem");
Put (Ss_Num, 1);
Put (" from the tracker file. ");
New_Line;
Bad_Data := True;
end;
end loop;
if Bad_Data then
raise Error_In_Input_File;
end if;
end Ss_Set_Up;