Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XovIntro(3X11) — Kubota Pacific 4.1 System Software

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XovInitExtension(3X11)

XovListClasses(3X11)

XovListInvisiblePixels(3X11)

XovIntro(3X11)  —   (X Window System Extensions)

NAME

XovIntro − introduction to Stardent overlay planes extension

SYNOPSIS

#include <X11/XOverlay.h>
Status XovInitExtension(display)
Display ∗display;
XovClassMap ∗XovListClasses(display, return_numbers_of_classes_per_screen)
Display∗display;
int∗∗return_numbers_of_classes_per_screen;
unsigned int ∗XovListInvisiblePixels(display, visual, return_numbers_of_pixels)
Display∗display;
Visual∗visual;
int∗return_numbers_of_pixels;

DESCRIPTION

All Stardent Graphics Supercomputers, both 16-plane and 32-plane models, have four overlay planes.  When an invisibility value is stored in these planes of a pixel, underlying graphics in the normal graphics planes of that pixel are visible.  Otherwise, the data in the four overlay planes is used to index into a separate color table, which determines the color to be displayed in that pixel. 

Two of the four planes are reserved for cursor drawing.  This leaves two planes available for X client graphics.  See XovListInvisiblePixels(3X11) to determine which pixel value(s) is reserved for the invisibility value. 

X PROTOCOL EXTENSION IMPLEMENTATION

The Stardent X Window System defines a two visual class types, OverlayType and StaticOverlayType.  These visuals have the same semantics as PseudoColor and StaticColor, except for one distinguishing characteristic:

Windows of overlay visual classes do not cause clipping, or generate exposures when subsequently unmapped, of graphics for windows of the non-overlay visual classes which they directly obscure.

EXAMPLE

Suppose window A is a non-overlay window, and windows B and C are overlay windows, with B partially obscuring A, and C partially obscuring both A and B, and windows A, B, and C are at the top of the window stacking order. In this case, B is clipped to C, but A is unclipped by both B and C.  When B and C are unmapped, graphics drawn into A become visible automatically, with no redrawing required. 

The definition of the C language constants for OverlayType and StaticOverlayType are in the <X11/extensions/XovProto.h> include file.  All normal Xlib requests for windows of overlay visual class types will work in the same ways as those for windows of other visual types. 

USES OF THE OVERLAY VISUALS

The following sections outline possible applications of the Stardent overlay extension. 

Sketch Graphics

Applications sometimes display images that are costly to generate, in terms of processor time (e.g 24-bit, TrueColor images).  Using an overlay window, an application can draw and erase the temporary image without having to regenerate the expensive image.  The programmer creates two windows with the same screen coordinates.  The first window, of visual class TrueColor or PseudoColor, contains the expensive-to-generate image.  The second window, of an overlay visual class, is mapped directly on top of the first window. 

When originally mapped, the overlay window should have a background of None (or alternatively have its background pixel value set to an invisible pixel value), in order to guarantee that the underlying graphics are visible.  Later, after sketch graphics have been drawn into the overlay window, the sketch graphics can be cleared by filling the area to be cleared with foreground pixels with the invisibility value. 

Popup Graphics

Direct-manipulation user interface designs often call for popup menus or dialogue boxes, which appear on top of normal output graphics.  Windows of an overlay visual class can be used to implement such popup windows. This eliminates the need to redraw the underlying graphics when the popup windows are unmapped. 

SEE ALSO

XovInitExtension(3X11), XovListClasses(3X11), XovListInvisiblePixels(3X11)

FILES

/usr/include/X11/extensions/XovProto.h

March 13, 1992

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026