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: T V

⟦44b375d38⟧ TextFile

    Length: 1633 (0x661)
    Types: TextFile
    Names: »V«

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

with List_Generic;
with Bounded_String;
package World_Space is

    type Space_Info is private;

    subtype Volume is Natural range 1 .. 4;

    function Name_Of_World (In_Item : Space_Info) return String;
    function Size_Of_World (In_Item : Space_Info) return Long_Integer;
    function Volume_Of_World (In_Item : Space_Info) return Volume;

    type Iterator is private;

    procedure Collect_Info (On_Worlds_In : String := "!";
                            Data_File : String := "Space_Data");

    function Read_Data (From_File : String := "Space_Data") return Iterator;
    function Done (Iter : Iterator) return Boolean;
    function Value (Iter : Iterator) return Space_Info;
    procedure Next (Iter : in out Iterator);

    type Sort_Kind is (By_Volume, By_Name, By_Volume_And_Name,
                       By_Name_And_Volume);

    type Volume_Filter is array (Volume) of Boolean;
    All_Volumes : Volume_Filter := (others => True);

    procedure Report (From_File : String := "Space_Data";
                      Include_Worlds_On : Volume_Filter :=
                         World_Space.All_Volumes;
                      Sort_By : Sort_Kind := World_Space.By_Volume;
                      Output : String := "");

private  
    Max_Name_Length : constant Positive := 256;
    package Bs renames Bounded_String;

    type Space_Info is
        record
            Name : Bs.Variable_String (Max_Name_Length);
            Size_In_Pages : Long_Integer;
            Volume_Id : Volume;
        end record;

    package Space_List is new List_Generic (Space_Info);
    type Iterator is new Space_List.List;

end World_Space;