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. Table of Contents Specification Introduction Graphics Specification Free Documentation License Specification Introduction _________________________________________________________ Table of Contents Foreword Introduction I. Introductory Elements 1. Scope 2. Normative References 3. Requirements 3.1. Relevant Libraries 4. Definitions 5. Terminology List of Tables 2-1. Normative References 3-1. Standard Library Names _________________________________________________________ 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 Table of Contents 1. Scope 2. Normative References 3. Requirements 4. Definitions 5. Terminology _________________________________________________________ Chapter 1. Scope The LSB Graphics defines the graphical interface found on an LSB conforming system. _________________________________________________________ Chapter 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/ _________________________________________________________ Chapter 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. _________________________________________________________ Chapter 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 _________________________________________________________ Chapter 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 _________________________________________________________ Table of Contents I. Graphic Libraries 1. Libraries 1.1. Interfaces for libX11 1.2. Data Definitions for libX11 1.3. Interface Definitions for libX11 1.4. Interfaces for libXext 1.5. Data Definitions for libXext 1.6. Interfaces for libSM 1.7. Data Definitions for libSM 1.8. Interfaces for libICE 1.9. Data Definitions for libICE 1.10. Interfaces for libXt 1.11. Data Definitions for libXt 1.12. Interface Definitions for libXt II. OpenGL Libraries 2. Libraries 2.1. Interfaces for libGL 2.2. Data Definitions for libGL III. Package Information 3. Package Dependencies 3.1. Package Dependencies List of Tables 1-1. libX11 Definition 1-2. libX11 - X Windows System Interface Function Interfaces 1-3. libX11 - X Windows System Interface Data Interfaces 1-4. libXext Definition 1-5. libXext - X Shape Extension Function Interfaces 1-6. libXext - X Display Power Management Signaling Extension Function Interfaces 1-7. libXext - X Shared Memory Extensions Function Interfaces 1-8. libXext - X Synchronization Extension Function Interfaces 1-9. libXext - X Security Extension Function Interfaces 1-10. libXext - X Double Buffer Extension Function Interfaces 1-11. libSM Definition 1-12. libSM - Session Management Functions Function Interfaces 1-13. libICE Definition 1-14. libICE - ICE Functions Function Interfaces 1-15. libXt Definition 1-16. libXt - X Toolkit Function Interfaces 1-17. libXt - X Toolkit Data Interfaces 2-1. libGL Definition 2-2. libGL - GL X interface Function Interfaces 2-3. libGL - OpenGL Function Interfaces I. Graphic Libraries Table of Contents 1. Libraries _________________________________________________________ Chapter 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, XSyncPositiveCompar ison, 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, IcePoAuthDone Cleanup } IcePoAuthStatus; typedef enum { IcePaAuthContinue, IcePaAuthAccepted, IcePaAuthRejected, IcePaAuthFai led } IcePaAuthStatus; typedef enum { IceConnectPending, IceConnectAccepted, IceConnectRejected, IceConnect IOError } IceConnectStatus; typedef enum { IceProtocolSetupSuccess, IceProtocolSetupFailure, IceProtocolSetupIOE rror, 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 Table of Contents _XtCopyFromArg -- Copy "size" bytes from src to dst. _XtInherit -- inheritance operation. _XtInheritTranslations -- an inheritance constant _XtIsSubclassOf -- determine if Widget is a subclass of WidgetClass. 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 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 externalref int _XtInheritTranslations; Description _XtInheritTranslations is an inheritance constant. _XtIsSubclassOf Name _XtIsSubclassOf -- determine if Widget is a subclass of WidgetClass. Synopsis #include 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 Table of Contents 2. Libraries _________________________________________________________ Chapter 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 Table of Contents 3. Package Dependencies _________________________________________________________ Chapter 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 _________________________________________________________ Table of Contents A. GNU Free Documentation License A.1. PREAMBLE A.2. APPLICABILITY AND DEFINITIONS A.3. VERBATIM COPYING A.4. COPYING IN QUANTITY A.5. MODIFICATIONS A.6. COMBINING DOCUMENTS A.7. COLLECTIONS OF DOCUMENTS A.8. AGGREGATION WITH INDEPENDENT WORKS A.9. TRANSLATION A.10. TERMINATION A.11. FUTURE REVISIONS OF THIS LICENSE A.12. How to use this License for your documents _________________________________________________________ Appendix 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.