Linux Standard Base Graphics Module Specification 2.1

Linux Standard Base Graphics Module Specification 2.1
Copyright © 2004 Free Standards Group
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".
Portions of the text are copyrighted by the following parties:
•	The Regents of the University of California
•	Free Software Foundation
•	Ian F. Darwin
•	Paul Vixie
•	BSDI (now Wind River)
•	Andrew G Morgan
•	Jean-loup Gailly and Mark Adler
•	Massachusetts Institute of Technology
These excerpts are being used in accordance with their respective licenses.
Linux is a trademark of Linus Torvalds.
UNIX a registered trademark of the Open Group in the United States and other countries.
LSB is a trademark of the Free Standards Group in the USA and other countries.
AMD is a trademark of Advanced Micro Devices, Inc.
Intel and Itanium are registered trademarks and Intel386 is a trademarks of Intel Corporation.
OpenGL is a registered trademark of Silicon Graphics, Inc.

Contents
Specification Introduction	000
Graphics Specification	000
Free Documentation License	000

Specification Introduction

Specification Introduction

Contents
Foreword	000
Introduction	000
I Introductory Elements	000
1 Scope	000
2 Normative References	000
3 Requirements	000
3.1 Relevant Libraries	000
4 Definitions	000
5 Terminology	000

List of Tables
2-1 Normative References	000
3-1 Standard Library Names	000

Foreword
This is version 2.1 of the LSB-Graphics Module Specification. This version is a preliminary version for review only. Conclusion of work on this version will result in version 1.0 of the LSB-Graphics Moudle Specification.
Implmentations may not claim conformance to this version.

Introduction
The LSB-Graphics Module defines The graphics components that are required to be present on a Linux system.
This document should be used in conjunction with the documents it references. Information referenced in this way is as much a part of this document as is the information explicitly included here.

I Introductory Elements

1 Scope
The LSB Graphics defines the graphical interface found on an LSB conforming system.

2 Normative References
The specifications listed below are referenced in whole or in part by the LSB-Graphics Module Standard. Such references may be normative or informative; a reference to specification shall only be considered normative if it is explicitly cited as such. The LSB-Graphics Module may make normative references to a portion of these specifications (that is, to define a specific function or group of functions); in such cases, only the explicitly referenced portion of the specification is to be considered normative.
Table 2-1 Normative References
Name	Title	URL	
Double Buffer Extension Library	Double Buffer Extension Library	http://www.x.org/	
OpenGL	OpenGL® Application Binary Interface for Linux	http://oss.sgi.com/projects/ogl-sample/ABI/	
The MIT Shared Memory Extension	MIT-SHM--The MIT Shared Memory Extension	http://www.x.org/	
this specification	Linux Standard Base	http://www.linuxbase.org/spec/	
X Display Power Management Signaling	X Display Power Management Signaling (DPMS) Extension, Library Specification	http://www.x.org/	
X Nonrectangular Window Shape Extension Library	X Nonrectangular Window Shape Extension Library Version 1.0	http://www.x.org/	
X Record Extension Library	X Record Extension Library	http://www.x.org/	
X Security Extension Specification	Security Extension Specification, Version 7.1	http://www.x.org/	
X Synchronization Extension Library	X Synchronization Extension Library	http://www.x.org/	
X11 C Library	X11R6.4 Xlib - C library	http://www.x.org/	
X11 Inter-Client Exchange	X11R6.4 X Inter-Client Exchange (ICE) Protocol	http://www.x.org/	
X11 Session Management	X11R6.4 X Session Management Library	http://www.x.org/	
X11 Toolkit Intrinsics	X11R6.4 X Toolkit Intrinsics	http://www.x.org/	

3 Requirements
3.1 Relevant Libraries
The libraries listed in Table 3-1 shall be available on a Linux Standard Base system, with the specified runtime names. This list may be supplemented or amended by the architecture-specific specification.
Table 3-1 Standard Library Names
Library	Runtime Name	
libX11	libX11.so.6	
libXt	libXt.so.6	
libGL	libGL.so.1	
libXext	libXext.so.6	
libICE	libICE.so.6	
libSM	libSM.so.6	

These libraries will be in an implementation-defined directory which the dynamic linker shall search by default.

4 Definitions
For the purposes of this document, the following definitions, as specified in the ISO/IEC Directives, Part 2, 2001, 4th Edition, apply:
can
 	be able to; there is a possibility of; it is possible to
cannot
 	be unable to; there is no possibilty of; it is not possible to
may
 	is permitted; is allowed; is permissible
need not
 	it is not required that; no...is required
shall
 	is to; is required to; it is required that; has to; only...is permitted; it is necessary
shall not
 	is not allowed [permitted] [acceptable] [permissible]; is required to be not; is required that...be not; is not to be
should
 	it is recommended that; ought to
should not
 	it is not recommended that; ought not to

5 Terminology
For the purposes of this document, the following terms apply:
implementation-defined
 	Describes a value or behavior that is not defined by this document but is selected by an implementor. The value or behavior may vary among implementations that conform to this document. An application should not rely on the existence of the value or behavior. An application that relies on such a value or behavior cannot be assured to be portable across conforming implementations. The implementor shall document such a value or behavior so that it can be used correctly by an application.
Shell Script
 	A file that is read by an interpreter (e.g., awk). The first line of the shell script includes a reference to its interpreter binary.
undefined
 	Describes the nature of a value or behavior not defined by this document which results from use of an invalid program construct or invalid data input. The value or behavior may vary among implementations that conform to this document. An application should not rely on the existence or validity of the value or behavior. An application that relies on any particular value or behavior cannot be assured to be portable across conforming implementations.
unspecified
 	Describes the nature of a value or behavior not specified by this document which results from use of a valid program construct or valid data input. The value or behavior may vary among implementations that conform to this document. An application should not rely on the existence or validity of the value or behavior. An application that relies on any particular value or behavior cannot be assured to be portable across conforming implementations.

Graphics Specification

Graphics Specification

Contents
I Graphic Libraries	000
1 Libraries	000
1.1 Interfaces for libX11	000
1.2 Data Definitions for libX11	000
1.3 Interface Definitions for libX11	000
1.4 Interfaces for libXext	000
1.5 Data Definitions for libXext	000
1.6 Interfaces for libSM	000
1.7 Data Definitions for libSM	000
1.8 Interfaces for libICE	000
1.9 Data Definitions for libICE	000
1.10 Interfaces for libXt	000
1.11 Data Definitions for libXt	000
1.12 Interface Definitions for libXt	000
II OpenGL Libraries	000
2 Libraries	000
2.1 Interfaces for libGL	000
2.2 Data Definitions for libGL	000
III Package Information	000
3 Package Dependencies	000
3.1 Package Dependencies	000

List of Tables
1-1 libX11 Definition	000
1-2 libX11 - X Windows System Interface Function Interfaces	000
1-3 libX11 - X Windows System Interface Data Interfaces	000
1-4 libXext Definition	000
1-5 libXext - X Shape Extension Function Interfaces	000
1-6 libXext - X Display Power Management Signaling Extension Function Interfaces	000
1-7 libXext - X Shared Memory Extensions Function Interfaces	000
1-8 libXext - X Synchronization Extension Function Interfaces	000
1-9 libXext - X Security Extension Function Interfaces	000
1-10 libXext - X Double Buffer Extension Function Interfaces	000
1-11 libSM Definition	000
1-12 libSM - Session Management Functions Function Interfaces	000
1-13 libICE Definition	000
1-14 libICE - ICE Functions Function Interfaces	000
1-15 libXt Definition	000
1-16 libXt - X Toolkit Function Interfaces	000
1-17 libXt - X Toolkit Data Interfaces	000
2-1 libGL Definition	000
2-2 libGL - GL X interface Function Interfaces	000
2-3 libGL - OpenGL Function Interfaces	000

I Graphic Libraries

1 Libraries
The X Libraries should be built thread-safe.
1.1 Interfaces for libX11
Table 1-1 defines the library name and shared object name for the libX11 library
Table 1-1 libX11 Definition
Library:	libX11	
SONAME:	libX11.so.6	

The behavior of the interfaces in this library is specified by the following specifications:
this specification	
X11 C Library	

1.1.1 X Windows System Interface
1.1.1.1 Interfaces for X Windows System Interface
An LSB conforming implementation shall provide the generic functions for X Windows System Interface specified in Table 1-2, with the full functionality as described in the referenced underlying specification.
Table 1-2 libX11 - X Windows System Interface Function Interfaces
XActivateScreenSaver [1]	XFreePixmap [1]	XSetCloseDownMode [1]	XkbAllocGeomColors [1]	
XAddConnectionWatch [1]	XFreeStringList [1]	XSetCommand [1]	XkbAllocGeomDoodads [1]	
XAddExtension [1]	XGContextFromGC [1]	XSetDashes [1]	XkbAllocGeomKeyAliases [1]	
XAddHost [1]	XGeometry [1]	XSetErrorHandler [1]	XkbAllocGeomKeys [1]	
XAddHosts [1]	XGetAtomName [1]	XSetFillRule [1]	XkbAllocGeomOutlines [1]	
XAddPixel [1]	XGetAtomNames [1]	XSetFillStyle [1]	XkbAllocGeomOverlayKeys [1]	
XAddToExtensionList [1]	XGetClassHint [1]	XSetFont [1]	XkbAllocGeomOverlayRows [1]	
XAddToSaveSet [1]	XGetCommand [1]	XSetFontPath [1]	XkbAllocGeomOverlays [1]	
XAllPlanes [1]	XGetDefault [1]	XSetForeground [1]	XkbAllocGeomPoints [1]	
XAllocClassHint [1]	XGetErrorDatabaseText [1]	XSetFunction [1]	XkbAllocGeomProps [1]	
XAllocColor [1]	XGetErrorText [1]	XSetGraphicsExposures [1]	XkbAllocGeomRows [1]	
XAllocColorCells [1]	XGetFontPath [1]	XSetICFocus [1]	XkbAllocGeomSectionDoodads [1]	
XAllocColorPlanes [1]	XGetFontProperty [1]	XSetICValues [1]	XkbAllocGeomSections [1]	
XAllocIconSize [1]	XGetGCValues [1]	XSetIMValues [1]	XkbAllocGeomShapes [1]	
XAllocNamedColor [1]	XGetGeometry [1]	XSetIOErrorHandler [1]	XkbAllocGeometry [1]	
XAllocSizeHints [1]	XGetICValues [1]	XSetIconName [1]	XkbAllocIndicatorMaps [1]	
XAllocStandardColormap [1]	XGetIMValues [1]	XSetIconSizes [1]	XkbAllocKeyboard [1]	
XAllocWMHints [1]	XGetIconName [1]	XSetInputFocus [1]	XkbAllocNames [1]	
XAllowEvents [1]	XGetIconSizes [1]	XSetLineAttributes [1]	XkbAllocServerMap [1]	
XAutoRepeatOff [1]	XGetImage [1]	XSetLocaleModifiers [1]	XkbApplyCompatMapToKey [1]	
XAutoRepeatOn [1]	XGetInputFocus [1]	XSetModifierMapping [1]	XkbBell [1]	
XBaseFontNameListOfFontSet [1]	XGetKeyboardControl [1]	XSetNormalHints [1]	XkbBellEvent [1]	
XBell [1]	XGetKeyboardMapping [1]	XSetOCValues [1]	XkbChangeEnabledControls [1]	
XBitmapBitOrder [1]	XGetModifierMapping [1]	XSetOMValues [1]	XkbChangeMap [1]	
XBitmapPad [1]	XGetMotionEvents [1]	XSetPlaneMask [1]	XkbChangeNames [1]	
XBitmapUnit [1]	XGetNormalHints [1]	XSetPointerMapping [1]	XkbChangeTypesOfKey [1]	
XBlackPixel [1]	XGetOCValues [1]	XSetRGBColormaps [1]	XkbComputeEffectiveMap [1]	
XBlackPixelOfScreen [1]	XGetOMValues [1]	XSetRegion [1]	XkbComputeRowBounds [1]	
XCellsOfScreen [1]	XGetPixel [1]	XSetScreenSaver [1]	XkbComputeSectionBounds [1]	
XChangeActivePointerGrab [1]	XGetPointerControl [1]	XSetSelectionOwner [1]	XkbComputeShapeBounds [1]	
XChangeGC [1]	XGetPointerMapping [1]	XSetSizeHints [1]	XkbComputeShapeTop [1]	
XChangeKeyboardControl [1]	XGetRGBColormaps [1]	XSetStandardColormap [1]	XkbCopyKeyType [1]	
XChangeKeyboardMapping [1]	XGetScreenSaver [1]	XSetStandardProperties [1]	XkbCopyKeyTypes [1]	
XChangePointerControl [1]	XGetSelectionOwner [1]	XSetState [1]	XkbFindOverlayForKey [1]	
XChangeProperty [1]	XGetSizeHints [1]	XSetStipple [1]	XkbForceBell [1]	
XChangeSaveSet [1]	XGetStandardColormap [1]	XSetSubwindowMode [1]	XkbFreeClientMap [1]	
XChangeWindowAttributes [1]	XGetSubImage [1]	XSetTSOrigin [1]	XkbFreeCompatMap [1]	
XCheckIfEvent [1]	XGetTextProperty [1]	XSetTextProperty [1]	XkbFreeComponentList [1]	
XCheckMaskEvent [1]	XGetTransientForHint [1]	XSetTile [1]	XkbFreeControls [1]	
XCheckTypedEvent [1]	XGetVisualInfo [1]	XSetTransientForHint [1]	XkbFreeGeomColors [1]	
XCheckTypedWindowEvent [1]	XGetWMClientMachine [1]	XSetWMClientMachine [1]	XkbFreeGeomDoodads [1]	
XCheckWindowEvent [1]	XGetWMColormapWindows [1]	XSetWMColormapWindows [1]	XkbFreeGeomKeyAliases [1]	
XCirculateSubwindows [1]	XGetWMHints [1]	XSetWMHints [1]	XkbFreeGeomKeys [1]	
XCirculateSubwindowsDown [1]	XGetWMIconName [1]	XSetWMIconName [1]	XkbFreeGeomOutlines [1]	
XCirculateSubwindowsUp [1]	XGetWMName [1]	XSetWMName [1]	XkbFreeGeomOverlayKeys [1]	
XClearArea [1]	XGetWMNormalHints [1]	XSetWMNormalHints [1]	XkbFreeGeomOverlayRows [1]	
XClearWindow [1]	XGetWMProtocols [1]	XSetWMProperties [1]	XkbFreeGeomOverlays [1]	
XClipBox [1]	XGetWMSizeHints [1]	XSetWMProtocols [1]	XkbFreeGeomPoints [1]	
XCloseDisplay [1]	XGetWindowAttributes [1]	XSetWMSizeHints [1]	XkbFreeGeomProperties [1]	
XCloseIM [1]	XGetWindowProperty [1]	XSetWindowBackground [1]	XkbFreeGeomRows [1]	
XCloseOM [1]	XGetZoomHints [1]	XSetWindowBackgroundPixmap [1]	XkbFreeGeomSections [1]	
XConfigureWindow [1]	XGrabButton [1]	XSetWindowBorder [1]	XkbFreeGeomShapes [1]	
XConnectionNumber [1]	XGrabKey [1]	XSetWindowBorderPixmap [1]	XkbFreeGeometry [1]	
XContextDependentDrawing [1]	XGrabKeyboard [1]	XSetWindowBorderWidth [1]	XkbFreeIndicatorMaps [1]	
XContextualDrawing [1]	XGrabPointer [1]	XSetWindowColormap [1]	XkbFreeKeyboard [1]	
XConvertCase [1]	XGrabServer [1]	XSetZoomHints [1]	XkbFreeNames [1]	
XConvertSelection [1]	XHeightMMOfScreen [1]	XShrinkRegion [1]	XkbFreeServerMap [1]	
XCopyArea [1]	XHeightOfScreen [1]	XStoreBuffer [1]	XkbGetAutoRepeatRate [1]	
XCopyColormapAndFree [1]	XIMOfIC [1]	XStoreBytes [1]	XkbGetCompatMap [1]	
XCopyGC [1]	XIconifyWindow [1]	XStoreColor [1]	XkbGetControls [1]	
XCopyPlane [1]	XIfEvent [1]	XStoreColors [1]	XkbGetGeometry [1]	
XCreateBitmapFromData [1]	XImageByteOrder [1]	XStoreName [1]	XkbGetIndicatorMap [1]	
XCreateColormap [1]	XInitExtension [1]	XStoreNamedColor [1]	XkbGetIndicatorState [1]	
XCreateFontCursor [1]	XInitImage [1]	XStringListToTextProperty [1]	XkbGetKeyActions [1]	
XCreateFontSet [1]	XInitThreads [1]	XStringToKeysym [1]	XkbGetKeyBehaviors [1]	
XCreateGC [1]	XInsertModifiermapEntry [1]	XSubImage [1]	XkbGetKeyExplicitComponents [1]	
XCreateGlyphCursor [1]	XInstallColormap [1]	XSubtractRegion [1]	XkbGetKeyModifierMap [1]	
XCreateIC [1]	XInternAtom [1]	XSupportsLocale [1]	XkbGetKeySyms [1]	
XCreateImage [1]	XInternAtoms [1]	XSync [1]	XkbGetKeyTypes [1]	
XCreateOC [1]	XInternalConnectionNumbers [1]	XTextExtents [1]	XkbGetKeyboard [1]	
XCreatePixmap [1]	XIntersectRegion [1]	XTextExtents16 [1]	XkbGetKeyboardByName [1]	
XCreatePixmapCursor [1]	XKeycodeToKeysym [1]	XTextPropertyToStringList [1]	XkbGetMap [1]	
XCreatePixmapFromBitmapData [1]	XKeysymToKeycode [1]	XTextWidth [1]	XkbGetMapChanges [1]	
XCreateRegion [1]	XKeysymToString [1]	XTextWidth16 [1]	XkbGetNamedGeometry [1]	
XCreateSimpleWindow [1]	XKillClient [1]	XTranslateCoordinates [1]	XkbGetNamedIndicator [1]	
XCreateWindow [1]	XLastKnownRequestProcessed [1]	XUndefineCursor [1]	XkbGetNames [1]	
XDefaultColormap [1]	XListDepths [1]	XUngrabButton [1]	XkbGetState [1]	
XDefaultColormapOfScreen [1]	XListExtensions [1]	XUngrabKey [1]	XkbGetUpdatedMap [1]	
XDefaultDepth [1]	XListFonts [1]	XUngrabKeyboard [1]	XkbGetVirtualMods [1]	
XDefaultDepthOfScreen [1]	XListFontsWithInfo [1]	XUngrabPointer [1]	XkbGetXlibControls [1]	
XDefaultGC [1]	XListHosts [1]	XUngrabServer [1]	XkbIgnoreExtension [1]	
XDefaultGCOfScreen [1]	XListInstalledColormaps [1]	XUninstallColormap [1]	XkbInitCanonicalKeyTypes [1]	
XDefaultRootWindow [1]	XListPixmapFormats [1]	XUnionRectWithRegion [1]	XkbKeyTypesForCoreSymbols [1]	
XDefaultScreen [1]	XListProperties [1]	XUnionRegion [1]	XkbKeycodeToKeysym [1]	
XDefaultScreenOfDisplay [1]	XLoadFont [1]	XUnloadFont [1]	XkbKeysymToModifiers [1]	
XDefaultString [1]	XLoadQueryFont [1]	XUnlockDisplay [1]	XkbLatchGroup [1]	
XDefaultVisual [1]	XLocaleOfFontSet [1]	XUnmapSubwindows [1]	XkbLatchModifiers [1]	
XDefaultVisualOfScreen [1]	XLocaleOfIM [1]	XUnmapWindow [1]	XkbLibraryVersion [1]	
XDefineCursor [1]	XLocaleOfOM [1]	XUnregisterIMInstantiateCallback [1]	XkbListComponents [1]	
XDeleteContext [1]	XLockDisplay [1]	XUnsetICFocus [1]	XkbLockGroup [1]	
XDeleteModifiermapEntry [1]	XLookupColor [1]	XVaCreateNestedList [1]	XkbLockModifiers [1]	
XDeleteProperty [1]	XLookupKeysym [1]	XVendorRelease [1]	XkbLookupKeyBinding [1]	
XDestroyIC [1]	XLookupString [1]	XVisualIDFromVisual [1]	XkbLookupKeySym [1]	
XDestroyImage [1]	XLowerWindow [1]	XWMGeometry [1]	XkbNoteControlsChanges [1]	
XDestroyOC [1]	XMapRaised [1]	XWarpPointer [1]	XkbNoteMapChanges [1]	
XDestroyRegion [1]	XMapSubwindows [1]	XWhitePixel [1]	XkbNoteNameChanges [1]	
XDestroySubwindows [1]	XMapWindow [1]	XWhitePixelOfScreen [1]	XkbOpenDisplay [1]	
XDestroyWindow [1]	XMaskEvent [1]	XWidthMMOfScreen [1]	XkbQueryExtension [1]	
XDirectionalDependentDrawing [1]	XMatchVisualInfo [1]	XWidthOfScreen [1]	XkbRefreshKeyboardMapping [1]	
XDisableAccessControl [1]	XMaxCmapsOfScreen [1]	XWindowEvent [1]	XkbResizeKeyActions [1]	
XDisplayCells [1]	XMaxRequestSize [1]	XWithdrawWindow [1]	XkbResizeKeySyms [1]	
XDisplayHeight [1]	XMinCmapsOfScreen [1]	XWriteBitmapFile [1]	XkbResizeKeyType [1]	
XDisplayHeightMM [1]	XMoveResizeWindow [1]	XXorRegion [1]	XkbSelectEventDetails [1]	
XDisplayKeycodes [1]	XMoveWindow [1]	XauDisposeAuth [1]	XkbSelectEvents [1]	
XDisplayMotionBufferSize [1]	XNewModifiermap [1]	XauFileName [1]	XkbSetAtomFuncs [1]	
XDisplayName [1]	XNextEvent [1]	XauGetBestAuthByAddr [1]	XkbSetAutoRepeatRate [1]	
XDisplayOfIM [1]	XNextRequest [1]	XauReadAuth [1]	XkbSetAutoResetControls [1]	
XDisplayOfOM [1]	XNoOp [1]	XcmsAddColorSpace [1]	XkbSetCompatMap [1]	
XDisplayOfScreen [1]	XOMOfOC [1]	XcmsAddFunctionSet [1]	XkbSetControls [1]	
XDisplayPlanes [1]	XOffsetRegion [1]	XcmsAllocColor [1]	XkbSetDebuggingFlags [1]	
XDisplayString [1]	XOpenDisplay [1]	XcmsAllocNamedColor [1]	XkbSetDetectableAutoRepeat [1]	
XDisplayWidth [1]	XOpenIM [1]	XcmsCCCOfColormap [1]	XkbSetGeometry [1]	
XDisplayWidthMM [1]	XOpenOM [1]	XcmsCIELabClipL [1]	XkbSetIgnoreLockMods [1]	
XDoesBackingStore [1]	XParseColor [1]	XcmsCIELabClipLab [1]	XkbSetIndicatorMap [1]	
XDoesSaveUnders [1]	XParseGeometry [1]	XcmsCIELabClipab [1]	XkbSetMap [1]	
XDrawArc [1]	XPeekEvent [1]	XcmsCIELabQueryMaxC [1]	XkbSetNamedIndicator [1]	
XDrawArcs [1]	XPeekIfEvent [1]	XcmsCIELabQueryMaxL [1]	XkbSetNames [1]	
XDrawImageString [1]	XPending [1]	XcmsCIELabQueryMaxLC [1]	XkbSetServerInternalMods [1]	
XDrawImageString16 [1]	XPlanesOfScreen [1]	XcmsCIELabQueryMinL [1]	XkbSetXlibControls [1]	
XDrawLine [1]	XPointInRegion [1]	XcmsCIELabToCIEXYZ [1]	XkbToControl [1]	
XDrawLines [1]	XPolygonRegion [1]	XcmsCIELabWhiteShiftColors [1]	XkbTranslateKeyCode [1]	
XDrawPoint [1]	XProcessInternalConnection [1]	XcmsCIELuvClipL [1]	XkbTranslateKeySym [1]	
XDrawPoints [1]	XProtocolRevision [1]	XcmsCIELuvClipLuv [1]	XkbUpdateMapFromCore [1]	
XDrawRectangle [1]	XProtocolVersion [1]	XcmsCIELuvClipuv [1]	XkbUseExtension [1]	
XDrawRectangles [1]	XPutBackEvent [1]	XcmsCIELuvQueryMaxC [1]	XkbVirtualModsToReal [1]	
XDrawSegments [1]	XPutImage [1]	XcmsCIELuvQueryMaxL [1]	XmbDrawImageString [1]	
XDrawString [1]	XPutPixel [1]	XcmsCIELuvQueryMaxLC [1]	XmbDrawString [1]	
XDrawString16 [1]	XQLength [1]	XcmsCIELuvQueryMinL [1]	XmbDrawText [1]	
XDrawText [1]	XQueryBestCursor [1]	XcmsCIELuvToCIEuvY [1]	XmbLookupString [1]	
XDrawText16 [1]	XQueryBestSize [1]	XcmsCIELuvWhiteShiftColors [1]	XmbResetIC [1]	
XEHeadOfExtensionList [1]	XQueryBestStipple [1]	XcmsCIEXYZToCIELab [1]	XmbSetWMProperties [1]	
XESetBeforeFlush [1]	XQueryBestTile [1]	XcmsCIEXYZToCIEuvY [1]	XmbTextEscapement [1]	
XESetCloseDisplay [1]	XQueryColor [1]	XcmsCIEXYZToCIExyY [1]	XmbTextExtents [1]	
XESetCopyGC [1]	XQueryColors [1]	XcmsCIEXYZToRGBi [1]	XmbTextListToTextProperty [1]	
XESetCreateFont [1]	XQueryExtension [1]	XcmsCIEuvYToCIELuv [1]	XmbTextPerCharExtents [1]	
XESetCreateGC [1]	XQueryFont [1]	XcmsCIEuvYToCIEXYZ [1]	XmbTextPropertyToTextList [1]	
XESetError [1]	XQueryKeymap [1]	XcmsCIEuvYToTekHVC [1]	XrmCombineDatabase [1]	
XESetErrorString [1]	XQueryPointer [1]	XcmsCIExyYToCIEXYZ [1]	XrmCombineFileDatabase [1]	
XESetEventToWire [1]	XQueryTextExtents [1]	XcmsClientWhitePointOfCCC [1]	XrmDestroyDatabase [1]	
XESetFlushGC [1]	XQueryTextExtents16 [1]	XcmsConvertColors [1]	XrmEnumerateDatabase [1]	
XESetFreeFont [1]	XQueryTree [1]	XcmsCreateCCC [1]	XrmGetDatabase [1]	
XESetFreeGC [1]	XRaiseWindow [1]	XcmsDefaultCCC [1]	XrmGetFileDatabase [1]	
XESetPrintErrorValues [1]	XReadBitmapFile [1]	XcmsDisplayOfCCC [1]	XrmGetResource [1]	
XESetWireToError [1]	XReadBitmapFileData [1]	XcmsFormatOfPrefix [1]	XrmGetStringDatabase [1]	
XESetWireToEvent [1]	XRebindKeysym [1]	XcmsFreeCCC [1]	XrmInitialize [1]	
XEmptyRegion [1]	XRecolorCursor [1]	XcmsLookupColor [1]	XrmLocaleOfDatabase [1]	
XEnableAccessControl [1]	XReconfigureWMWindow [1]	XcmsPrefixOfFormat [1]	XrmMergeDatabases [1]	
XEqualRegion [1]	XRectInRegion [1]	XcmsQueryBlack [1]	XrmParseCommand [1]	
XEventMaskOfScreen [1]	XRefreshKeyboardMapping [1]	XcmsQueryBlue [1]	XrmPermStringToQuark [1]	
XEventsQueued [1]	XRegisterIMInstantiateCallback [1]	XcmsQueryColor [1]	XrmPutFileDatabase [1]	
XExtendedMaxRequestSize [1]	XRemoveConnectionWatch [1]	XcmsQueryColors [1]	XrmPutLineResource [1]	
XExtentsOfFontSet [1]	XRemoveFromSaveSet [1]	XcmsQueryGreen [1]	XrmPutResource [1]	
XFetchBuffer [1]	XRemoveHost [1]	XcmsQueryRed [1]	XrmPutStringResource [1]	
XFetchBytes [1]	XRemoveHosts [1]	XcmsQueryWhite [1]	XrmQGetResource [1]	
XFetchName [1]	XReparentWindow [1]	XcmsRGBToRGBi [1]	XrmQGetSearchList [1]	
XFillArc [1]	XResetScreenSaver [1]	XcmsRGBiToCIEXYZ [1]	XrmQGetSearchResource [1]	
XFillArcs [1]	XResizeWindow [1]	XcmsRGBiToRGB [1]	XrmQPutResource [1]	
XFillPolygon [1]	XResourceManagerString [1]	XcmsScreenNumberOfCCC [1]	XrmQPutStringResource [1]	
XFillRectangle [1]	XRestackWindows [1]	XcmsScreenWhitePointOfCCC [1]	XrmQuarkToString [1]	
XFillRectangles [1]	XRootWindow [1]	XcmsSetCCCOfColormap [1]	XrmSetDatabase [1]	
XFilterEvent [1]	XRootWindowOfScreen [1]	XcmsSetCompressionProc [1]	XrmStringToBindingQuarkList [1]	
XFindContext [1]	XRotateBuffers [1]	XcmsSetWhiteAdjustProc [1]	XrmStringToQuark [1]	
XFindOnExtensionList [1]	XRotateWindowProperties [1]	XcmsSetWhitePoint [1]	XrmStringToQuarkList [1]	
XFlush [1]	XSaveContext [1]	XcmsStoreColor [1]	XrmUniqueQuark [1]	
XFlushGC [1]	XScreenCount [1]	XcmsStoreColors [1]	Xutf8TextListToTextProperty [2]	
XFontsOfFontSet [1]	XScreenNumberOfScreen [1]	XcmsTekHVCClipC [1]	Xutf8TextPropertyToTextList [2]	
XForceScreenSaver [1]	XScreenOfDisplay [1]	XcmsTekHVCClipV [1]	XwcDrawImageString [1]	
XFree [1]	XScreenResourceString [1]	XcmsTekHVCClipVC [1]	XwcDrawString [1]	
XFreeColormap [1]	XSelectInput [1]	XcmsTekHVCQueryMaxC [1]	XwcDrawText [1]	
XFreeColors [1]	XSendEvent [1]	XcmsTekHVCQueryMaxV [1]	XwcFreeStringList [1]	
XFreeCursor [1]	XServerVendor [1]	XcmsTekHVCQueryMaxVC [1]	XwcLookupString [1]	
XFreeExtensionList [1]	XSetAccessControl [1]	XcmsTekHVCQueryMaxVSamples [1]	XwcResetIC [1]	
XFreeFont [1]	XSetArcMode [1]	XcmsTekHVCQueryMinV [1]	XwcTextEscapement [1]	
XFreeFontInfo [1]	XSetAuthorization [1]	XcmsTekHVCToCIEuvY [1]	XwcTextExtents [1]	
XFreeFontNames [1]	XSetBackground [1]	XcmsTekHVCWhiteShiftColors [1]	XwcTextListToTextProperty [1]	
XFreeFontPath [1]	XSetClassHint [1]	XcmsVisualOfCCC [1]	XwcTextPerCharExtents [1]	
XFreeFontSet [1]	XSetClipMask [1]	XkbAllocClientMap [1]	XwcTextPropertyToTextList [1]	
XFreeGC [1]	XSetClipOrigin [1]	XkbAllocCompatMap [1]	
	
XFreeModifiermap [1]	XSetClipRectangles [1]	XkbAllocControls [1]	

Referenced Specification(s)
[1]. X11 C Library
[2]. this specification
An LSB conforming implementation shall provide the generic data interfaces for X Windows System Interface specified in Table 1-3, with the full functionality as described in the referenced underlying specification.
Table 1-3 libX11 - X Windows System Interface Data Interfaces
XSetAfterFunction [1]	XSynchronize [1]	

Referenced Specification(s)
[1]. X11 C Library
1.2 Data Definitions for libX11
This section defines global identifiers and their values that are associated with interfaces contained in libX11. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.
These definitions are intended to supplement those provided in the referenced underlying specifications.
This specification uses ISO/IEC 9899 C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.
1.2.1 X11/X.h

typedef unsigned long XID;
typedef unsigned long Atom;
typedef unsigned long VisualID;
typedef unsigned long Time;
typedef XID Window;
typedef XID Font;
typedef XID Pixmap;
typedef unsigned char KeyCode;
typedef XID Drawable;
typedef XID Cursor;
typedef XID Colormap;
typedef XID GContext;
typedef XID KeySym;
#define AllTemporary    0L
#define AnyButton       0L
#define AnyKey  0L
#define AnyPropertyType 0L
#define CopyFromParent  0L
#define CurrentTime     0L
#define NoSymbol        0L
#define None    0L
#define PointerWindow   0L
#define InputFocus      1L
#define ParentRelative  1L
#define PointerRoot     1L

#define KeyPressMask    (1L<<0)
#define KeyReleaseMask  (1L<<1)
#define Button3MotionMask       (1L<<10)
#define Button4MotionMask       (1L<<11)
#define Button5MotionMask       (1L<<12)
#define ButtonMotionMask        (1L<<13)
#define KeymapStateMask (1L<<14)
#define ExposureMask    (1L<<15)
#define VisibilityChangeMask    (1L<<16)
#define StructureNotifyMask     (1L<<17)
#define ResizeRedirectMask      (1L<<18)
#define SubstructureNotifyMask  (1L<<19)
#define ButtonPressMask (1L<<2)
#define SubstructureRedirectMask        (1L<<20)
#define FocusChangeMask (1L<<21)
#define PropertyChangeMask      (1L<<22)
#define ColormapChangeMask      (1L<<23)
#define ButtonReleaseMask       (1L<<3)
#define EnterWindowMask (1L<<4)
#define LeaveWindowMask (1L<<5)
#define PointerMotionMask       (1L<<6)
#define PointerMotionHintMask   (1L<<7)
#define Button1MotionMask       (1L<<8)
#define Button2MotionMask       (1L<<9)

#define NoEventMask     0L
#define FocusOut        10
#define KeymapNotify    11
#define Expose  12
#define GraphicsExpose  13
#define NoExpose        14
#define VisibilityNotify        15
#define CreateNotify    16
#define DestroyNotify   17
#define UnmapNotify     18
#define MapNotify       19
#define KeyPress        2
#define MapRequest      20
#define ReparentNotify  21
#define ConfigureNotify 22
#define ConfigureRequest        23
#define GravityNotify   24
#define ResizeRequest   25
#define CirculateNotify 26
#define CirculateRequest        27
#define PropertyNotify  28
#define SelectionClear  29
#define KeyRelease      3
#define SelectionRequest        30
#define SelectionNotify 31
#define ColormapNotify  32
#define ClientMessage   33
#define MappingNotify   34
#define LASTEvent       35
#define ButtonPress     4
#define ButtonRelease   5
#define MotionNotify    6
#define EnterNotify     7
#define LeaveNotify     8
#define FocusIn 9

#define ShiftMask       (1<<0)
#define LockMask        (1<<1)
#define ControlMask     (1<<2)
#define Mod1Mask        (1<<3)
#define Mod2Mask        (1<<4)
#define Mod3Mask        (1<<5)
#define Mod4Mask        (1<<6)
#define Mod5Mask        (1<<7)

#define ShiftMapIndex   0
#define LockMapIndex    1
#define ControlMapIndex 2
#define Mod1MapIndex    3
#define Mod2MapIndex    4
#define Mod3MapIndex    5
#define Mod4MapIndex    6
#define Mod5MapIndex    7

#define Button3Mask     (1<<10)
#define Button4Mask     (1<<11)
#define Button5Mask     (1<<12)
#define AnyModifier     (1<<15)
#define Button1Mask     (1<<8)
#define Button2Mask     (1<<9)

#define Button1 1
#define Button2 2
#define Button3 3
#define Button4 4
#define Button5 5

#define NotifyNormal    0
#define NotifyGrab      1
#define NotifyHint      1
#define NotifyUngrab    2
#define NotifyWhileGrabbed      3

#define NotifyAncestor  0
#define NotifyVirtual   1
#define NotifyInferior  2
#define NotifyNonlinear 3
#define NotifyNonlinearVirtual  4
#define NotifyPointer   5
#define NotifyPointerRoot       6
#define NotifyDetailNone        7

#define VisibilityUnobscured    0
#define VisibilityPartiallyObscured     1
#define VisibilityFullyObscured 2

#define PlaceOnTop      0
#define PlaceOnBottom   1

#define FamilyInternet  0
#define FamilyDECnet    1
#define FamilyChaos     2

#define PropModeReplace 0
#define PropertyNewValue        0
#define PropertyDelete  1

#define ColormapUninstalled     0
#define ColormapInstalled       1

#define GrabModeSync    0
#define GrabModeAsync   1

#define GrabSuccess     0
#define AlreadyGrabbed  1
#define GrabInvalidTime 2
#define GrabNotViewable 3
#define GrabFrozen      4

#define AsyncPointer    0
#define SyncPointer     1
#define ReplayPointer   2
#define AsyncKeyboard   3
#define SyncKeyboard    4
#define ReplayKeyboard  5
#define AsyncBoth       6
#define SyncBoth        7

#define RevertToNone    (int)None
#define RevertToPointerRoot     (int)PointerRoot
#define RevertToParent  2

#define Success 0
#define BadRequest      1
#define BadAccess       10
#define BadAlloc        11
#define BadColor        12
#define FirstExtensionError     128
#define BadGC   13
#define BadIDChoice     14
#define BadName 15
#define BadLength       16
#define BadImplementation       17
#define BadValue        2
#define LastExtensionError      255
#define BadWindow       3
#define BadPixmap       4
#define BadAtom 5
#define BadCursor       6
#define BadFont 7
#define BadMatch        8
#define BadDrawable     9

#define CWX     (1<<0)
#define InputOutput     1
#define InputOnly       2

#define CWBackPixmap    (1L<<0)
#define CWBackPixel     (1L<<1)
#define CWSaveUnder     (1L<<10)
#define CWEventMask     (1L<<11)
#define CWDontPropagate (1L<<12)
#define CWColormap      (1L<<13)
#define CWCursor        (1L<<14)
#define CWBorderPixmap  (1L<<2)
#define CWBorderPixel   (1L<<3)
#define CWBitGravity    (1L<<4)
#define CWWinGravity    (1L<<5)
#define CWBackingStore  (1L<<6)
#define CWBackingPlanes (1L<<7)
#define CWBackingPixel  (1L<<8)
#define CWOverrideRedirect      (1L<<9)

#define CWY     (1<<1)
#define CWWidth (1<<2)
#define CWHeight        (1<<3)
#define CWBorderWidth   (1<<4)
#define CWSibling       (1<<5)
#define CWStackMode     (1<<6)

#define ForgetGravity   0
#define UnmapGravity    0
#define NorthWestGravity        1
#define StaticGravity   10
#define NorthGravity    2
#define NorthEastGravity        3
#define WestGravity     4
#define CenterGravity   5
#define EastGravity     6
#define SouthWestGravity        7
#define SouthGravity    8
#define SouthEastGravity        9

#define NotUseful       0
#define WhenMapped      1
#define Always  2

#define IsUnmapped      0
#define IsUnviewable    1
#define IsViewable      2

#define SetModeInsert   0
#define SetModeDelete   1

#define DestroyAll      0
#define RetainPermanent 1
#define RetainTemporary 2

#define Above   0
#define Below   1
#define TopIf   2
#define BottomIf        3

#define RaiseLowest     0
#define LowerHighest    1

#define PropModePrepend 1
#define PropModeAppend  2

#define GXclear 0x0
#define GXand   0x1
#define GXandReverse    0x2
#define GXcopy  0x3
#define GXandInverted   0x4
#define GXnoop  0x5
#define GXxor   0x6
#define GXor    0x7
#define GXnor   0x8
#define GXequiv 0x9
#define GXinvert        0xa
#define GXorReverse     0xb
#define GXcopyInverted  0xc
#define GXorInverted    0xd
#define GXnand  0xe
#define GXset   0xf

#define LineSolid       0
#define LineOnOffDash   1
#define LineDoubleDash  2

#define CapNotLast      0
#define CapButt 1
#define CapRound        2
#define CapProjecting   3

#define JoinMiter       0
#define JoinRound       1
#define JoinBevel       2

#define FillSolid       0
#define FillTiled       1
#define FillStippled    2
#define FillOpaqueStippled      3

#define EvenOddRule     0
#define WindingRule     1

#define ClipByChildren  0
#define IncludeInferiors        1

#define Unsorted        0
#define XYBitmap        0
#define YSorted 1
#define YXSorted        2
#define YXBanded        3

#define CoordModeOrigin 0
#define CoordModePrevious       1

#define Complex 0
#define Nonconvex       1
#define Convex  2

#define ArcChord        0
#define ArcPieSlice     1

#define GCFunction      (1L<<0)
#define GCPlaneMask     (1L<<1)
#define GCTile  (1L<<10)
#define GCStipple       (1L<<11)
#define GCTileStipXOrigin       (1L<<12)
#define GCTileStipYOrigin       (1L<<13)
#define GCFont  (1L<<14)
#define GCSubwindowMode (1L<<15)
#define GCGraphicsExposures     (1L<<16)
#define GCClipXOrigin   (1L<<17)
#define GCClipYOrigin   (1L<<18)
#define GCClipMask      (1L<<19)
#define GCForeground    (1L<<2)
#define GCDashOffset    (1L<<20)
#define GCDashList      (1L<<21)
#define GCArcMode       (1L<<22)
#define GCBackground    (1L<<3)
#define GCLineWidth     (1L<<4)
#define GCLineStyle     (1L<<5)
#define GCCapStyle      (1L<<6)
#define GCJoinStyle     (1L<<7)
#define GCFillStyle     (1L<<8)
#define GCFillRule      (1L<<9)
#define GCLastBit       22
#define FontChange      255

#define FontLeftToRight 0
#define FontRightToLeft 1

#define XYPixmap        1
#define ZPixmap 2

#define AllocNone       0
#define AllocAll        1

#define DoRed   (1<<0)
#define DoGreen (1<<1)
#define DoBlue  (1<<2)

#define CursorShape     0
#define TileShape       1
#define StippleShape    2

#define AutoRepeatModeOff       0
#define LedModeOff      0
#define AutoRepeatModeOn        1
#define LedModeOn       1
#define AutoRepeatModeDefault   2

#define KBKeyClickPercent       (1L<<0)
#define KBBellPercent   (1L<<1)
#define KBBellPitch     (1L<<2)
#define KBBellDuration  (1L<<3)
#define KBLed   (1L<<4)
#define KBLedMode       (1L<<5)
#define KBKey   (1L<<6)
#define KBAutoRepeatMode        (1L<<7)
#define MappingModifier 0
#define MappingSuccess  0
#define MappingBusy     1
#define MappingKeyboard 1
#define MappingFailed   2
#define MappingPointer  2

#define DisableScreenInterval   0
#define DisableScreenSaver      0
#define DontAllowExposures      0
#define DontPreferBlanking      0
#define AllowExposures  1
#define PreferBlanking  1
#define DefaultBlanking 2
#define DefaultExposures        2

#define ScreenSaverReset        0
#define ScreenSaverActive       1

#define HostInsert      0
#define HostDelete      1

#define DisableAccess   0
#define EnableAccess    1

#define StaticGray      0
#define GrayScale       1
#define StaticColor     2
#define PseudoColor     3
#define TrueColor       4
#define DirectColor     5

#define LSBFirst        0
#define MSBFirst        1
1.2.2 X11/Xauth.h

typedef struct xauth
{
  unsigned short family;
  unsigned short address_length;
  char *address;
  unsigned short number_length;
  char *number;
  unsigned short name_length;
  char *name;
  unsigned short data_length;
  char *data;
}
Xauth;
1.2.3 X11/Xcms.h

typedef struct _XcmsFunctionSet
{
  XcmsColorSpace **DDColorSpaces;
  XcmsScreenInitProc screenInitProc;
  XcmsScreenFreeProc screenFreeProc;
}
XcmsFunctionSet;

typedef unsigned long XcmsColorFormat;
typedef double XcmsFloat;
typedef struct
{
  unsigned short red;
  unsigned short green;
  unsigned short blue;
}
XcmsRGB;
typedef struct
{
  XcmsFloat red;
  XcmsFloat green;
  XcmsFloat blue;
}
XcmsRGBi;
typedef struct
{
  XcmsFloat X;
  XcmsFloat Y;
  XcmsFloat Z;
}
XcmsCIEXYZ;
typedef struct
{
  XcmsFloat u_prime;
  XcmsFloat v_prime;
  XcmsFloat Y;
}
XcmsCIEuvY;
typedef struct
{
  XcmsFloat x;
  XcmsFloat y;
  XcmsFloat Y;
}
XcmsCIExyY;
typedef struct
{
  XcmsFloat L_star;
  XcmsFloat a_star;
  XcmsFloat b_star;
}
XcmsCIELab;
typedef struct
{
  XcmsFloat L_star;
  XcmsFloat u_star;
  XcmsFloat v_star;
}
XcmsCIELuv;
typedef struct
{
  XcmsFloat H;
  XcmsFloat V;
  XcmsFloat C;
}
XcmsTekHVC;
typedef struct
{
  XcmsFloat pad0;
  XcmsFloat pad1;
  XcmsFloat pad2;
  XcmsFloat pad3;
}
XcmsPad;

typedef union
{
  XcmsRGB RGB;
  XcmsRGBi RGBi;
  XcmsCIEXYZ CIEXYZ;
  XcmsCIEuvY CIEuvY;
  XcmsCIExyY CIExyY;
  XcmsCIELab CIELab;
  XcmsCIELuv CIELuv;
  XcmsTekHVC TekHVC;
  XcmsPad Pad;
}
XcmsColor;

typedef struct _XcmsPerScrnInfo
{
  XcmsColor screenWhitePt;
  XPointer functionSet;
  XPointer screenData;
  unsigned char state;
  char pad[1];
}
XcmsPerScrnInfo;

typedef int (*XcmsCompressionProc) (void);
typedef int (*XcmsWhiteAdjustProc) (void);
typedef int (*XcmsScreenInitProc) (void);
typedef void (*XcmsScreenFreeProc) (void);
typedef int (*XcmsConversionProc) (void);
typedef int (*XcmsParseStringProc) (void);

typedef struct _XcmsCCC
{
  Display *dpy;
  int screenNumber;
  Visual *visual;
  XcmsColor clientWhitePt;
  XcmsCompressionProc gamutCompProc;
  XPointer gamutCompClientData;
  XcmsWhiteAdjustProc whitePtAdjProc;
  XPointer whitePtAdjClientData;
  XcmsPerScrnInfo *pPerScrnInfo;
}
 *XcmsCCC;

typedef XcmsConversionProc *XcmsFuncListPtr;

typedef struct _XcmsColorSpace
{
  char *prefix;
  XcmsColorFormat id;
  XcmsParseStringProc parseString;
  XcmsFuncListPtr to_CIEXYZ;
  XcmsFuncListPtr from_CIEXYZ;
  int inverse_flag;
}
XcmsColorSpace;
1.2.4 X11/Xlib.h

struct _XDisplay;
typedef struct XColor;
typedef void *XVaNestedList;
typedef int (*XErrorHandler) (void);
typedef int (*XIOErrorHandler) (void);
typedef void (*XConnectionWatchProc) (void);

typedef char *XPointer;

typedef struct _XExtData
{
  int number;
  struct _XExtData *next;
  int (*free_private) (struct _XExtData * extension);
  XPointer private_data;
}
XExtData;
typedef struct XExtCodes;

typedef struct XPixmapFormatValues;

typedef struct XGCValues;

typedef struct _XGC *GC;

typedef struct Visual;

typedef struct Depth;

typedef struct Screen;

typedef struct ScreenFormat;

typedef struct XSetWindowAttributes;
typedef struct XWindowAttributes;

typedef struct XHostAddress;

typedef struct _XImage
{
  int width;
  int height;
  int xoffset;
  int format;
  char *data;
  int byte_order;
  int bitmap_unit;
  int bitmap_bit_order;
  int bitmap_pad;
  int depth;
  int bytes_per_line;
  int bits_per_pixel;
  unsigned long red_mask;
  unsigned long green_mask;
  unsigned long blue_mask;
  XPointer obdata;
  struct funcs f;
}
XImage;

typedef struct XWindowChanges;

typedef struct XSegment;
typedef struct XPoint;
typedef struct XRectangle;
typedef struct XArc;

typedef struct XKeyboardControl;

typedef struct XKeyboardState;

typedef struct XTimeCoord;

typedef struct XModifierKeymap;

typedef struct _XDisplay Display;

typedef struct XKeyEvent;
typedef XKeyEvent XKeyPressedEvent;
typedef XKeyEvent XKeyReleasedEvent;
typedef struct XButtonEvent;
typedef XButtonEvent XButtonPressedEvent;
typedef XButtonEvent XButtonReleasedEvent;
typedef struct XMotionEvent;
typedef XMotionEvent XPointerMovedEvent;
typedef struct XCrossingEvent;
typedef XCrossingEvent XEnterWindowEvent;
typedef XCrossingEvent XLeaveWindowEvent;
typedef struct XFocusChangeEvent;
typedef XFocusChangeEvent XFocusInEvent;
typedef XFocusChangeEvent XFocusOutEvent;
typedef struct XKeymapEvent;
typedef struct XExposeEvent;
typedef struct XGraphicsExposeEvent;
typedef struct XNoExposeEvent;
typedef struct XVisibilityEvent;
typedef struct XCreateWindowEvent;
typedef struct XDestroyWindowEvent;
typedef struct XUnmapEvent;
typedef struct XMapEvent;
typedef struct XMapRequestEvent;
typedef struct XReparentEvent;
typedef struct XConfigureEvent;
typedef struct XGravityEvent;
typedef struct XResizeRequestEvent;
typedef struct XConfigureRequestEvent;
typedef struct XCirculateEvent;
typedef struct XCirculateRequestEvent;
typedef struct XPropertyEvent;
typedef struct XSelectionClearEvent;
typedef struct XSelectionRequestEvent;
typedef struct XSelectionEvent;
typedef struct XColormapEvent;
typedef union XClientMessageEvent;
typedef struct XMappingEvent;
typedef struct XErrorEvent;
typedef struct XAnyEvent;

typedef union _XEvent
{
  int type;
  XAnyEvent xany;
  XKeyEvent xkey;
  XButtonEvent xbutton;
  XMotionEvent xmotion;
  XCrossingEvent xcrossing;
  XFocusChangeEvent xfocus;
  XExposeEvent xexpose;
  XGraphicsExposeEvent xgraphicsexpose;
  XNoExposeEvent xnoexpose;
  XVisibilityEvent xvisibility;
  XCreateWindowEvent xcreatewindow;
  XDestroyWindowEvent xdestroywindow;
  XUnmapEvent xunmap;
  XMapEvent xmap;
  XMapRequestEvent xmaprequest;
  XReparentEvent xreparent;
  XConfigureEvent xconfigure;
  XGravityEvent xgravity;
  XResizeRequestEvent xresizerequest;
  XConfigureRequestEvent xconfigurerequest;
  XCirculateEvent xcirculate;
  XCirculateRequestEvent xcirculaterequest;
  XPropertyEvent xproperty;
  XSelectionClearEvent xselectionclear;
  XSelectionRequestEvent xselectionrequest;
  XSelectionEvent xselection;
  XColormapEvent xcolormap;
  XClientMessageEvent xclient;
  XMappingEvent xmapping;
  XErrorEvent xerror;
  XKeymapEvent xkeymap;
  long pad[1];
}
XEvent;

typedef struct XCharStruct;

typedef struct XFontProp;
typedef struct XFontStruct;
typedef struct XFontSetExtents;

typedef struct XTextItem;
typedef struct XChar2b;
typedef struct XTextItem16;

typedef union XEDataObject;

typedef struct _XOM *XOM;
typedef struct _XOC *XOC;
typedef struct _XOC *XFontSet;

typedef struct XmbTextItem;
typedef struct XwcTextItem;

typedef struct _XIM *XIM;
typedef struct _XIC *XIC;
typedef void (*XIDProc) (void);
1.2.5 X11/Xutil.h

typedef struct XSizeHints;
typedef struct XWMHints;
typedef struct XTextProperty;
typedef struct XIconSize;
typedef struct XClassHint;
typedef struct _XComposeStatus
{
  XPointer compose_ptr;
  int chars_matched;
}
XComposeStatus;
typedef struct _XRegion *Region;
typedef struct XVisualInfo;
typedef struct XStandardColormap;
typedef int XContext;
typedef enum XICCEncodingStyle;
1.3 Interface Definitions for libX11
The following interfaces are included in libX11 and are defined by this specification. Unless otherwise noted, these interfaces shall be included in the source standard.
Other interfaces listed above for libX11 shall behave as described in the referenced base document.
1.4 Interfaces for libXext
Table 1-4 defines the library name and shared object name for the libXext library
Table 1-4 libXext Definition
Library:	libXext	
SONAME:	libXext.so.6	

The behavior of the interfaces in this library is specified by the following specifications:
Double Buffer Extension Library	
X Display Power Management Signaling	
X Security Extension Specification	
X Nonrectangular Window Shape Extension Library	
The MIT Shared Memory Extension	
X Synchronization Extension Library	

1.4.1 X Shape Extension
1.4.1.1 Interfaces for X Shape Extension
An LSB conforming implementation shall provide the generic functions for X Shape Extension specified in Table 1-5, with the full functionality as described in the referenced underlying specification.
Table 1-5 libXext - X Shape Extension Function Interfaces
XShapeCombineMask [1]	XShapeCombineShape [1]	XShapeOffsetShape [1]	XShapeQueryVersion [1]	
XShapeCombineRectangles [1]	XShapeGetRectangles [1]	XShapeQueryExtension [1]	XShapeSelectInput [1]	
XShapeCombineRegion [1]	XShapeInputSelected [1]	XShapeQueryExtents [1]	

Referenced Specification(s)
[1]. X Nonrectangular Window Shape Extension Library
1.4.2 X Display Power Management Signaling Extension
1.4.2.1 Interfaces for X Display Power Management Signaling Extension
An LSB conforming implementation shall provide the generic functions for X Display Power Management Signaling Extension specified in Table 1-6, with the full functionality as described in the referenced underlying specification.
Table 1-6 libXext - X Display Power Management Signaling Extension Function Interfaces
DPMSCapable [1]	DPMSForceLevel [1]	DPMSInfo [1]	
	
DPMSDisable [1]	DPMSGetTimeouts [1]	DPMSQueryExtension [1]	
	
DPMSEnable [1]	DPMSGetVersion [1]	DPMSSetTimeouts [1]	

Referenced Specification(s)
[1]. X Display Power Management Signaling
1.4.3 X Shared Memory Extensions
1.4.3.1 Interfaces for X Shared Memory Extensions
An LSB conforming implementation shall provide the generic functions for X Shared Memory Extensions specified in Table 1-7, with the full functionality as described in the referenced underlying specification.
Table 1-7 libXext - X Shared Memory Extensions Function Interfaces
XShmAttach [1]	XShmDetach [1]	XShmPixmapFormat [1]	XShmQueryVersion [1]	
XShmCreateImage [1]	XShmGetEventBase [1]	XShmPutImage [1]	
	
XShmCreatePixmap [1]	XShmGetImage [1]	XShmQueryExtension [1]	

Referenced Specification(s)
[1]. The MIT Shared Memory Extension
1.4.4 MIT-MISC Extension
1.4.4.1 Interfaces for MIT-MISC Extension
No external functions are defined for libXext - MIT-MISC Extension
1.4.5 X Synchronization Extension
1.4.5.1 Interfaces for X Synchronization Extension
An LSB conforming implementation shall provide the generic functions for X Synchronization Extension specified in Table 1-8, with the full functionality as described in the referenced underlying specification.
Table 1-8 libXext - X Synchronization Extension Function Interfaces
XSyncAwait [1]	XSyncGetPriority [1]	XSyncQueryCounter [1]	XSyncValueHigh32 [1]	
XSyncChangeAlarm [1]	XSyncInitialize [1]	XSyncQueryExtension [1]	XSyncValueIsNegative [1]	
XSyncChangeCounter [1]	XSyncIntToValue [1]	XSyncSetCounter [1]	XSyncValueIsPositive [1]	
XSyncCreateAlarm [1]	XSyncIntsToValue [1]	XSyncSetPriority [1]	XSyncValueIsZero [1]	
XSyncCreateCounter [1]	XSyncListSystemCounters [1]	XSyncValueAdd [1]	XSyncValueLessOrEqual [1]	
XSyncDestroyAlarm [1]	XSyncMaxValue [1]	XSyncValueEqual [1]	XSyncValueLessThan [1]	
XSyncDestroyCounter [1]	XSyncMinValue [1]	XSyncValueGreaterOrEqual [1]	XSyncValueLow32 [1]	
XSyncFreeSystemCounterList [1]	XSyncQueryAlarm [1]	XSyncValueGreaterThan [1]	XSyncValueSubtract [1]	

Referenced Specification(s)
[1]. X Synchronization Extension Library
1.4.6 X Security Extension
1.4.6.1 Interfaces for X Security Extension
An LSB conforming implementation shall provide the generic functions for X Security Extension specified in Table 1-9, with the full functionality as described in the referenced underlying specification.
Table 1-9 libXext - X Security Extension Function Interfaces
XSecurityAllocXauth [1]	XSecurityGenerateAuthorization [1]	XSecurityRevokeAuthorization [1]	
	
XSecurityFreeXauth [1]	XSecurityQueryExtension [1]	

Referenced Specification(s)
[1]. X Security Extension Specification
1.4.7 X Double Buffer Extension
1.4.7.1 Interfaces for X Double Buffer Extension
An LSB conforming implementation shall provide the generic functions for X Double Buffer Extension specified in Table 1-10, with the full functionality as described in the referenced underlying specification.
Table 1-10 libXext - X Double Buffer Extension Function Interfaces
XdbeAllocateBackBufferName [1]	XdbeEndIdiom [1]	XdbeGetVisualInfo [1]	
	
XdbeBeginIdiom [1]	XdbeFreeVisualInfo [1]	XdbeQueryExtension [1]	
	
XdbeDeallocateBackBufferName [1]	XdbeGetBackBufferAttributes [1]	XdbeSwapBuffers [1]	

Referenced Specification(s)
[1]. Double Buffer Extension Library
1.5 Data Definitions for libXext
This section defines global identifiers and their values that are associated with interfaces contained in libXext. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.
These definitions are intended to supplement those provided in the referenced underlying specifications.
This specification uses ISO/IEC 9899 C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.
1.5.1 X11/extensions/security.h

typedef unsigned long XSecurityAuthorization;
typedef struct
{
  unsigned int timeout;
  unsigned int trust_level;
  XID group;
  long event_mask;
}
XSecurityAuthorizationAttributes;
1.5.2 X11/extensions/sync.h

typedef struct _XSyncSystemCounter
{
  char *name;
  XSyncCounter counter;
  XSyncValue resolution;
}
XSyncSystemCounter;
typedef struct
{
  XSyncCounter counter;
  XSyncValueType value_type;
  XSyncValue wait_value;
  XSyncTestType test_type;
}
XSyncTrigger;
typedef struct
{
  XSyncTrigger trigger;
  XSyncValue event_threshold;
}
XSyncWaitCondition;
typedef struct
{
  XSyncTrigger trigger;
  XSyncValue delta;
  int events;
  XSyncAlarmState state;
}
XSyncAlarmAttributes;

typedef XID XSyncCounter;
typedef XID XSyncAlarm;
typedef struct _XSyncValue
{
  int hi;
  unsigned int lo;
}
XSyncValue;
typedef enum
{
  XSyncAbsolute, XSyncRelative
}
XSyncValueType;
typedef enum
{
  XSyncPositiveTransition, XSyncNegativeTransition, XSyncPositiveComparison,
    XSyncNegativeComparison
}
XSyncTestType;
typedef enum
{
  XSyncAlarmActive, XSyncAlarmInactive, XSyncAlarmDestroyed
}
XSyncAlarmState;
1.6 Interfaces for libSM
Table 1-11 defines the library name and shared object name for the libSM library
Table 1-11 libSM Definition
Library:	libSM	
SONAME:	libSM.so.6	

The behavior of the interfaces in this library is specified by the following specifications:
X11 Session Management	

1.6.1 Session Management Functions
1.6.1.1 Interfaces for Session Management Functions
An LSB conforming implementation shall provide the generic functions for Session Management Functions specified in Table 1-12, with the full functionality as described in the referenced underlying specification.
Table 1-12 libSM - Session Management Functions Function Interfaces
SmFreeProperty [1]	SmcOpenConnection [1]	SmsCleanUp [1]	SmsRegisterClientReply [1]	
SmFreeReasons [1]	SmcProtocolRevision [1]	SmsClientHostName [1]	SmsReturnProperties [1]	
SmcClientID [1]	SmcProtocolVersion [1]	SmsClientID [1]	SmsSaveComplete [1]	
SmcCloseConnection [1]	SmcRelease [1]	SmsDie [1]	SmsSaveYourself [1]	
SmcDeleteProperties [1]	SmcRequestSaveYourself [1]	SmsGenerateClientID [1]	SmsSaveYourselfPhase2 [1]	
SmcGetIceConnection [1]	SmcRequestSaveYourselfPhase2 [1]	SmsGetIceConnection [1]	SmsSetErrorHandler [1]	
SmcGetProperties [1]	SmcSaveYourselfDone [1]	SmsInitialize [1]	SmsShutdownCancelled [1]	
SmcInteractDone [1]	SmcSetErrorHandler [1]	SmsInteract [1]	
	
SmcInteractRequest [1]	SmcSetProperties [1]	SmsProtocolRevision [1]	
	
SmcModifyCallbacks [1]	SmcVendor [1]	SmsProtocolVersion [1]	

Referenced Specification(s)
[1]. X11 Session Management
1.7 Data Definitions for libSM
This section defines global identifiers and their values that are associated with interfaces contained in libSM. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.
These definitions are intended to supplement those provided in the referenced underlying specifications.
This specification uses ISO/IEC 9899 C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.
1.7.1 X11/SM/SMlib.h

typedef IcePointer SmPointer;
typedef struct _SmcConn *SmcConn;
typedef struct _SmsConn *SmsConn;

typedef struct
{
  int length;
  SmPointer value;
}
SmPropValue;
typedef struct
{
  char *name;
  char *type;
  int num_vals;
  SmPropValue *vals;
}
SmProp;

typedef enum
{
  SmcClosedNow, SmcClosedASAP, SmcConnectionInUse
}
SmcCloseStatus;

typedef void (*SmcSaveYourselfPhase2Proc) (void);
typedef void (*SmcInteractProc) (void);
typedef void (*SmcDieProc) (void);
typedef void (*SmcShutdownCancelledProc) (void);
typedef void (*SmcSaveCompleteProc) (void);
typedef void (*SmcPropReplyProc) (void);

typedef struct
{
  SmcShutdownCancelledProc callback;
  SmPointer client_data;
}
SmcCallbacks;

typedef void (*SmsSetPropertiesProc) (void);
typedef void (*SmsDeletePropertiesProc) (void);
typedef void (*SmsGetPropertiesProc) (void);

typedef struct
{
  SmsGetPropertiesProc callback;
  SmPointer manager_data;
}
SmsCallbacks;

typedef int (*SmsNewClientProc) (void);

typedef void (*SmcErrorHandler) (void);
typedef void (*SmsErrorHandler) (void);
1.8 Interfaces for libICE
Table 1-13 defines the library name and shared object name for the libICE library
Table 1-13 libICE Definition
Library:	libICE	
SONAME:	libICE.so.6	

The behavior of the interfaces in this library is specified by the following specifications:
X11 Inter-Client Exchange	

1.8.1 ICE Functions
1.8.1.1 Interfaces for ICE Functions
An LSB conforming implementation shall provide the generic functions for ICE Functions specified in Table 1-14, with the full functionality as described in the referenced underlying specification.
Table 1-14 libICE - ICE Functions Function Interfaces
IceAcceptConnection [1]	IceFreeAuthFileEntry [1]	IceListenForWellKnownConnections [1]	IceRemoveConnectionWatch [1]	
IceAddConnectionWatch [1]	IceFreeListenObjs [1]	IceLockAuthFile [1]	IceSetErrorHandler [1]	
IceAllocScratch [1]	IceGenerateMagicCookie [1]	IceOpenConnection [1]	IceSetHostBasedAuthProc [1]	
IceAppLockConn [1]	IceGetAuthFileEntry [1]	IcePing [1]	IceSetIOErrorHandler [1]	
IceAppUnlockConn [1]	IceGetConnectionContext [1]	IceProcessMessages [1]	IceSetPaAuthData [1]	
IceAuthFileName [1]	IceGetInBufSize [1]	IceProtocolRevision [1]	IceSetShutdownNegotiation [1]	
IceCheckShutdownNegotiation [1]	IceGetListenConnectionNumber [1]	IceProtocolSetup [1]	IceSwapping [1]	
IceCloseConnection [1]	IceGetListenConnectionString [1]	IceProtocolShutdown [1]	IceUnlockAuthFile [1]	
IceComposeNetworkIdList [1]	IceGetOutBufSize [1]	IceProtocolVersion [1]	IceVendor [1]	
IceConnectionNumber [1]	IceInitThreads [1]	IceReadAuthFileEntry [1]	IceWriteAuthFileEntry [1]	
IceConnectionStatus [1]	IceLastReceivedSequenceNumber [1]	IceRegisterForProtocolReply [1]	
	
IceConnectionString [1]	IceLastSentSequenceNumber [1]	IceRegisterForProtocolSetup [1]	
	
IceFlush [1]	IceListenForConnections [1]	IceRelease [1]	

Referenced Specification(s)
[1]. X11 Inter-Client Exchange
1.9 Data Definitions for libICE
This section defines global identifiers and their values that are associated with interfaces contained in libICE. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.
These definitions are intended to supplement those provided in the referenced underlying specifications.
This specification uses ISO/IEC 9899 C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.
1.9.1 X11/ICE/ICElib.h

typedef void *IcePointer;
typedef enum
{
  IcePoAuthHaveReply, IcePoAuthRejected, IcePoAuthFailed, IcePoAuthDoneCleanup
}
IcePoAuthStatus;
typedef enum
{
  IcePaAuthContinue, IcePaAuthAccepted, IcePaAuthRejected, IcePaAuthFailed
}
IcePaAuthStatus;
typedef enum
{
  IceConnectPending, IceConnectAccepted, IceConnectRejected, IceConnectIOError
}
IceConnectStatus;
typedef enum
{
  IceProtocolSetupSuccess, IceProtocolSetupFailure, IceProtocolSetupIOError,
    IceProtocolAlreadyActive
}
IceProtocolSetupStatus;
typedef enum
{
  IceAcceptSuccess, IceAcceptFailure, IceAcceptBadMalloc
}
IceAcceptStatus;
typedef enum
{
  IceClosedNow, IceClosedASAP, IceConnectionInUse,
    IceStartedShutdownNegotiation
}
IceCloseStatus;
typedef enum
{
  IceProcessMessagesSuccess, IceProcessMessagesIOError,
    IceProcessMessagesConnectionClosed
}
IceProcessMessagesStatus;

typedef struct
{
  unsigned long sequence_of_request;
  int major_opcode_of_request;
  int minor_opcode_of_request;
  IcePointer reply;
}
IceReplyWaitInfo;

typedef struct _IceConn *IceConn;
typedef struct _IceListenObj *IceListenObj;

typedef void (*IceWatchProc) (void);
typedef void (*IcePoProcessMsgProc) (void);
typedef void (*IcePaProcessMsgProc) (void);
typedef IcePoAuthStatus (*IcePoAuthProc) (void);
typedef IcePaAuthStatus (*IcePaAuthProc) (void);
typedef int (*IceHostBasedAuthProc) (void);
typedef int (*IceProtocolSetupProc) (void);
typedef void (*IceProtocolActivateProc) (void);
typedef void (*IceIOErrorProc) (void);
typedef void (*IcePingReplyProc) (void);
typedef void (*IceErrorHandler) (void);
typedef void (*IceIOErrorHandler) (void);

typedef struct
{
  int major_version;
  int minor_version;
  IcePoProcessMsgProc process_msg_proc;
}
IcePoVersionRec;
typedef struct
{
  int major_version;
  int minor_version;
  IcePaProcessMsgProc process_msg_proc;
}
IcePaVersionRec;
1.9.2 X11/ICE/ICEutil.h

typedef struct
{
  char *protocol_name;
  unsigned short protocol_data_length;
  char *protocol_data;
  char *network_id;
  char *auth_name;
  unsigned short auth_data_length;
  char *auth_data;
}
IceAuthFileEntry;
typedef struct
{
  char *protocol_name;
  char *network_id;
  char *auth_name;
  unsigned short auth_data_length;
  char *auth_data;
}
IceAuthDataEntry;
1.10 Interfaces for libXt
Table 1-15 defines the library name and shared object name for the libXt library
Table 1-15 libXt Definition
Library:	libXt	
SONAME:	libXt.so.6	

The behavior of the interfaces in this library is specified by the following specifications:
this specification	
X11 Toolkit Intrinsics	

1.10.1 X Toolkit
1.10.1.1 Interfaces for X Toolkit
An LSB conforming implementation shall provide the generic functions for X Toolkit specified in Table 1-16, with the full functionality as described in the referenced underlying specification.
Table 1-16 libXt - X Toolkit Function Interfaces
XtAddActions [1]	XtCvtColorToPixel [1]	XtGrabKeyboard [1]	XtRemoveEventHandler [1]	
XtAddCallback [1]	XtCvtIntToBool [1]	XtGrabPointer [1]	XtRemoveEventTypeHandler [1]	
XtAddCallbacks [1]	XtCvtIntToBoolean [1]	XtHasCallbacks [1]	XtRemoveGrab [1]	
XtAddConverter [1]	XtCvtIntToColor [1]	XtHooksOfDisplay [1]	XtRemoveInput [1]	
XtAddEventHandler [1]	XtCvtIntToFloat [1]	XtInitialize [1]	XtRemoveRawEventHandler [1]	
XtAddExposureToRegion [1]	XtCvtIntToFont [1]	XtInitializeWidgetClass [1]	XtRemoveSignal [1]	
XtAddGrab [1]	XtCvtIntToPixel [1]	XtInsertEventHandler [1]	XtRemoveTimeOut [1]	
XtAddInput [1]	XtCvtIntToPixmap [1]	XtInsertEventTypeHandler [1]	XtRemoveWorkProc [1]	
XtAddRawEventHandler [1]	XtCvtIntToShort [1]	XtInsertRawEventHandler [1]	XtReservePropertyAtom [1]	
XtAddSignal [1]	XtCvtIntToUnsignedChar [1]	XtInstallAccelerators [1]	XtResizeWidget [1]	
XtAddTimeOut [1]	XtCvtStringToAcceleratorTable [1]	XtInstallAllAccelerators [1]	XtResizeWindow [1]	
XtAddWorkProc [1]	XtCvtStringToAtom [1]	XtIsApplicationShell [1]	XtResolvePathname [1]	
XtAllocateGC [1]	XtCvtStringToBool [1]	XtIsComposite [1]	XtScreen [1]	
XtAppAddActionHook [1]	XtCvtStringToBoolean [1]	XtIsConstraint [1]	XtScreenDatabase [1]	
XtAppAddActions [1]	XtCvtStringToCommandArgArray [1]	XtIsManaged [1]	XtScreenOfObject [1]	
XtAppAddBlockHook [1]	XtCvtStringToCursor [1]	XtIsObject [1]	XtSendSelectionRequest [1]	
XtAppAddConverter [1]	XtCvtStringToDimension [1]	XtIsOverrideShell [1]	XtSessionGetToken [1]	
XtAppAddInput [1]	XtCvtStringToDirectoryString [1]	XtIsRealized [1]	XtSessionReturnToken [1]	
XtAppAddSignal [1]	XtCvtStringToDisplay [1]	XtIsRectObj [1]	XtSetErrorHandler [1]	
XtAppAddTimeOut [1]	XtCvtStringToFile [1]	XtIsSensitive [1]	XtSetErrorMsgHandler [1]	
XtAppAddWorkProc [1]	XtCvtStringToFloat [1]	XtIsSessionShell [1]	XtSetEventDispatcher [1]	
XtAppCreateShell [1]	XtCvtStringToFont [1]	XtIsShell [1]	XtSetKeyTranslator [1]	
XtAppError [1]	XtCvtStringToFontSet [1]	XtIsSubclass [1]	XtSetKeyboardFocus [1]	
XtAppErrorMsg [1]	XtCvtStringToFontStruct [1]	XtIsTopLevelShell [1]	XtSetLanguageProc [1]	
XtAppGetErrorDatabase [1]	XtCvtStringToGravity [1]	XtIsTransientShell [1]	XtSetMappedWhenManaged [1]	
XtAppGetErrorDatabaseText [1]	XtCvtStringToInitialState [1]	XtIsVendorShell [1]	XtSetMultiClickTime [1]	
XtAppGetExitFlag [1]	XtCvtStringToInt [1]	XtIsWMShell [1]	XtSetSelectionParameters [1]	
XtAppGetSelectionTimeout [1]	XtCvtStringToPixel [1]	XtIsWidget [1]	XtSetSelectionTimeout [1]	
XtAppInitialize [1]	XtCvtStringToRestartStyle [1]	XtKeysymToKeycodeList [1]	XtSetSensitive [1]	
XtAppLock [1]	XtCvtStringToShort [1]	XtLastEventProcessed [1]	XtSetSubvalues [1]	
XtAppMainLoop [1]	XtCvtStringToTranslationTable [1]	XtLastTimestampProcessed [1]	XtSetTypeConverter [1]	
XtAppNextEvent [1]	XtCvtStringToUnsignedChar [1]	XtMainLoop [1]	XtSetValues [1]	
XtAppPeekEvent [1]	XtCvtStringToVisual [1]	XtMakeGeometryRequest [1]	XtSetWMColormapWindows [1]	
XtAppPending [1]	XtDatabase [1]	XtMakeResizeRequest [1]	XtSetWarningHandler [1]	
XtAppProcessEvent [1]	XtDestroyApplicationContext [1]	XtMalloc [1]	XtSetWarningMsgHandler [1]	
XtAppReleaseCacheRefs [1]	XtDestroyGC [1]	XtManageChild [1]	XtStringConversionWarning [1]	
XtAppSetErrorHandler [1]	XtDestroyWidget [1]	XtManageChildren [1]	XtSuperclass [1]	
XtAppSetErrorMsgHandler [1]	XtDirectConvert [1]	XtMapWidget [1]	XtToolkitInitialize [1]	
XtAppSetExitFlag [1]	XtDisownSelection [1]	XtMenuPopupAction [1]	XtToolkitThreadInitialize [1]	
XtAppSetFallbackResources [1]	XtDispatchEvent [1]	XtMergeArgLists [1]	XtTranslateCoords [1]	
XtAppSetSelectionTimeout [1]	XtDispatchEventToWidget [1]	XtMoveWidget [1]	XtTranslateKey [1]	
XtAppSetTypeConverter [1]	XtDisplay [1]	XtName [1]	XtTranslateKeycode [1]	
XtAppSetWarningHandler [1]	XtDisplayInitialize [1]	XtNameToWidget [1]	XtUngrabButton [1]	
XtAppSetWarningMsgHandler [1]	XtDisplayOfObject [1]	XtNewString [1]	XtUngrabKey [1]	
XtAppUnlock [1]	XtDisplayStringConversionWarning [1]	XtNextEvent [1]	XtUngrabKeyboard [1]	
XtAppWarning [1]	XtDisplayToApplicationContext [1]	XtNoticeSignal [1]	XtUngrabPointer [1]	
XtAppWarningMsg [1]	XtError [1]	XtOpenApplication [1]	XtUninstallTranslations [1]	
XtAugmentTranslations [1]	XtErrorMsg [1]	XtOpenDisplay [1]	XtUnmanageChild [1]	
XtBuildEventMask [1]	XtFindFile [1]	XtOverrideTranslations [1]	XtUnmanageChildren [1]	
XtCallAcceptFocus [1]	XtFree [1]	XtOwnSelection [1]	XtUnmapWidget [1]	
XtCallActionProc [1]	XtGetActionKeysym [1]	XtOwnSelectionIncremental [1]	XtUnrealizeWidget [1]	
XtCallCallbackList [1]	XtGetActionList [1]	XtParent [1]	XtUnregisterDrawable [1]	
XtCallCallbacks [1]	XtGetApplicationNameAndClass [1]	XtParseAcceleratorTable [1]	XtVaAppCreateShell [1]	
XtCallConverter [1]	XtGetApplicationResources [1]	XtParseTranslationTable [1]	XtVaAppInitialize [1]	
XtCallbackExclusive [1]	XtGetClassExtension [1]	XtPeekEvent [1]	XtVaCreateArgsList [1]	
XtCallbackNone [1]	XtGetConstraintResourceList [1]	XtPending [1]	XtVaCreateManagedWidget [1]	
XtCallbackNonexclusive [1]	XtGetDisplays [1]	XtPopdown [1]	XtVaCreatePopupShell [1]	
XtCallbackPopdown [1]	XtGetErrorDatabase [1]	XtPopup [1]	XtVaCreateWidget [1]	
XtCallbackReleaseCacheRef [1]	XtGetErrorDatabaseText [1]	XtPopupSpringLoaded [1]	XtVaGetApplicationResources [1]	
XtCallbackReleaseCacheRefList [1]	XtGetGC [1]	XtProcessEvent [1]	XtVaGetSubresources [1]	
XtCalloc [1]	XtGetKeyboardFocusWidget [1]	XtProcessLock [1]	XtVaGetSubvalues [1]	
XtCancelSelectionRequest [1]	XtGetKeysymTable [1]	XtProcessUnlock [1]	XtVaGetValues [1]	
XtChangeManagedSet [1]	XtGetMultiClickTime [1]	XtQueryGeometry [1]	XtVaOpenApplication [1]	
XtClass [1]	XtGetResourceList [1]	XtRealizeWidget [1]	XtVaSetSubvalues [1]	
XtCloseDisplay [1]	XtGetSelectionParameters [1]	XtRealloc [1]	XtVaSetValues [1]	
XtConfigureWidget [1]	XtGetSelectionRequest [1]	XtRegisterCaseConverter [1]	XtWarning [1]	
XtConvert [1]	XtGetSelectionTimeout [1]	XtRegisterDrawable [1]	XtWarningMsg [1]	
XtConvertAndStore [1]	XtGetSelectionValue [1]	XtRegisterExtensionSelector [1]	XtWidgetToApplicationContext [1]	
XtConvertCase [1]	XtGetSelectionValueIncremental [1]	XtRegisterGrabAction [1]	XtWindow [1]	
XtCreateApplicationContext [1]	XtGetSelectionValues [1]	XtReleaseGC [1]	XtWindowOfObject [1]	
XtCreateApplicationShell [1]	XtGetSelectionValuesIncremental [1]	XtReleasePropertyAtom [1]	XtWindowToWidget [1]	
XtCreateManagedWidget [1]	XtGetSubresources [1]	XtRemoveActionHook [1]	_XtCheckSubclassFlag [1]	
XtCreatePopupShell [1]	XtGetSubvalues [1]	XtRemoveAllCallbacks [1]	_XtCopyFromArg [2]	
XtCreateSelectionRequest [1]	XtGetValues [1]	XtRemoveBlockHook [1]	_XtInherit [2]	
XtCreateWidget [1]	XtGrabButton [1]	XtRemoveCallback [1]	_XtIsSubclassOf [2]	
XtCreateWindow [1]	XtGrabKey [1]	XtRemoveCallbacks [1]	

Referenced Specification(s)
[1]. X11 Toolkit Intrinsics
[2]. this specification
An LSB conforming implementation shall provide the generic data interfaces for X Toolkit specified in Table 1-17, with the full functionality as described in the referenced underlying specification.
Table 1-17 libXt - X Toolkit Data Interfaces
XtCXtToolkitError [1]	constraintClassRec [1]	rectObjClass [1]	topLevelShellWidgetClass [1]	
XtShellStrings [1]	constraintWidgetClass [1]	rectObjClassRec [1]	transientShellClassRec [1]	
XtStrings [1]	coreWidgetClass [1]	sessionShellClassRec [1]	transientShellWidgetClass [1]	
_XtInheritTranslations [2]	objectClass [1]	sessionShellWidgetClass [1]	widgetClass [1]	
applicationShellWidgetClass [1]	objectClassRec [1]	shellClassRec [1]	widgetClassRec [1]	
compositeClassRec [1]	overrideShellClassRec [1]	shellWidgetClass [1]	wmShellClassRec [1]	
compositeWidgetClass [1]	overrideShellWidgetClass [1]	topLevelShellClassRec [1]	wmShellWidgetClass [1]	

Referenced Specification(s)
[1]. X11 Toolkit Intrinsics
[2]. this specification
1.11 Data Definitions for libXt
This section defines global identifiers and their values that are associated with interfaces contained in libXt. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.
These definitions are intended to supplement those provided in the referenced underlying specifications.
This specification uses ISO/IEC 9899 C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.
1.11.1 X11/Composite.h

typedef Cardinal (*XtOrderProc) (Widget child);
typedef void (*XtDoChangeProc) (Widget composite_parent,
                                WidgetList unmanage_children,
                                Cardinal * num_unmanage_children,
                                WidgetList manage_children,
                                Cardinal * num_manage_children,
                                XtPointer client_data);
1.11.2 X11/CompositeP.h

#define XtInheritGeometryManager        ((XtGeometryHandler) _XtInherit)
#define XtInheritDeleteChild    ((XtWidgetProc) _XtInherit)
#define XtInheritInsertChild    ((XtWidgetProc) _XtInherit)
#define XtCompositeExtensionVersion     2L

typedef struct _CompositeClassPart CompositeClassPart;

typedef struct _CompositeClassRec CompositeClassRec;
1.11.3 X11/ConstrainP.h

#define XtConstraintExtensionVersion    1L

typedef struct _ConstraintPart ConstraintPart;
typedef struct _ConstraintClassPart ConstraintClassPart;
typedef struct _ConstraintClassRec
{
  CoreClassPart core_class;
  CompositeClassPart composite_class;
  ConstraintClassPart constraint_class;
}
ConstraintClassRec;
1.11.4 X11/Constraint.h

typedef struct _ConstraintClassRec *ConstraintWidgetClass;
1.11.5 X11/Intrinsic.h

typedef struct _WidgetRec *Widget;
typedef Widget *WidgetList;
typedef struct _WidgetClassRec *WidgetClass;
typedef struct _CompositeRec *CompositeWidget;
typedef struct _XtActionsRec *XtActionList;
typedef struct _XtEventRec *XtEventTable;
typedef struct _XtAppStruct *XtAppContext;
typedef unsigned long XtValueMask;
typedef unsigned long XtIntervalId;
typedef unsigned long XtInputId;
typedef unsigned long XtSignalId;
typedef unsigned int XtGeometryMask;
typedef unsigned long XtGCMask;
typedef unsigned long Pixel;
typedef int XtCacheType;
typedef char Boolean;
typedef long XtArgVal;
typedef unsigned char XtEnum;
typedef unsigned int Cardinal;
typedef unsigned short Dimension;
typedef short Position;
typedef void *XtPointer;
typedef XtPointer Opaque;
1.11.6 X11/ObjectP.h

#define XtInheritAllocate       ((XtAllocateProc) _XtInherit)
#define XtInheritDeallocate     ((XtDeallocateProc) _XtInherit)
#define XtObjectExtensionVersion        1L

typedef struct _ObjectPart
{
  Widget self;
  WidgetClass widget_class;
  Widget parent;
  XrmName xrm_name;
  Boolean being_destroyed;
  XtCallbackList destroy_callbacks;
  XtPointer constraints;
}
ObjectPart;

typedef struct _ObjectRec
{
  ObjectPart object;
}
ObjectRec;

typedef struct _ObjectClassPart
{
  WidgetClass superclass;
  String class_name;
  Cardinal widget_size;
  XtProc class_initialize;
  XtWidgetClassProc class_part_initialize;
  XtEnum class_inited;
  XtInitProc initialize;
  XtArgsProc initialize_hook;
  XtProc obj1;
  XtProc obj2;
  XtProc obj3;
  XtResourceList resources;
  Cardinal num_resources;
  XrmClass xrm_class;
  Boolean obj4;
  XtEnum obj5;
  Boolean obj6;
  Boolean obj7;
  XtWidgetProc destroy;
  XtProc obj8;
  XtProc obj9;
  XtSetValuesFunc set_values;
  XtArgsFunc set_values_hook;
  XtProc obj10;
  XtArgsProc get_values_hook;
  XtProc obj11;
  XtVersionType version;
  XtPointer callback_private;
  String obj12;
  XtProc obj13;
  XtProc obj14;
  XtPointer extension;
}
ObjectClassPart;

struct
{
  XtPointer next_extension;
  XrmQuark record_type;
  long version;
  Cardinal record_size;
  XtAllocateProc allocate;
  XtDeallocateProc deallocate;
}
 ;

typedef struct
{
  XtPointer next_extension;
  XrmQuark record_type;
  long version;
  Cardinal record_size;
  XtAllocateProc allocate;
  XtDeallocateProc deallocate;
}
ObjectClassExtensionRec;
typedef struct
{
  XtPointer next_extension;
  XrmQuark record_type;
  long version;
  Cardinal record_size;
  XtAllocateProc allocate;
  XtDeallocateProc deallocate;
}
 *ObjectClassExtension;

typedef struct _ObjectClassRec
{
  ObjectClassPart object_class;
}
ObjectClassRec;
1.12 Interface Definitions for libXt
The following interfaces are included in libXt and are defined by this specification. Unless otherwise noted, these interfaces shall be included in the source standard.
Other interfaces listed above for libXt shall behave as described in the referenced base document.
_XtCopyFromArg
Name
_XtCopyFromArg — Copy "size" bytes from src to dst. 
Synopsis
void _XtCopyFromArg(XtArgVal src,char* dst,unsigned int size);
Description
The _XtCopyFromArg() function copies "size" bytes from src to dst. This is an internal X function call.
_XtInherit
Name
_XtInherit — inheritance operation.
Synopsis
#include <IntrinsicP.h>

extern void _XtInherit(
#if NeedFunctionPrototypes
    void
#endif
);
Description
_XtInherit() is a procedure that issues an error message if it is actually called.
_XtInheritTranslations
Name
_XtInheritTranslations — an inheritance constant
Synopsis
#include <CoreP.h>

externalref int _XtInheritTranslations;
Description
_XtInheritTranslations is an inheritance constant.
_XtIsSubclassOf
Name
_XtIsSubclassOf — determine if Widget is a subclass of WidgetClass.
Synopsis
#include <Intrinsic.h>

extern Boolean _XtIsSubclassOf(
    Widget              /* object*  /,
    WidgetClass         /* widget_class */,
    WidgetClass         /* flag_class */,
    _XtXtEnum           /* type_flag */,
);

Description
Determine if Widget(object) is a subclass of WidgetClass(widget_class).

II OpenGL Libraries

2 Libraries
2.1 Interfaces for libGL
Table 2-1 defines the library name and shared object name for the libGL library
Table 2-1 libGL Definition
Library:	libGL	
SONAME:	libGL.so.1	

The behavior of the interfaces in this library is specified by the following specifications:
OpenGL	

2.1.1 GL X interface
2.1.1.1 Interfaces for GL X interface
An LSB conforming implementation shall provide the generic functions for GL X interface specified in Table 2-2, with the full functionality as described in the referenced underlying specification.
Table 2-2 libGL - GL X interface Function Interfaces
glXChooseVisual [1]	glXDestroyGLXPixmap [1]	glXGetCurrentDisplay [1]	glXMakeContextCurrent [1]	glXSelectEvent [1]	
glXCopyContext [1]	glXDestroyPbuffer [1]	glXGetCurrentDrawable [1]	glXMakeCurrent [1]	glXSwapBuffers [1]	
glXCreateContext [1]	glXDestroyPixmap [1]	glXGetCurrentReadDrawable [1]	glXQueryContext [1]	glXUseXFont [1]	
glXCreateGLXPixmap [1]	glXDestroyWindow [1]	glXGetFBConfigAttrib [1]	glXQueryContextInfoEXT [1]	glXWaitGL [1]	
glXCreateNewContext [1]	glXFreeContextEXT [1]	glXGetProcAddressARB [1]	glXQueryDrawable [1]	glXWaitX [1]	
glXCreatePbuffer [1]	glXGetClientString [1]	glXGetSelectedEvent [1]	glXQueryExtension [1]	
	
glXCreatePixmap [1]	glXGetConfig [1]	glXGetVisualFromFBConfig [1]	glXQueryExtensionsString [1]	
	
glXCreateWindow [1]	glXGetContextIDEXT [1]	glXImportContextEXT [1]	glXQueryServerString [1]	
	
glXDestroyContext [1]	glXGetCurrentContext [1]	glXIsDirect [1]	glXQueryVersion [1]	

Referenced Specification(s)
[1]. OpenGL
2.1.2 OpenGL
2.1.2.1 Interfaces for OpenGL
An LSB conforming implementation shall provide the generic functions for OpenGL specified in Table 2-3, with the full functionality as described in the referenced underlying specification.
Table 2-3 libGL - OpenGL Function Interfaces
glAccum [1]	glDisable [1]	glIndexPointer [1]	glNormal3bv [1]	glTexCoord1dv [1]	
glActiveTextureARB [1]	glDisableClientState [1]	glIndexd [1]	glNormal3d [1]	glTexCoord1f [1]	
glAlphaFunc [1]	glDrawArrays [1]	glIndexdv [1]	glNormal3dv [1]	glTexCoord1fv [1]	
glAreTexturesResident [1]	glDrawBuffer [1]	glIndexf [1]	glNormal3f [1]	glTexCoord1i [1]	
glArrayElement [1]	glDrawElements [1]	glIndexfv [1]	glNormal3fv [1]	glTexCoord1iv [1]	
glBegin [1]	glDrawPixels [1]	glIndexi [1]	glNormal3i [1]	glTexCoord1s [1]	
glBindTexture [1]	glDrawRangeElements [1]	glIndexiv [1]	glNormal3iv [1]	glTexCoord1sv [1]	
glBitmap [1]	glEdgeFlag [1]	glIndexs [1]	glNormal3s [1]	glTexCoord2d [1]	
glBlendColor [1]	glEdgeFlagPointer [1]	glIndexsv [1]	glNormal3sv [1]	glTexCoord2dv [1]	
glBlendEquation [1]	glEdgeFlagv [1]	glIndexub [1]	glNormalPointer [1]	glTexCoord2f [1]	
glBlendFunc [1]	glEnable [1]	glIndexubv [1]	glOrtho [1]	glTexCoord2fv [1]	
glCallList [1]	glEnableClientState [1]	glInitNames [1]	glPassThrough [1]	glTexCoord2i [1]	
glCallLists [1]	glEnd [1]	glInterleavedArrays [1]	glPixelMapfv [1]	glTexCoord2iv [1]	
glClear [1]	glEndList [1]	glIsEnabled [1]	glPixelMapuiv [1]	glTexCoord2s [1]	
glClearAccum [1]	glEvalCoord1d [1]	glIsList [1]	glPixelMapusv [1]	glTexCoord2sv [1]	
glClearColor [1]	glEvalCoord1dv [1]	glIsTexture [1]	glPixelStoref [1]	glTexCoord3d [1]	
glClearDepth [1]	glEvalCoord1f [1]	glLightModelf [1]	glPixelStorei [1]	glTexCoord3dv [1]	
glClearIndex [1]	glEvalCoord1fv [1]	glLightModelfv [1]	glPixelTransferf [1]	glTexCoord3f [1]	
glClearStencil [1]	glEvalCoord2d [1]	glLightModeli [1]	glPixelTransferi [1]	glTexCoord3fv [1]	
glClientActiveTextureARB [1]	glEvalCoord2dv [1]	glLightModeliv [1]	glPixelZoom [1]	glTexCoord3i [1]	
glClipPlane [1]	glEvalCoord2f [1]	glLightf [1]	glPointSize [1]	glTexCoord3iv [1]	
glColor3b [1]	glEvalCoord2fv [1]	glLightfv [1]	glPolygonMode [1]	glTexCoord3s [1]	
glColor3bv [1]	glEvalMesh1 [1]	glLighti [1]	glPolygonOffset [1]	glTexCoord3sv [1]	
glColor3d [1]	glEvalMesh2 [1]	glLightiv [1]	glPolygonStipple [1]	glTexCoord4d [1]	
glColor3dv [1]	glEvalPoint1 [1]	glLineStipple [1]	glPopAttrib [1]	glTexCoord4dv [1]	
glColor3f [1]	glEvalPoint2 [1]	glLineWidth [1]	glPopClientAttrib [1]	glTexCoord4f [1]	
glColor3fv [1]	glFeedbackBuffer [1]	glListBase [1]	glPopMatrix [1]	glTexCoord4fv [1]	
glColor3i [1]	glFinish [1]	glLoadIdentity [1]	glPopName [1]	glTexCoord4i [1]	
glColor3iv [1]	glFlush [1]	glLoadMatrixd [1]	glPrioritizeTextures [1]	glTexCoord4iv [1]	
glColor3s [1]	glFogf [1]	glLoadMatrixf [1]	glPushAttrib [1]	glTexCoord4s [1]	
glColor3sv [1]	glFogfv [1]	glLoadName [1]	glPushClientAttrib [1]	glTexCoord4sv [1]	
glColor3ub [1]	glFogi [1]	glLogicOp [1]	glPushMatrix [1]	glTexCoordPointer [1]	
glColor3ubv [1]	glFogiv [1]	glMap1d [1]	glPushName [1]	glTexEnvf [1]	
glColor3ui [1]	glFrontFace [1]	glMap1f [1]	glRasterPos2d [1]	glTexEnvfv [1]	
glColor3uiv [1]	glFrustum [1]	glMap2d [1]	glRasterPos2dv [1]	glTexEnvi [1]	
glColor3us [1]	glGenLists [1]	glMap2f [1]	glRasterPos2f [1]	glTexEnviv [1]	
glColor3usv [1]	glGenTextures [1]	glMapGrid1d [1]	glRasterPos2fv [1]	glTexGend [1]	
glColor4b [1]	glGetBooleanv [1]	glMapGrid1f [1]	glRasterPos2i [1]	glTexGendv [1]	
glColor4bv [1]	glGetClipPlane [1]	glMapGrid2d [1]	glRasterPos2iv [1]	glTexGenf [1]	
glColor4d [1]	glGetColorTable [1]	glMapGrid2f [1]	glRasterPos2s [1]	glTexGenfv [1]	
glColor4dv [1]	glGetColorTableParameterfv [1]	glMaterialf [1]	glRasterPos2sv [1]	glTexGeni [1]	
glColor4f [1]	glGetColorTableParameteriv [1]	glMaterialfv [1]	glRasterPos3d [1]	glTexGeniv [1]	
glColor4fv [1]	glGetConvolutionFilter [1]	glMateriali [1]	glRasterPos3dv [1]	glTexImage1D [1]	
glColor4i [1]	glGetConvolutionParameterfv [1]	glMaterialiv [1]	glRasterPos3f [1]	glTexImage2D [1]	
glColor4iv [1]	glGetConvolutionParameteriv [1]	glMatrixMode [1]	glRasterPos3fv [1]	glTexImage3D [1]	
glColor4s [1]	glGetDoublev [1]	glMinmax [1]	glRasterPos3i [1]	glTexParameterf [1]	
glColor4sv [1]	glGetError [1]	glMultMatrixd [1]	glRasterPos3iv [1]	glTexParameterfv [1]	
glColor4ub [1]	glGetFloatv [1]	glMultMatrixf [1]	glRasterPos3s [1]	glTexParameteri [1]	
glColor4ubv [1]	glGetHistogram [1]	glMultiTexCoord1dARB [1]	glRasterPos3sv [1]	glTexParameteriv [1]	
glColor4ui [1]	glGetHistogramParameterfv [1]	glMultiTexCoord1dvARB [1]	glRasterPos4d [1]	glTexSubImage1D [1]	
glColor4uiv [1]	glGetHistogramParameteriv [1]	glMultiTexCoord1fARB [1]	glRasterPos4dv [1]	glTexSubImage2D [1]	
glColor4us [1]	glGetIntegerv [1]	glMultiTexCoord1fvARB [1]	glRasterPos4f [1]	glTexSubImage3D [1]	
glColor4usv [1]	glGetLightfv [1]	glMultiTexCoord1iARB [1]	glRasterPos4fv [1]	glTranslated [1]	
glColorMask [1]	glGetLightiv [1]	glMultiTexCoord1ivARB [1]	glRasterPos4i [1]	glTranslatef [1]	
glColorMaterial [1]	glGetMapdv [1]	glMultiTexCoord1sARB [1]	glRasterPos4iv [1]	glVertex2d [1]	
glColorPointer [1]	glGetMapfv [1]	glMultiTexCoord1svARB [1]	glRasterPos4s [1]	glVertex2dv [1]	
glColorSubTable [1]	glGetMapiv [1]	glMultiTexCoord2dARB [1]	glRasterPos4sv [1]	glVertex2f [1]	
glColorTable [1]	glGetMaterialfv [1]	glMultiTexCoord2dvARB [1]	glReadBuffer [1]	glVertex2fv [1]	
glColorTableParameterfv [1]	glGetMaterialiv [1]	glMultiTexCoord2fARB [1]	glReadPixels [1]	glVertex2i [1]	
glColorTableParameteriv [1]	glGetMinmax [1]	glMultiTexCoord2fvARB [1]	glRectd [1]	glVertex2iv [1]	
glConvolutionFilter1D [1]	glGetMinmaxParameterfv [1]	glMultiTexCoord2iARB [1]	glRectdv [1]	glVertex2s [1]	
glConvolutionFilter2D [1]	glGetMinmaxParameteriv [1]	glMultiTexCoord2ivARB [1]	glRectf [1]	glVertex2sv [1]	
glConvolutionParameterf [1]	glGetPixelMapfv [1]	glMultiTexCoord2sARB [1]	glRectfv [1]	glVertex3d [1]	
glConvolutionParameterfv [1]	glGetPixelMapuiv [1]	glMultiTexCoord2svARB [1]	glRecti [1]	glVertex3dv [1]	
glConvolutionParameteri [1]	glGetPixelMapusv [1]	glMultiTexCoord3dARB [1]	glRectiv [1]	glVertex3f [1]	
glConvolutionParameteriv [1]	glGetPointerv [1]	glMultiTexCoord3dvARB [1]	glRects [1]	glVertex3fv [1]	
glCopyColorSubTable [1]	glGetPolygonStipple [1]	glMultiTexCoord3fARB [1]	glRectsv [1]	glVertex3i [1]	
glCopyColorTable [1]	glGetSeparableFilter [1]	glMultiTexCoord3fvARB [1]	glRenderMode [1]	glVertex3iv [1]	
glCopyConvolutionFilter1D [1]	glGetString [1]	glMultiTexCoord3iARB [1]	glResetHistogram [1]	glVertex3s [1]	
glCopyConvolutionFilter2D [1]	glGetTexEnvfv [1]	glMultiTexCoord3ivARB [1]	glResetMinmax [1]	glVertex3sv [1]	
glCopyPixels [1]	glGetTexEnviv [1]	glMultiTexCoord3sARB [1]	glRotated [1]	glVertex4d [1]	
glCopyTexImage1D [1]	glGetTexGendv [1]	glMultiTexCoord3svARB [1]	glRotatef [1]	glVertex4dv [1]	
glCopyTexImage2D [1]	glGetTexGenfv [1]	glMultiTexCoord4dARB [1]	glScaled [1]	glVertex4f [1]	
glCopyTexSubImage1D [1]	glGetTexGeniv [1]	glMultiTexCoord4dvARB [1]	glScalef [1]	glVertex4fv [1]	
glCopyTexSubImage2D [1]	glGetTexImage [1]	glMultiTexCoord4fARB [1]	glScissor [1]	glVertex4i [1]	
glCopyTexSubImage3D [1]	glGetTexLevelParameterfv [1]	glMultiTexCoord4fvARB [1]	glSelectBuffer [1]	glVertex4iv [1]	
glCullFace [1]	glGetTexLevelParameteriv [1]	glMultiTexCoord4iARB [1]	glSeparableFilter2D [1]	glVertex4s [1]	
glDeleteLists [1]	glGetTexParameterfv [1]	glMultiTexCoord4ivARB [1]	glShadeModel [1]	glVertex4sv [1]	
glDeleteTextures [1]	glGetTexParameteriv [1]	glMultiTexCoord4sARB [1]	glStencilFunc [1]	glVertexPointer [1]	
glDepthFunc [1]	glHint [1]	glMultiTexCoord4svARB [1]	glStencilMask [1]	glViewport [1]	
glDepthMask [1]	glHistogram [1]	glNewList [1]	glStencilOp [1]	glXChooseFBConfig [1]	
glDepthRange [1]	glIndexMask [1]	glNormal3b [1]	glTexCoord1d [1]	

Referenced Specification(s)
[1]. OpenGL
2.2 Data Definitions for libGL
This section defines global identifiers and their values that are associated with interfaces contained in libGL. These definitions are organized into groups that correspond to system headers. This convention is used as a convenience for the reader, and does not imply the existence of these headers, or their content.
These definitions are intended to supplement those provided in the referenced underlying specifications.
This specification uses ISO/IEC 9899 C Language as the reference programming language, and data definitions are specified in ISO C format. The C language is used here as a convenient notation. Using a C language description of these data objects does not preclude their use by other programming languages.
2.2.1 GL/gl.h

typedef unsigned int GLenum;
typedef unsigned char GLboolean;
typedef unsigned int GLbitfield;
typedef void GLvoid;
typedef char GLbyte;
typedef short GLshort;
typedef int GLint;
typedef unsigned char GLubyte;
typedef unsigned short GLushort;
typedef unsigned int GLuint;
typedef int GLsizei;
typedef float GLfloat;
typedef float GLclampf;
typedef double GLdouble;
typedef double GLclampd;

#define GL_UNSIGNED_BYTE        0x1401
#define GL_SHORT        0x1402
#define GL_UNSIGNED_SHORT       0x1403
#define GL_INT  0x1404
#define GL_UNSIGNED_INT 0x1405
#define GL_FLOAT        0x1406
#define GL_2_BYTES      0x1407
#define GL_3_BYTES      0x1408
#define GL_4_BYTES      0x1409
#define GL_DOUBLE       0x140A

#define GL_POINTS       0x0000
#define GL_LINES        0x0001
#define GL_LINE_LOOP    0x0002
#define GL_LINE_STRIP   0x0003
#define GL_TRIANGLES    0x0004
#define GL_TRIANGLE_STRIP       0x0005
#define GL_TRIANGLE_FAN 0x0006
#define GL_QUADS        0x0007
#define GL_QUAD_STRIP   0x0008
#define GL_POLYGON      0x0009

#define GL_V2F  0x2A20
#define GL_V3F  0x2A21
#define GL_C4UB_V2F     0x2A22
#define GL_C4UB_V3F     0x2A23
#define GL_C3F_V3F      0x2A24
#define GL_N3F_V3F      0x2A25
#define GL_C4F_N3F_V3F  0x2A26
#define GL_T2F_V3F      0x2A27
#define GL_T4F_V4F      0x2A28
#define GL_T2F_C4UB_V3F 0x2A29
#define GL_T2F_C3F_V3F  0x2A2A
#define GL_T2F_N3F_V3F  0x2A2B
#define GL_T2F_C4F_N3F_V3F      0x2A2C
#define GL_T4F_C4F_N3F_V4F      0x2A2D
#define GL_VERTEX_ARRAY 0x8074
#define GL_NORMAL_ARRAY 0x8075
#define GL_COLOR_ARRAY  0x8076
#define GL_INDEX_ARRAY  0x8077
#define GL_TEXTURE_COORD_ARRAY  0x8078
#define GL_EDGE_FLAG_ARRAY      0x8079
#define GL_VERTEX_ARRAY_SIZE    0x807A
#define GL_VERTEX_ARRAY_TYPE    0x807B
#define GL_VERTEX_ARRAY_STRIDE  0x807C
#define GL_NORMAL_ARRAY_TYPE    0x807E
#define GL_NORMAL_ARRAY_STRIDE  0x807F
#define GL_COLOR_ARRAY_SIZE     0x8081
#define GL_COLOR_ARRAY_TYPE     0x8082
#define GL_COLOR_ARRAY_STRIDE   0x8083
#define GL_INDEX_ARRAY_TYPE     0x8085
#define GL_INDEX_ARRAY_STRIDE   0x8086
#define GL_TEXTURE_COORD_ARRAY_SIZE     0x8088
#define GL_TEXTURE_COORD_ARRAY_TYPE     0x8089
#define GL_TEXTURE_COORD_ARRAY_STRIDE   0x808A
#define GL_EDGE_FLAG_ARRAY_STRIDE       0x808C
#define GL_VERTEX_ARRAY_POINTER 0x808E
#define GL_NORMAL_ARRAY_POINTER 0x808F
#define GL_COLOR_ARRAY_POINTER  0x8090
#define GL_INDEX_ARRAY_POINTER  0x8091
#define GL_TEXTURE_COORD_ARRAY_POINTER  0x8092

#define GL_MATRIX_MODE  0x0BA0
#define GL_MODELVIEW    0x1700
#define GL_PROJECTION   0x1701
#define GL_TEXTURE      0x1702
2.2.2 GL/glx.h

typedef struct __GLXcontextRec *GLXContext;
typedef struct __GLXFBConfigRec *GLXFBConfig;
typedef XID GLXContextID;
typedef XID GLXPixmap;
typedef XID GLXDrawable;
typedef XID GLXPbuffer;
typedef XID GLXWindow;

III Package Information

3 Package Dependencies
3.1 Package Dependencies
The LSB runtime environment shall provide the following dependencies. 
lsb-graphics-arch
 	This dependency is used to indicate that the application is dependent on features contained in the LSB-Graphics module.
lsb-graphics-noarch
 	This dependency is used to indicate that the application is dependent on features contained in the LSB-Graphics module and that the package does not contain any architecture specific files.
The arch component of any package name is described in the relevant architecture specific LSB.

Free Documentation License

Free Documentation License

Contents
A GNU Free Documentation License	000
A.1 PREAMBLE	000
A.2 APPLICABILITY AND DEFINITIONS	000
A.3 VERBATIM COPYING	000
A.4 COPYING IN QUANTITY	000
A.5 MODIFICATIONS	000
A.6 COMBINING DOCUMENTS	000
A.7 COLLECTIONS OF DOCUMENTS	000
A.8 AGGREGATION WITH INDEPENDENT WORKS	000
A.9 TRANSLATION	000
A.10 TERMINATION	000
A.11 FUTURE REVISIONS OF THIS LICENSE	000
A.12 How to use this License for your documents	000

Annex A GNU Free Documentation License
Version 1.1, March 2000
Copyright (C) 2000 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed.
A.1 PREAMBLE
The purpose of this License is to make a manual, textbook, or other written document "free" in the sense of freedom: to assure everyone the effective freedom to copy and redistribute it, with or without modifying it, either commercially or noncommercially. Secondarily, this License preserves for the author and publisher a way to get credit for their work, while not being considered responsible for modifications made by others.
This License is a kind of "copyleft", which means that derivative works of the document must themselves be free in the same sense. It complements the GNU General Public License, which is a copyleft license designed for free software.
We have designed this License in order to use it for manuals for free software, because free software needs free documentation: a free program should come with manuals providing the same freedoms that the software does. But this License is not limited to software manuals; it can be used for any textual work, regardless of subject matter or whether it is published as a printed book. We recommend this License principally for works whose purpose is instruction or reference.
A.2 APPLICABILITY AND DEFINITIONS
This License applies to any manual or other work that contains a notice placed by the copyright holder saying it can be distributed under the terms of this License. The "Document", below, refers to any such manual or work. Any member of the public is a licensee, and is addressed as "you".
A "Modified Version" of the Document means any work containing the Document or a portion of it, either copied verbatim, or with modifications and/or translated into another language.
A "Secondary Section" is a named appendix or a front-matter section of the Document that deals exclusively with the relationship of the publishers or authors of the Document to the Document's overall subject (or to related matters) and contains nothing that could fall directly within that overall subject. (For example, if the Document is in part a textbook of mathematics, a Secondary Section may not explain any mathematics.) The relationship could be a matter of historical connection with the subject or with related matters, or of legal, commercial, philosophical, ethical or political position regarding them.
The "Invariant Sections" are certain Secondary Sections whose titles are designated, as being those of Invariant Sections, in the notice that says that the Document is released under this License.
The "Cover Texts" are certain short passages of text that are listed, as Front-Cover Texts or Back-Cover Texts, in the notice that says that the Document is released under this License.
A "Transparent" copy of the Document means a machine-readable copy, represented in a format whose specification is available to the general public, whose contents can be viewed and edited directly and straightforwardly with generic text editors or (for images composed of pixels) generic paint programs or (for drawings) some widely available drawing editor, and that is suitable for input to text formatters or for automatic translation to a variety of formats suitable for input to text formatters. A copy made in an otherwise Transparent file format whose markup has been designed to thwart or discourage subsequent modification by readers is not Transparent. A copy that is not "Transparent" is called "Opaque".
Examples of suitable formats for Transparent copies include plain ASCII without markup, Texinfo input format, LaTeX input format, SGML or XML using a publicly available DTD, and standard-conforming simple HTML designed for human modification. Opaque formats include PostScript, PDF, proprietary formats that can be read and edited only by proprietary word processors, SGML or XML for which the DTD and/or processing tools are not generally available, and the machine-generated HTML produced by some word processors for output purposes only.
The "Title Page" means, for a printed book, the title page itself, plus such following pages as are needed to hold, legibly, the material this License requires to appear in the title page. For works in formats which do not have any title page as such, "Title Page" means the text near the most prominent appearance of the work's title, preceding the beginning of the body of the text.
A.3 VERBATIM COPYING
You may copy and distribute the Document in any medium, either commercially or noncommercially, provided that this License, the copyright notices, and the license notice saying this License applies to the Document are reproduced in all copies, and that you add no other conditions whatsoever to those of this License. You may not use technical measures to obstruct or control the reading or further copying of the copies you make or distribute. However, you may accept compensation in exchange for copies. If you distribute a large enough number of copies you must also follow the conditions in section 3.
You may also lend copies, under the same conditions stated above, and you may publicly display copies.
A.4 COPYING IN QUANTITY
If you publish printed copies of the Document numbering more than 100, and the Document's license notice requires Cover Texts, you must enclose the copies in covers that carry, clearly and legibly, all these Cover Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on the back cover. Both covers must also clearly and legibly identify you as the publisher of these copies. The front cover must present the full title with all words of the title equally prominent and visible. You may add other material on the covers in addition. Copying with changes limited to the covers, as long as they preserve the title of the Document and satisfy these conditions, can be treated as verbatim copying in other respects.
If the required texts for either cover are too voluminous to fit legibly, you should put the first ones listed (as many as fit reasonably) on the actual cover, and continue the rest onto adjacent pages.
If you publish or distribute Opaque copies of the Document numbering more than 100, you must either include a machine-readable Transparent copy along with each Opaque copy, or state in or with each Opaque copy a publicly-accessible computer-network location containing a complete Transparent copy of the Document, free of added material, which the general network-using public has access to download anonymously at no charge using public-standard network protocols. If you use the latter option, you must take reasonably prudent steps, when you begin distribution of Opaque copies in quantity, to ensure that this Transparent copy will remain thus accessible at the stated location until at least one year after the last time you distribute an Opaque copy (directly or through your agents or retailers) of that edition to the public.
It is requested, but not required, that you contact the authors of the Document well before redistributing any large number of copies, to give them a chance to provide you with an updated version of the Document.
A.5 MODIFICATIONS
You may copy and distribute a Modified Version of the Document under the conditions of sections 2 and 3 above, provided that you release the Modified Version under precisely this License, with the Modified Version filling the role of the Document, thus licensing distribution and modification of the Modified Version to whoever possesses a copy of it. In addition, you must do these things in the Modified Version:
	A.	Use in the Title Page  (and on the covers, if any) a title distinct from that of the  Document, and from those of previous versions (which should, if  there were any, be listed in the History section of the  Document). You may use the same title as a previous version if  the original publisher of that version gives permission.
	B.	List on the Title Page,  as authors, one or more persons or entities responsible for  authorship of the modifications in the Modified Version,  together with at least five of the principal authors of the  Document (all of its principal authors, if it has less than  five).
	C.	State on the Title page  the name of the publisher of the Modified Version, as the  publisher.
	D.	Preserve all the  copyright notices of the Document.
	E.	Add an appropriate  copyright notice for your modifications adjacent to the other  copyright notices.
	F.	Include, immediately  after the copyright notices, a license notice giving the public  permission to use the Modified Version under the terms of this  License, in the form shown in the Addendum below.
	G.	Preserve in that license  notice the full lists of Invariant Sections and required Cover  Texts given in the Document's license notice.
	H.	Include an unaltered  copy of this License.
	I.	Preserve the section  entitled "History", and its title, and add to it an item stating  at least the title, year, new authors, and publisher of the  Modified Version as given on the Title Page. If there is no  section entitled "History" in the Document, create one stating  the title, year, authors, and publisher of the Document as given  on its Title Page, then add an item describing the Modified  Version as stated in the previous sentence.
	J.	Preserve the network  location, if any, given in the Document for public access to a  Transparent copy of the Document, and likewise the network  locations given in the Document for previous versions it was  based on. These may be placed in the "History" section. You  may omit a network location for a work that was published at  least four years before the Document itself, or if the original  publisher of the version it refers to gives permission.
	K.	In any section entitled  "Acknowledgements" or "Dedications", preserve the section's  title, and preserve in the section all the substance and tone of  each of the contributor acknowledgements and/or dedications  given therein.
	L.	Preserve all the  Invariant Sections of the Document, unaltered in their text and  in their titles. Section numbers or the equivalent are not  considered part of the section titles.
	M.	Delete any section  entitled "Endorsements". Such a section may not be included in  the Modified Version.
	N.	Do not retitle any  existing section as "Endorsements" or to conflict in title with  any Invariant Section.
If the Modified Version includes new front-matter sections or appendices that qualify as Secondary Sections and contain no material copied from the Document, you may at your option designate some or all of these sections as invariant. To do this, add their titles to the list of Invariant Sections in the Modified Version's license notice. These titles must be distinct from any other section titles.
You may add a section entitled "Endorsements", provided it contains nothing but endorsements of your Modified Version by various parties--for example, statements of peer review or that the text has been approved by an organization as the authoritative definition of a standard.
You may add a passage of up to five words as a Front-Cover Text, and a passage of up to 25 words as a Back-Cover Text, to the end of the list of Cover Texts in the Modified Version. Only one passage of Front-Cover Text and one of Back-Cover Text may be added by (or through arrangements made by) any one entity. If the Document already includes a cover text for the same cover, previously added by you or by arrangement made by the same entity you are acting on behalf of, you may not add another; but you may replace the old one, on explicit permission from the previous publisher that added the old one.
The author(s) and publisher(s) of the Document do not by this License give permission to use their names for publicity for or to assert or imply endorsement of any Modified Version.
A.6 COMBINING DOCUMENTS
You may combine the Document with other documents released under this License, under the terms defined in section 4 above for modified versions, provided that you include in the combination all of the Invariant Sections of all of the original documents, unmodified, and list them all as Invariant Sections of your combined work in its license notice.
The combined work need only contain one copy of this License, and multiple identical Invariant Sections may be replaced with a single copy. If there are multiple Invariant Sections with the same name but different contents, make the title of each such section unique by adding at the end of it, in parentheses, the name of the original author or publisher of that section if known, or else a unique number. Make the same adjustment to the section titles in the list of Invariant Sections in the license notice of the combined work.
In the combination, you must combine any sections entitled "History" in the various original documents, forming one section entitled "History"; likewise combine any sections entitled "Acknowledgements", and any sections entitled "Dedications". You must delete all sections entitled "Endorsements."
A.7 COLLECTIONS OF DOCUMENTS
You may make a collection consisting of the Document and other documents released under this License, and replace the individual copies of this License in the various documents with a single copy that is included in the collection, provided that you follow the rules of this License for verbatim copying of each of the documents in all other respects.
You may extract a single document from such a collection, and distribute it individually under this License, provided you insert a copy of this License into the extracted document, and follow this License in all other respects regarding verbatim copying of that document.
A.8 AGGREGATION WITH INDEPENDENT WORKS
A compilation of the Document or its derivatives with other separate and independent documents or works, in or on a volume of a storage or distribution medium, does not as a whole count as a Modified Version of the Document, provided no compilation copyright is claimed for the compilation. Such a compilation is called an "aggregate", and this License does not apply to the other self-contained works thus compiled with the Document, on account of their being thus compiled, if they are not themselves derivative works of the Document.
If the Cover Text requirement of section 3 is applicable to these copies of the Document, then if the Document is less than one quarter of the entire aggregate, the Document's Cover Texts may be placed on covers that surround only the Document within the aggregate. Otherwise they must appear on covers around the whole aggregate.
A.9 TRANSLATION
Translation is considered a kind of modification, so you may distribute translations of the Document under the terms of section 4. Replacing Invariant Sections with translations requires special permission from their copyright holders, but you may include translations of some or all Invariant Sections in addition to the original versions of these Invariant Sections. You may include a translation of this License provided that you also include the original English version of this License. In case of a disagreement between the translation and the original English version of this License, the original English version will prevail.
A.10 TERMINATION
You may not copy, modify, sublicense, or distribute the Document except as expressly provided for under this License. Any other attempt to copy, modify, sublicense or distribute the Document is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.
A.11 FUTURE REVISIONS OF THIS LICENSE
The Free Software Foundation may publish new, revised versions of the GNU Free Documentation License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. See http://www.gnu.org/copyleft/.
Each version of the License is given a distinguishing version number. If the Document specifies that a particular numbered version of this License "or any later version" applies to it, you have the option of following the terms and conditions either of that specified version or of any later version that has been published (not as a draft) by the Free Software Foundation. If the Document does not specify a version number of this License, you may choose any version ever published (not as a draft) by the Free Software Foundation.
A.12 How to use this License for your documents
To use this License in a document you have written, include a copy of the License in the document and put the following copyright and license notices just after the title page:
Copyright (c) YEAR YOUR NAME. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. A copy of the license is included in the section entitled "GNU Free Documentation License".
If you have no Invariant Sections, write "with no Invariant Sections" instead of saying which ones are invariant. If you have no Front-Cover Texts, write "no Front-Cover Texts" instead of "Front-Cover Texts being LIST"; likewise for Back-Cover Texts.
If your document contains nontrivial examples of program code, we recommend releasing these examples in parallel under your choice of free software license, such as the GNU General Public License, to permit their use in free software.