|
DataMuseum.dkPresents historical artifacts from the history of: Rational R1000/400 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Rational R1000/400 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 10240 (0x2800) Types: Ada Source Notes: 03_class, FILE, R1k_Segment, e3_tag, package Xlbt_Image3, seg_004fc9
└─⟦8527c1e9b⟧ Bits:30000544 8mm tape, Rational 1000, Arrival backup of disks in PAM's R1000 └─⟦cfc2e13cd⟧ »Space Info Vol 2« └─⟦this⟧
with Unchecked_Deallocation; with Xlbt_Arithmetic; use Xlbt_Arithmetic; with Xlbt_Color; use Xlbt_Color; with Xlbt_Proc_Var; use Xlbt_Proc_Var; package Xlbt_Image3 is ------------------------------------------------------------------------------ -- X Library Image - Full Interface -- -- Xlbt_Image3 - Screen/Window Images ------------------------------------------------------------------------------ -- Copyright 1989 - 1991 by Rational, Santa Clara, California. -- Copyright 1987 - 1989 by Digital Equipment Corporation, Maynard, Mass. -- Copyright 1987 - 1989 by Massachusetts Institute of Technology, -- Cambridge, Massachusetts. -- -- 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 Digital, MIT, or Rational -- not be used in advertising or publicity pertaining to distribution of -- the software without specific, written prior permission. -- -- Digital, MIT, and Rational disclaim all warranties with regard to this -- software, including all implied warranties of merchantability and fitness, -- in no event shall Digital, 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 ------------------------------------------------------------------------------ -- X_Byte_Bit_Order ------------------------------------------------------------------------------ type X_Byte_Bit_Order is (Lsb_First, Msb_First); --/ if Length_Clauses then for X_Byte_Bit_Order'Size use 8; --/ end if; None_X_Byte_Bit_Order : constant X_Byte_Bit_Order := X_Byte_Bit_Order'Val (0); ------------------------------------------------------------------------------ -- X_Image_Format ------------------------------------------------------------------------------ type X_Image_Format is (X_Y_Bitmap, -- depth 1, X_Y_Format X_Y_Pixmap, -- depth == drawable depth Z_Pixmap); -- depth == drawable depth --/ if Length_Clauses then for X_Image_Format'Size use 8; --/ end if; None_X_Image_Format : constant X_Image_Format := X_Image_Format'Val (0); ------------------------------------------------------------------------------ -- X_Pixmap_Format_Values ------------------------------------------------------------------------------ type X_Pixmap_Format_Values is record Depth : U_Char := 0; Bits_Per_Pixel : U_Char := 0; Scan_Line_Pad : U_Char := 0; end record; type X_Pixmap_Format_Values_Array is array (S_Natural range <>) of X_Pixmap_Format_Values; type X_Pixmap_Format_Values_List is access X_Pixmap_Format_Values_Array; --/ if Pack then --// pragma Pack (X_Pixmap_Format_Values_Array); --/ end if; --/ if Enable_Deallocation then pragma Enable_Deallocation (X_Pixmap_Format_Values_List); --/ end if; None_X_Pixmap_Format_Values : constant X_Pixmap_Format_Values := (0, 0, 0); None_X_Pixmap_Format_Values_List : constant X_Pixmap_Format_Values_List := null; procedure Free_X_Pixmap_Format_Values_List is new Unchecked_Deallocation (X_Pixmap_Format_Values_Array, X_Pixmap_Format_Values_List); ------------------------------------------------------------------------------ -- X_Image_Funcs ------------------------------------------------------------------------------ type X_Image_Funcs is record Create_Image : X_Procedure_Variable; ----X_Create_Image.Pv; Destroy_Image : X_Procedure_Variable; ----X_Destroy_Image.Pv; Get_Pixel : X_Procedure_Variable; ----X_Get_Pixel.Pv; Put_Pixel : X_Procedure_Variable; ----X_Put_Pixel.Pv; Sub_Image : X_Procedure_Variable; ----X_Sub_Image.Pv; Add_Pixel : X_Procedure_Variable; ----X_Add_Pixel.Pv; end record; ------------------------------------------------------------------------------ -- X_Image - Image data structure - used by image manipulation routines. ------------------------------------------------------------------------------ type X_Image_Rec is record Width : U_Short := 0; ----Size of image Height : U_Short := 0; ----Size of image X_Offset : S_Short := 0; ----# of pixels offset in X direction Format : X_Image_Format := None_X_Image_Format; ----X_Y_Bitmap, X_Y_Pixmap, Z_Pixmap Data : U_Char_List := None_U_Char_List; ----Pointer to image data Data_Is_Shared : Boolean := False; ----True if data is not freed when X_Image_Rec is freed. Byte_Order : X_Byte_Bit_Order := None_X_Byte_Bit_Order; ----Data byte order, Lsb_First, Msb_First Bitmap_Unit : U_Char := 0; ----Quantity of scanline 8, 16, 32 Bitmap_Bit_Order : X_Byte_Bit_Order := None_X_Byte_Bit_Order; ----Lsb_First, Msb_First Bitmap_Pad : U_Char := 0; ----8, 16, 32 either XY or Z_Pixmap Depth : U_Char := 0; ----Depth of image Bytes_Per_Line : U_Short := 0; ----Accelerator to next line Bits_Per_Pixel : U_Char := 0; ----Bits per pixel (Z_Pixmap) Red_Mask : X_Red_Color_Mask := None_X_Color_Mask; ----Bits in z arrangement Green_Mask : X_Green_Color_Mask := None_X_Color_Mask; ----Bits in z arrangement Blue_Mask : X_Blue_Color_Mask := None_X_Color_Mask; ----Bits in z arrangement Obdata : U_Char_List := None_U_Char_List; ----Hook for object routines to hang on F : X_Image_Funcs; ----Image manipulation routines end record; type X_Image is access X_Image_Rec; --/ if Enable_Deallocation then pragma Enable_Deallocation (X_Image); --/ end if; None_X_Image : constant X_Image := null; procedure Free_X_Image (Image : in out X_Image); end Xlbt_Image3;
nblk1=9 nid=0 hdr6=12 [0x00] rec0=1b rec1=00 rec2=01 rec3=036 [0x01] rec0=11 rec1=00 rec2=02 rec3=060 [0x02] rec0=1c rec1=00 rec2=03 rec3=04a [0x03] rec0=1b rec1=00 rec2=04 rec3=036 [0x04] rec0=00 rec1=00 rec2=09 rec3=016 [0x05] rec0=18 rec1=00 rec2=05 rec3=082 [0x06] rec0=17 rec1=00 rec2=06 rec3=032 [0x07] rec0=1b rec1=00 rec2=07 rec3=034 [0x08] rec0=03 rec1=00 rec2=08 rec3=000 tail 0x2170074ce819784628bd9 0x42a00088462063203