glGetString(3G) OpenGL Reference glGetString(3G)
glGetString - return a string describing the current GL connection
const GLubyte * glGetString( GLenum name )
name Specifies a symbolic constant, one of GL_VENDOR, GL_RENDERER,
GL_VERSION, or GL_EXTENSIONS.
glGetString returns a pointer to a static string describing some aspect
of the current GL connection. name can be one of the following:
GL_VENDOR Returns the company responsible for this GL
implementation. This name does not change from
release to release. For Silicon Graphics the string
is "SGI".
GL_RENDERER 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.
GL_VERSION 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". Beginning with Irix 6.5, the GL
version number may be 1.1 or 1.2, depending on the
particular graphics hardware.
GL_EXTENSIONS 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 GL_VENDOR and
GL_RENDERER 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 GL_EXTENSIONS string is a space-separated list of
supported GL extensions. (Extension names never contain a space
character.)
Page 1
glGetString(3G) OpenGL Reference glGetString(3G)
The GL_VERSION 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.
If an error is generated, glGetString returns 0.
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.
GL_INVALID_ENUM is generated if name is not an accepted value.
GL_INVALID_OPERATION is generated if glGetString is executed between the
execution of glBegin and the corresponding execution of glEnd.
MACHINE DEPENDENCIES
The GL_RENDERER 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".
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.
Page 2
glGetString(3G) OpenGL Reference glGetString(3G)
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.
Octane2 VPro: "VPRO/<rev>/<memsz>",
where rev is the hardware revision letter, and memsz is the amount
of unified graphics memory in megabytes.
PPPPaaaaggggeeee 3333 [ Back ]
|