Information Library for Solaris 2.6 (SPARC Platform Edition)

Graphics

The Solaris VISUALTM software includes several graphics and multimedia software foundation libraries. Foundation libraries are the lowest-level device-independent layer of the Solaris software. This level of interface is designed to support a wide variety of common functions. You can build higher-level libraries on top of the foundation libraries, or the foundation libraries can be used directly by a software application. These foundation libraries create applications that incorporate 2-D and 3-D graphics, imaging, and digital video. The libraries are the XGL graphics library (which serves as a foundation library for the Solaris PEX software) and XIL imaging library.

PEX 3.0.2 Runtime Environment

The Solaris PEX 3.0.2 RTE consists of a PEX client-side runtime library (PEXlib) and a PEX server-extension shared-object file (Solaris PEX server). PEXlib is an API to PEX protocol as Xlib is to core X protocol. PEXlib provides application portability across hardware platforms and enables 3-D graphics rendering on local and remote displays. The OpenWindows Version 3.6 X11 server automatically loads the PEX shared-object extension when it receives a PEX request from a PEX client.

The PEXlib implementation for the Solaris 2.6 release is based on PEXlib - Specification and C Language Binding: Version 5.1, available from the Massachusetts Institution of Technology. The PEX server extension is based on PEX Protocol Specification, Version 5.1.

Solaris PEX 3.0.2 RTE is included in the Solaris 2.6 release and should be installed if you are planning to

To install PEX, choose the entire distribution software group when installing the Solaris 2.6 software.

For more information on PEX, see:

Also, the following books are available at bookstores:

XGL 3.3 Runtime Environment

The XGL library is a 2-D and 3-D immediate-mode API that provides application portability across hardware platforms and enables graphics applications to get optimal performance from graphics accelerators. The XGL version 3.3 library enables applications to determine transparency support level and includes a new attribute to enable user control over edge offset.

The XGL 3.3 runtime environment (RTE) is included with the Solaris 2.6 release and should be installed if users at your site are running graphics applications. It is not always obvious whether an application requires the XGL RTE; therefore, you should install the XGL RTE if you are installing CDE or OpenWindows software, since an application may reference the XGL libraries.

For more information on XGL, see XGL Programmer's Guide or XGL Reference Manual.

XIL 1.3 Runtime Environment

The XIL library is an imaging API that provides a basic set of functions for imaging and video applications. The library provides a strategy for low-level software interfaces (foundation libraries) and enables APIs and API developers to port their code to these foundation libraries.

The XIL 1.3 runtime environment (RTE) is included with the Solaris 2.6 release and should be installed if users at your site are running imaging applications. It is not always obvious whether an application requires the XIL RTE; therefore, you should install the XIL RTE if you are installing either OpenWindows or CDE software, since an application may reference the XIL libraries.

Backward Compatibility

The XIL 1.3 library API is fully backwards compatible. This means that existing applications can be run without modification or recompilation.

MT-Hot

The XIL 1.3 library is MT-hot. Developers can write multithreaded applications without putting locks around XIL functions. Multiple threads from the API will execute correctly as long as they do not require data from the same image. The library itself also is MT-hot. It takes advantage of multiprocessor systems without applications having to be rewritten.

Tiled Storage

The XIL 1.3 library stores very large images in buffers of memory called tiles. If a region of an image within a tile boundary is needed, only that tile is loaded into memory, thereby increasing performance.

The library also includes a new storage object, which supports conventional contiguous storage as well as tiled or stripped storage for XIL images. The storage object serves as a container for the image's attributes, such as its scanline and pixel stride, and its data pointer. Storage is not allocated for the image until you export the image and modify it directly. This saves on memory use.

New Data Type

The XIL 1.3 library now supports the 32-bit single-precision, IEEE floating-point data type. Using this data type enables you to develop highly sophisticated scientific imaging applications.

Temporary Images

The XIL 1.3 library supports temporary images, which are images used as an intermediate step in creating a subsequent image. They may only be written to, and read from, once. Temporary images are particularly advantageous for large images, because XIL can release the storage associated with them when it's no longer needed.

XIL_GENERAL Storage Format

The XIL 1.3 library supports the new XIL_GENERAL() storage format. This format provides the flexibility of specifying each band of a multiband image as a separate memory buffer. Furthermore, each band can have its own scanline and pixel stride.

XIL_BAND_SEQUENTIAL Storage Format

The XIL 1.3 library now supports the XIL_BAND_SEQUENTIAL format for all data types, not just XIL_BIT images.

KCMS Integration

The XIL 1.3 library includes Kodak Color Management System (KCMS) support. You can achieve very close color matching between a display image and the actual stored image.

KCMS Multithreaded Programming

The Kodak Color Management System (KCMS) software product is a color management solution that ensures color consistency from input devices to output devices. It is technology licensed from Eastman Kodak that was developed in conjunction with SunSoft.

KCMS now supports multithreaded programs: it is multithread safe (MT-safe). If your KCMS application uses multithread capabilities, you do not need to put locks around KCMS library calls.

For more information, see KCMS Application Developer's Guide.

X11R6 Base Window System

The X11R6 Base Windowing System includes the latest fixes and patches from the X Consortium.

For more information, see the X/Open web site at http://www.xopen.org.

X11 Double Buffer Extension

The Double Buffer Extension (DBE) provides a standard way to use double-buffering within the framework of the X Window System. Double-buffering uses two buffers, called "front" and "back," that hold images. The front buffer is visible to the user; the back buffer is not. A detailed specification is available via an internet browser in ftp://ftp.x.org/pub/DOCS/DBE/.

For more information, see the X/Open web site at http://www.xopen.org.