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 - metrics - download
Index: B T

⟦d5e0a2597⟧ TextFile

    Length: 3445 (0xd75)
    Types: TextFile
    Names: »B«

Derivation

└─⟦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⟧ 

TextFile

separate (Tracker.Report_Generator)
procedure All_Elmnt_Status_Rep is
    ----------------------------------------------------------------------
    --|  NAME:  ALL_ELMNT_STATUS_REP
    --|
    --|  OVERVIEW:
    --|    This report lists all of the element data, including the total
    --|    original size, the total current size, and the average complexity.
    --|
    --|  EXCEPTIONS HANDLED:
    --|    others   an error message is printed and execution continues
    --|
    --|  HISTORY:
    --|    written by   Bonnie Burkhardt   March 1985
    ----------------------------------------------------------------------

    use Ac_List_Pkg;
    use El_List_Pkg;

    Dashes : String (1 .. 15) := (others => '-');
    Header1 : String (1 .. 132) := (others => ' ');
    Header2 : String (1 .. 132) := (others => ' ');
    Header_Lines : String (1 .. 132) := (others => ' ');

    Ac_Index : Integer := 0;
    Ac_Ptr : Activity_Pointer;
    End_List : Boolean := False;
    Ele_Count : Integer := 0;
    Ele_Ptr : Element_Pointer;
    Line_Count : Integer := 0;
    Title : constant String := "ALL ELEMENT STATUS REPORT";
    Tot_Currnt : Integer range 0 .. 9_999_999 := 0;
    Tot_Eq_New : Integer range 0 .. 9_999_999 := 0;
    Tot_Orig : Integer range 0 .. 9_999_999 := 0;
    Tot_Cpxy : Float := 0.0;

    procedure Init_El_Headers is separate;
    procedure Print_El is separate;

begin
    Init_El_Headers;

    Start_Page (Title, "", Header1, Header2, Header_Lines);
    Start_Walk (El_List);

    Walk_Elements:
        loop
            Walk (El_List, Ele_Ptr, End_List);

            if End_List then
                -- end of list, write out totals
                if (Ele_Count > 0) then
                    Set_Col (Report_File, 90);
                    Put (Report_File, Header_Lines (90 .. 132));
                    New_Line (Report_File);
                    Set_Col (Report_File, 74);
                    Put (Report_File, "TOTALS");
                    Set_Col (Report_File, 90);
                    Put (Report_File, Tot_Orig, 7);
                    Set_Col (Report_File, 99);
                    Put (Report_File, Tot_Currnt, 7);
                    Set_Col (Report_File, 108);
                    Put (Report_File, Tot_Eq_New, 7);

                    if Ele_Count > 0 then
                        Set_Col (Report_File, 127);
                        Put (Report_File,
                             Tot_Cpxy / Float (Ele_Count), 2, 3, 0);
                    end if;

                    New_Line (Report_File);
                end if;

                exit Walk_Elements;
            end if;

            -- update running totals
            Ele_Count := Ele_Count + 1;
            Tot_Currnt := Tot_Currnt + Ele_Ptr.Current_Size;
            Tot_Eq_New := Tot_Eq_New - Ele_Ptr.Size_Done_At_Start +
                             Ele_Ptr.Current_Size;
            Tot_Orig := Tot_Orig + Ele_Ptr.Original_Size;
            Tot_Cpxy := Tot_Cpxy + Ele_Ptr.Complexity;

            Print_El;

            -- check to see if another page is needed
            Line_Count := Line_Count + 1;

            if Line_Count >= Max_Data_Lines - 2 then
                Start_Page (Title, "", Header1, Header2, Header_Lines);
                Line_Count := 0;
            end if;
        end loop Walk_Elements;
exception
    when others =>
        Put_Line ("exception raised in ALL ELEMENT STATUS REPORT");
end All_Elmnt_Status_Rep;