|
|
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: T V
Length: 6271 (0x187f)
Types: TextFile
Names: »V«
└─⟦85b835f43⟧ Bits:30000549 8mm tape, Rational 1000, Xlib rev 6.00
└─⟦0c20f784e⟧ »DATA«
└─⟦1abbe589f⟧
└─⟦059497ac5⟧
└─⟦this⟧
with Xlbt_Arithmetic;
use Xlbt_Arithmetic;
package Xlbt_Misc is
------------------------------------------------------------------------------
-- X Library Misc Types
--
-- Xlbt_Misc - Types that used for protocol messages and other odd things.
------------------------------------------------------------------------------
-- Copyright 1989 - 1991 by Rational, Santa Clara, California.
-- Copyright 1985 - 1989 by the Massachusetts Institute of Technology
--
-- All Rights Reserved.
--
-- Permission to use, copy, modify, and distribute this software and its
-- documentation for any purpose and without fee is hereby granted,
-- provided that the above copyright notice(s) appear in all copies and that
-- both that copyright notice(s) and this permission notice appear in
-- supporting documentation, and that the names of MIT or Rational not be
-- used in advertising or publicity pertaining to distribution of the software
-- without specific, written prior permission.
--
-- MIT and Rational disclaim all warranties with regard to this software,
-- including all implied warranties of merchantability and fitness, in no
-- event shall MIT or Rational be liable for any special, indirect or
-- consequential damages or any damages whatsoever resulting from loss of use,
-- data or profits, whether in an action of contract, negligence or other
-- tortious action, arising out of or in connection with the use or performance
-- of this software.
------------------------------------------------------------------------------
--\f
------------------------------------------------------------------------------
-- 8-bit Boolean type
------------------------------------------------------------------------------
type X_Boolean_Char is (False, True);
--/ if Length_Clauses then
for X_Boolean_Char'Size use 8;
--/ end if;
function To_Boolean (B : X_Boolean_Char) return Boolean;
function From_Boolean (B : Boolean) return X_Boolean_Char;
------------------------------------------------------------------------------
-- 32-bit Boolean type
------------------------------------------------------------------------------
type X_Boolean_Long is (False, True);
--/ if Length_Clauses then
for X_Boolean_Long'Size use 32;
--/ end if;
function To_Boolean (B : X_Boolean_Long) return Boolean;
function From_Boolean (B : Boolean) return X_Boolean_Long;
------------------------------------------------------------------------------
-- Data returned on a client request.
------------------------------------------------------------------------------
type X_Client_Data_Type is array (S_Natural range 0 .. 19) of U_Char;
--/ if Length_Clauses then
for X_Client_Data_Type'Size use 20 * 8;
--/ elsif Pack then
--// pragma Pack (X_Client_Data_Type);
--/ end if;
------------------------------------------------------------------------------
----Conversion routines for those requiring access to Client_Message data under
-- its alternative interpretations. (Ada is not capable of describing this
-- record type in any sensible fashion.)
------------------------------------------------------------------------------
subtype S_Natural_0_19 is S_Natural range 0 .. 19;
subtype S_Natural_0_9 is S_Natural range 0 .. 9;
subtype S_Natural_0_4 is S_Natural range 0 .. 4;
function X_Client_Message_S_Char (Xe : X_Client_Data_Type;
Index : S_Natural_0_19) return S_Char;
----Returns the Index'th S_Char from the data field.
function X_Client_Message_S_Short (Xe : X_Client_Data_Type;
Index : S_Natural_0_9) return S_Short;
----Returns the Index'th S_Short from the data field.
function X_Client_Message_S_Long (Xe : X_Client_Data_Type;
Index : S_Natural_0_4) return S_Long;
----Returns the Index'th S_Long from the data field.
function X_Client_Message_U_Char (Xe : X_Client_Data_Type;
Index : S_Natural_0_19) return U_Char;
----Returns the Index'th U_Char from the data field.
function X_Client_Message_U_Short (Xe : X_Client_Data_Type;
Index : S_Natural_0_9) return U_Short;
----Returns the Index'th U_Short from the data field.
procedure X_Client_Message_S_Char (Xe : in out X_Client_Data_Type;
Index : S_Natural_0_19;
Data : S_Char);
----Sets the Index'th S_Char from the data field.
procedure X_Client_Message_S_Short (Xe : in out X_Client_Data_Type;
Index : S_Natural_0_9;
Data : S_Short);
----Sets the Index'th S_Short from the data field.
procedure X_Client_Message_S_Long (Xe : in out X_Client_Data_Type;
Index : S_Natural_0_4;
Data : S_Long);
----Sets the Index'th S_Long from the data field.
procedure X_Client_Message_U_Char (Xe : in out X_Client_Data_Type;
Index : S_Natural_0_19;
Data : U_Char);
----Sets the Index'th U_Char from the data field.
procedure X_Client_Message_U_Short (Xe : in out X_Client_Data_Type;
Index : S_Natural_0_9;
Data : U_Short);
----Sets the Index'th U_Short from the data field.
------------------------------------------------------------------------------
-- X_Text_Elt
------------------------------------------------------------------------------
type X_Text_Elt is
record -- followed by string
Length : U_Char; -- number of *characters* in string (1..254), or
-- FontChange (=255), or 0 if just deltaa given
Deltaa : S_Char;
end record;
--/ if Length_Clauses then
for X_Text_Elt'Size use 16;
--/ end if;
end Xlbt_Misc;