Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ glgetstring(3G) — IRIX 6.5.3f

Media Vault

Software Library

Restoration Projects

Artifacts Sought



glGetString(3G)                OpenGL Reference                glGetString(3G)



NAME
     glGetString - returns a string describing the current GL connection


C SPECIFICATION
     const GLubyte * glGetString( GLenum name )


PARAMETERS
     name  Specifies a symbolic constant, one of GLVENDOR, GLRENDERER,
           GLVERSION, or GLEXTENSIONS.

DESCRIPTION
     glGetString returns a pointer to a static string describing some aspect
     of the current GL connection.  name can be one of the following:

     GLVENDOR
             Returns the company responsible for this GL implementation.  This
             name does not change from release to release.  For Silicon
             Graphics the string is "SGI".

     GLRENDERER
             Returns the name of the renderer.  This name is typically
             specific to a particular configuration of a hardware platform.
             It does not change from release to release.  The renderer strings
             for Silicon Graphics graphic engines are listed in the MACHINE
             DEPENDENCIES section below.

     GLVERSION
             Returns a version or release number.  For SGI releases prior to
             Irix 5.3 the string is "1.0".  For Irix 5.3 and subsequent
             releases the format is
             "<GL version> Irix <release number> patch <patch number>"; for
             example in the Irix 5.3 release the string is "1.0 Irix 5.3".

     GLEXTENSIONS
             Returns a space-separated list of supported extensions to GL.

     Because the GL does not include queries for the performance
     characteristics of an implementation, some applications are written to
     recognize known platforms and modify their GL usage based on known
     performance characteristics of these platforms.  Strings GLVENDOR and
     GLRENDERER together uniquely specify a platform. They do not change from
     release to release and should be used by platform-recognition algorithms.

     Some applications want to make use of features that are not part of the
     standard GL.  These features may be implemented as extensions to the
     standard GL.  The GLEXTENSIONS string is a space seperated list of
     supported GL extensions. (Extension names never contain a space
     character.)





                                                                        Page 1





glGetString(3G)                OpenGL Reference                glGetString(3G)



     The GLVERSION string begins with a version number.  The version number
     uses one of these forms:

     major_number.minor_number
     major_number.minor_number.release_number

     Vendor-specific information may follow the version number. Its format
     depends on the implementation, but a space always separates the version
     number and the vendor-specific information.

     All strings are null-terminated.

NOTES
     If an error is generated, glGetString returns 0.

     The pointer returned by glGetString is only valid while the context
     exists that was current when glGetString was executed. The safe thing to
     do is to make a copy of the string if that context is to be destroyed.

     The client and server may support different versions or extensions.
     glGetString always returns a compatible version number or list of
     extensions. The release number always describes the server.

ERRORS
     GLINVALIDENUM is generated if name is not an accepted value.

     GLINVALIDOPERATION is generated if glGetString is executed between the
     execution of glBegin and the corresponding execution of glEnd.


MACHINE DEPENDENCIES
     The GLRENDERER strings returned by glGetString for each graphics system
     are listed below.  Square brackets ([,]) surround optional parts of the
     string, and angle brackets (<,>) surround multi-valued parts that are
     always present. Neither the square brackets nor the angle brackets are
     part of the string.

     Indy and XL: "NEWPORT <nplanes>", where nplanes is the number of
          configured bitplanes: 8 or 24.

     Personal Iris: "GR1.<version>[/24][/Z][/Turbo]", where version is the
          board version: 1 or 2; /24 indicates 24 bitplanes (otherwise 8); /Z
          indicates a hardware depth buffer; /Turbo indicates the "Turbo"
          option.

     VGX and VGXT: "VGX[T][<spans>]", where spans is either /5 or /10
          indicating the number of spans other than 20.

     Indigo Entry: "LIGHT".






                                                                        Page 2





glGetString(3G)                OpenGL Reference                glGetString(3G)



     O2: "CRIME".

     XS, XZ, Elan, and Extreme: "<type>-<graphics>", where type is one of
          GR2, GR3, GU1 or GR2MP and graphics is one of XS, XSM, XS24, XS24-Z,
          XZ, Elan, or Extreme, corresponding to the configuration of the
          graphics board.

     RealityEngine, RealityEngine2, and VTX: "<type>/<pixd>/<nrm>/<texsz>",
          where type is REC, RE, REV, RET, or RES, corresponding to Crimson,
          Power Series, Onyx/VTX with R4400, PowerOnyx with R8000, or
          Onyx/PowerOnyx with R10000; pixd is S, M, or L, corresponding to
          small, medium, or large pixel depth, respectively; nrm is 1, 2, or
          4, indicating the number of raster manager boards; texsz is 2 or 8
          indicating the size of the texture memory in megatexels.  (Each
          texel is 16 bits in size.)

     Solid Impact, High Impact and Maximum Impact: "IMPACT/<nge>/<nrss>/<texsz>",
          where nge is 1 or 2, corresponding to the number of GEs; nrss is 1
          or 2, corresponding to the number of raster subsystem boards; and
          texsz is 0, 1 or 4, corresponding to the size of texture memory in
          megabytes.

     InfiniteReality: "<type>/<pixd>/<nrm>/<texsz>/<nge>",
          where type is IR or IRS, corresponding to Onyx with R4400 or R10000,
          respectively; pixd is S, M, L, or X, corresponding to small, medium,
          large, or extra large pixel depth, respectively; nrm is 1, 2, or 4,
          indicating the number of raster manager boards; texsz is 16 or 64
          indicating the size of texture memory in megabytes; and nge
          indicates the number of Geometry Engines on the geometry engine
          board.

























                                                                        Page 3



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