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

⟦e2672a5e8⟧ Ada Source

    Length: 10240 (0x2800)
    Types: Ada Source
    Notes: 03_class, FILE, R1k_Segment, e3_tag, package Xlbip_Internal, seg_004f22

Derivation

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

E3 Source Code



with Xlbt_Arithmetic;  
use Xlbt_Arithmetic;  
with Xlbt_Basic;  
use Xlbt_Basic;  
with Xlbt_Event;  
use Xlbt_Event;  
with Xlbt_String;  
use Xlbt_String;  
with Xlbt_Visual;  
use Xlbt_Visual;

package Xlbip_Internal is
------------------------------------------------------------------------------
-- X Library Machine Independent Internal Routines
--
-- Xlbip_Internal - Internal-to-X-Library routines - not for general users
------------------------------------------------------------------------------
-- 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.
------------------------------------------------------------------------------

--\x0c
    procedure Lock_Display   (Display : X_Display);  
    procedure Unlock_Display (Display : X_Display);
------------------------------------------------------------------------------
--  Display - Specifies the display to lock or unlock
--
-- Display Mutual Exclusion - Lock/Unlock exclusive use of a Display and all of
-- its internal data structures; separate from locking of the Xlib data.
--
-- If, for this machine/OS/Ada-compiler combination, multi-task-locking is not
-- supported for Xlib then we raise X_Library_Confusion if two
-- Lock_Display calls are made in succession, two Unlock_Display calls are made
-- in succession, or if Unlock is called when the lock was not Lock'ed.
------------------------------------------------------------------------------

    procedure Report_Io_Error (Display  : X_Display;  
                               Facility : X_String);
------------------------------------------------------------------------------
-- Called when we have had an I/O error.  We convert Display.Fd_Error to a
-- string and stuff it into Display.Error and then we call the
-- X_Lib.IO_Error routine.
------------------------------------------------------------------------------

    procedure Sync_Handle (Display : X_Display);
------------------------------------------------------------------------------
-- Call the Synchandler routine associated with a display.
------------------------------------------------------------------------------

--\x0c
    function Internal_X_Alloc_Id (Display : X_Display) return X_Id;
------------------------------------------------------------------------------
-- X_Alloc_Id default procedure variable value.  Only call this routine when
-- the Display has been previously locked.
------------------------------------------------------------------------------

    procedure Internal_X_Enq (Display : X_Display;  
                              Event   : X_Event);
------------------------------------------------------------------------------
--  Display - Specifies the display where the event is to be queued
--  Event   - Specifies the event to queue
--
-- Take a newly received event and place it into the queue of the display that
-- generated it.
------------------------------------------------------------------------------

    procedure Internal_X_Flush_Last_Request (Display : X_Display);
------------------------------------------------------------------------------
-- Called to flush out the Display.Last_Request.  Some requests, e.g. Poly_Point,
-- are cumulative; successive Poly_Point requests will merge together in the
-- display buffer before being sent to the server for action.  This routine is
-- called to force any of the mergeable requests to be transmitted.
------------------------------------------------------------------------------

    procedure Internal_X_Free_Display_Structure (Display : in out X_Display);
------------------------------------------------------------------------------
-- X_Free_Display_Structure frees all the storage associated with a
-- Display.  It is used by X_Open_Display if it runs out of memory,
-- and also by X_Close_Display.   It needs to check whether all pointers
-- are non-None before dereferencing them, since it may be called
-- by X_Open_Display before the Display structure is fully formed.
-- X_Open_Display must be sure to initialize all the pointers to None
-- before the first possible call on this.
------------------------------------------------------------------------------

    function Internal_X_Screen_Of_Window (Display : X_Display;  
                                          Window  : X_Window) return X_Screen;
------------------------------------------------------------------------------
--  Called to attempt to figure out what screen a window is drawn upon.
------------------------------------------------------------------------------

    function Internal_X_Set_Last_Request_Read  
                (Display  : X_Display;  
                 Kind     : X_Event_Code;  
                 Sequence : U_Short) return S_Long;
------------------------------------------------------------------------------
-- The hard part about this is that we only get 16 bits from a reply.  Well,
-- then, we have three values that will march along, with the following
-- invariant:
--    Display.Last_Request_Read <= Reply.Sequence_Number <= Display.Request
-- The right choice for Reply.Sequence_Number is the largest that
-- still meets these constraints.
------------------------------------------------------------------------------

    procedure Internal_X_Vid_To_Visual (Display :        X_Display;  
                                        Id      :        X_Visual_Id;  
                                        Visual  : in out X_Visual;  
                                        Status  : out    X_Status);
------------------------------------------------------------------------------
-- Given a visual ID, find the X_Visual structure.  We walk over the various
-- visual info for a given display until we find the Visual whose Id matches
-- the one sent in.  This is used to translate ID's into X_Visuals when an
-- ID is returned by an incoming event.
------------------------------------------------------------------------------

end Xlbip_Internal;  

E3 Meta Data

    nblk1=9
    nid=0
    hdr6=12
        [0x00] rec0=1b rec1=00 rec2=01 rec3=06e
        [0x01] rec0=12 rec1=00 rec2=02 rec3=02c
        [0x02] rec0=00 rec1=00 rec2=09 rec3=004
        [0x03] rec0=11 rec1=00 rec2=03 rec3=088
        [0x04] rec0=14 rec1=00 rec2=04 rec3=066
        [0x05] rec0=10 rec1=00 rec2=05 rec3=046
        [0x06] rec0=11 rec1=00 rec2=06 rec3=076
        [0x07] rec0=10 rec1=00 rec2=07 rec3=044
        [0x08] rec0=05 rec1=00 rec2=08 rec3=000
    tail 0x215009580819780b4e6b6 0x42a00088462063203