DataMuseum.dk

Presents historical artifacts from the history of:

Rational R1000/400

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

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦dd4fea9bc⟧ Ada Source

    Length: 7168 (0x1c00)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Messages, seg_0557a3

Derivation

└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000
    └─ ⟦cfc2e13cd⟧ »Space Info Vol 2« 
        └─⟦this⟧ 

E3 Source Code



with Byte_Defs;
with Bounded_String;
with Std_Types;
use Std_Types;


package Messages is

    package Bs renames Bounded_String;

    type Obj_Msg is private;

    function Create (Typ : Type_Message;
                     Msg : V_Content;
                     Source : Natural;
                     Target : Natural;
                     Order : Natural) return Obj_Msg;

    function Image (Obj : Obj_Msg) return V_Packet;

    procedure Packaging (Typ : Type_Message;
                         Content : V_Content := V_Null;
                         Source : Natural := 0;
                         Target : Natural := 0;
                         Order : Natural := 0;
                         Pack : in out V_Packet);

    procedure Unpackaging (Msg : Byte_Defs.Byte_String;
                           Nb : Positive;
                           Record_Msg : in out Obj_Msg);

    function Get_Type_Msg (From : String) return Type_Message;
    function Get_Type_Str_Msg (From : String) return String;
    function Get_Source_Id (From : String) return Natural;
    function Get_Target_Id (From : String) return Natural;
    function Get_Order_Msg (From : String) return Natural;  
    function Get_Client_Socket (From : Byte_Defs.Byte_String) return T_Socket;
    function Get_Client_Host (From : Byte_Defs.Byte_String) return T_Host_Id;
    function Get_Content_Msg (From : String) return String;

    procedure Watch_Pack (V_Str : V_Packet);

    function Get_Type_Msg (From : Obj_Msg) return Type_Message;
    function Get_Source_Id (From : Obj_Msg) return Natural;
    function Get_Target_Id (From : Obj_Msg) return Natural;
    function Get_Order_Msg (From : Obj_Msg) return Natural;
    function Get_Client_Socket (From : Obj_Msg) return T_Socket;
    function Get_Client_Host (From : Obj_Msg) return T_Host_Id;
    function Get_Content (From : Obj_Msg) return V_Content;

    procedure Put_Type_Msg (To : in out Obj_Msg; Item : Type_Message);
    procedure Put_Source_Id (To : in out Obj_Msg; Item : Natural);
    procedure Put_Target_Id (To : in out Obj_Msg; Item : Natural);
    procedure Put_Order_Msg (To : in out Obj_Msg; Item : Natural);
    procedure Put_Client_Socket (To : in out Obj_Msg; Item : T_Socket);
    procedure Put_Client_Host (To : in out Obj_Msg; Item : T_Host_Id);
    procedure Put_Content (To : in out Obj_Msg; Item : String);

private  
    type Obj_Msg is
        record  
            Type_Msg : String (1 .. Dmax) := " 1";
            Source_Id : String (1 .. Tmax) := "  0";
            Target_Id : String (1 .. Tmax) := "999";
            Msg_Order : String (1 .. Tmax) := "111";
            Socket : T_Socket := Orb_Socket;
            Name : T_Host_Id := Ficus;
            Content : V_Content :=
               V_Content (Bs.Value (S => String'(1 .. Mmax => '-'),
                                    Max_Length => Mmax));  
            Packet : V_Packet := V_Packet
                                    (Bs.Value (S => String'(1 .. Pmax => '+'),
                                               Max_Length => Pmax));
        end record;
end Messages;


E3 Meta Data

    nblk1=6
    nid=3
    hdr6=8
        [0x00] rec0=22 rec1=00 rec2=01 rec3=014
        [0x01] rec0=12 rec1=00 rec2=06 rec3=06a
        [0x02] rec0=15 rec1=00 rec2=05 rec3=004
        [0x03] rec0=05 rec1=00 rec2=04 rec3=000
        [0x04] rec0=04 rec1=00 rec2=03 rec3=000
        [0x05] rec0=04 rec1=00 rec2=03 rec3=000
    tail 0x2175fe83687bd726c7071 0x42a00088462060003
Free Block Chain:
  0x3: 0000  00 02 00 53 80 24 20 20 20 20 20 20 20 20 20 20  ┆   S $          ┆
  0x2: 0000  00 00 00 0c 80 09 74 5f 53 6f 75 72 63 65 5f 09  ┆      t_Source_ ┆