getgdesc(3G)
getgdesc - gets graphics system description
As shipped in IRIX 6.5.30. Unchanged since IRIX 6.5.
NAME getgdesc - gets graphics system description C SPECIFICATION long getgdesc(long inquiry) PARAMETERS inquiry is a symbolic constant taken from the list below. It identifies the characteristic about which you want to inquire. FUNCTION RETURN VALUE The function returns the value of the requested characteristic, or -1, if the request is invalid or its value cannot be determined. DESCRIPTION getgdesc allows you to inquire about characteristics of the currently selected screen. If the inquired characteristic is about bitplane configuration, getgdesc will return a value that indicates the absolute maximum resources available for the individual characteristic. It is not guaranteed that the bitplane configuration will reflect these values, as gconfig reconciles the various requests for resources. You must call getgconfig to find out the result of the compromises made by gconfig. You can call getgdesc prior to graphics initialization, as its return values are unaltered by any commands issued after initialization. The symbolic names of the inquiries and their meanings are specified below: Screen Boundary Inquiries GD_XMMAX GD_YMMAX Vertical and horizontal size of the screen in millimeters. GD_XPMAX GD_YPMAX Vertical and horizontal size of the screen in pixels. GD_ZMAX GD_ZMIN Maximum and minimum depth values that can be stored in the z-buffer of the normal framebuffer. Framebuffer Depth Inquiries GD_BITS_ACBUF Maximum number of bitplanes per color component in the hardware accumulation buffer, if one exists. Otherwise the number of bitplanes per color component in the software version of the accumulation buffer, if it is implemented. Otherwise 0. GD_BITS_ACBUF_HW Maximum number of bitplanes per color component in the hardware accumulation buffer, if one exists. Otherwise 0. GD_BITS_CURSOR Number of bitplanes available in the cursor. GD_BITS_NORM_DBL_ALPHA Maximum number of bitplanes available in the normal framebuffer to store alpha in double buffered RGB mode. GD_BITS_NORM_DBL_CMODE Maximum number of bitplanes available in the normal framebuffer to store the color index in double buffered color map mode. GD_BITS_NORM_DBL_MMAP Maximum number of bitplanes available in the normal framebuffer to store the color index in double buffered multimap mode. GD_BITS_NORM_DBL_RED GD_BITS_NORM_DBL_GREEN GD_BITS_NORM_DBL_BLUE Maximum number of bitplanes available in the normal framebuffer to store red, green, and blue in double buffered RGB mode. If any of these are 0, then double buffered RGB mode is not available. GD_BITS_NORM_SNG_ALPHA Maximum number of bitplanes available in the normal framebuffer to store alpha in single buffered RGB mode. GD_BITS_NORM_SNG_CMODE Maximum number of bitplanes available in the normal framebuffer to store the color index in single buffered color map mode. GD_BITS_NORM_SNG_MMAP Maximum number of bitplanes available in the normal framebuffer to store the color index in single buffered multimap mode. GD_BITS_NORM_SNG_RED GD_BITS_NORM_SNG_GREEN GD_BITS_NORM_SNG_BLUE Maximum number of bitplanes available in the normal framebuffer to store red, green, and blue in single buffered RGB mode. If any of these are 0, then single buffered RGB mode is not available. GD_BITS_NORM_ZBUFFER Maximum number of useful bitplanes in the z-buffer of the normal framebuffer, If 0, then there is no z-buffer. GD_BITS_OVER_SNG_CMODE Maximum number of bitplanes available in the overlay framebuffer to store the color index in single buffered color map mode. GD_BITS_PUP_SNG_CMODE Maximum number of bitplanes available in the popup framebuffer to store the color index in single buffered color map mode. GD_BITS_STENCIL Maximum number of bitplanes available in the normal framebuffer for use as stencil bitplanes. 0 if stencil is not functional. GD_BITS_UNDR_SNG_CMODE Maximum number of bitplanes available in the underlay framebuffer to store the color index in single buffered color map mode. Miscellaneous Inquiries GD_AFUNCTION 1 if afunction is functional, 0 if it is not. GD_AFUNCTION_MODES 1 if all afunction functions are supported, 0 if they are not. GD_ALPHA_OVERUNDER 1 if alpha bitplanes in the normal framebuffer can be allocated as color map bitplanes in the overlay or underlay framebuffers, 0 if they cannot. GD_BLEND 1 if blending is supported in all framebuffers that support RGB mode, 0 otherwise. (See blendfunction.) GD_BLENDCOLOR 1 if blendcolor is supported in all framebuffers that support RGB mode, 0 otherwise. GD_CIFRACT 1 if fractional interpolation of color indices is supported in all framebuffers, 0 otherwise. (See colorf.) GD_CLIPPLANES Number of user-defined clipping planes supported. 0 if none are supported. (See clipplane.) GD_CROSSHAIR_CINDEX Color index whose color map entry controls the color of the cross- hair cursor. GD_MUXPIPES Number of other graphics pipes available to be video multiplexed with the graphics pipe associated with the current screen. GD_DBBOX 1 if the dial and button box routines are functional, 0 if they are not. Unlike most of the others, this inquiry is independent of the currently selected screen. (See dbtext and setdblights.) GD_DITHER 1 if dithering is supported. 0 otherwise. GD_FOGVERTEX 1 if fogvertex supports the per vertex fog modes, namely FG_VTX_EXP, FG_VTX_EXP2, and FG_VTX_LIN. 0 if it does not. GD_FOGPIXEL 1 if fogvertex supports the per pixel fog modes, namely FG_PIX_EXP, FG_PIX_EXP2, and FG_PIX_LIN. 0 if it does not. GD_IS_NATIVE 0 if the IrisGL implementation is layered on OpenGL. GD_FRAMEGRABBER 1 if readsource(SRC_FRAMEGRABBER) is functional, 0 if it is not. GD_LIGHTING_ATT2 1 if the ATTENUATION2 lighting model attribute is functional, 0 if it is not. (See lmdef.) GD_LIGHTING_SPOTLIGHT 1 if spotlights are functional, 0 if they are not. (See lmdef.) GD_LIGHTING_TWOSIDE 1 if the TWOSIDE lighting model attribute is functional, 0 if it is not. (See lmdef.) GD_LINESMOOTH_CMODE 1 if antialiased lines are supported in the normal framebuffer in color map mode, 0 otherwise. (See linesmooth.) GD_LINESMOOTH_RGB 1 if antialiased lines are supported in RGB mode in all framebuffers that support RGB mode, 0 otherwise. (See linesmooth.) GD_LOGICOP 1 if logical operations are supported in all framebuffers, 2 if only in the normal framebuffer, and 0 otherwise. (See logicop.) GD_MULTISAMPLE 1 if the multisample routines are functional, 0 if they are not. GD_NBLINKS Maximum number of blinking color map entries on the selected screen. If the value is non-zero, it will be at least 20. (See blink.) GD_NMMAPS Number of smaller color maps available to the user in multimap mode. On some models, the highest-numbered color map is reserved for use by the system. (See setmap.) GD_NSCRNS Number of screens available on the system. Unlike most of the others, this inquiry is independent of the currently selected screen. GD_NURBS_ORDER Maximum order of any NURBS surface, NURBS curve, and NURBS trimming curve. GD_NVERTEX_POLY Maximum number of vertices in a single polygon. If there is no limit, then GD_NOLIMIT is returned. GD_OVERUNDER_SHARED 1 if overlay and underlay planes are shared, 0 if both can be used simultaneously. GD_PATSIZE_64 1 if 64x64 patterns are supported, 0 otherwise. (See defpattern.) GD_PNTSMOOTH_CMODE 1 if antialiased points are supported in the normal framebuffer in color map mode, 0 otherwise. (See pntsmooth.) GD_PNTSMOOTH_RGB 1 if antialiased points are supported in RGB mode in all framebuffers that support RGB mode, 0 otherwise. (See pntsmooth.) GD_POLYMODE 1 if polymode is functional, 0 if it is not. GD_POLYSMOOTH 1 if antialiased polygons are supported in RGB mode in all framebuffers that support RGB mode, 0 otherwise. (See polysmooth.) GD_PUP_TO_OVERUNDER 1 if the popup bitplanes can be allocated as color map bitplanes in the overlay or underlay framebuffers, 0 if they cannot. GD_READSOURCE 1 if readsource sources SRC_AUTO, SRC_FRONT, and SRC_BACK are functional, 0 if they are not. GD_READSOURCE_ZBUFFER 1 if readsource(SRC_ZBUFFER) is functional, 0 if it is not. GD_SCRBOX 1 if scrbox is functional, 0 if it is not. GD_SCRNTYPE Type of the currently selected screen. Returns GD_SCRNTYPE_WM if there is window management on the screen or GD_SCRNTYPE_NOWM if there isn't. There can be at most one window open on screens of the latter type. GD_STEREO 1 if setmonitor(STR_RECT) is functional, 0 if it is not. GD_STEREO_IN_WINDOW 1 if per-window stereo is functional, 0 if it is not. (See stereobuffer.) GD_SUBPIXEL_LINE GD_SUBPIXEL_PNT GD_SUBPIXEL_POLY 1 if subpixel positioned lines, points, and polygons (respectively) are supported in all framebuffers, 0 otherwise. (See subpixel.) GD_TEXTPORT 1 if the textport routines are functional, 0 if they are not. Unlike most of the others, this inquiry is independent of the currently selected screen. (See textport.) GD_TEXTURE 1 if texture mapping routines are functional, 0 if they are not. (See texdef2d.) GD_TEXTURE_3D 1 if 3D texture mapping routines are functional, 0 if they are not. (See texdef3d.) GD_TEXTURE_DETAIL 1 if TX_DETAIL is functional, 0 if it is not. (See texdef.) GD_TEXTURE_LUT 1 if texture lookup tables are functional, 0 if they are not. (See tlutdef.) GD_TEXTURE_SHARP 1 if TX_SHARPEN is functional, 0 if it is not. (See texdef.) GD_TIMERHZ Frequency of graphics timer events. GD_TRIMCURVE_ORDER Maximum order of a trimming curve. GD_WSYS Type of window system running on the machine. Returns GD_WSYS_4S if a windowing system is currently running or GD_WSYS_NONE if there is no window system currently running. Unlike most of the others, this inquiry is independent of the currently selected screen. GD_ZDRAW_GEOM GD_ZDRAW_PIXELS 1 if routines that render geometry and routines that render pixels (respectively) will do it into the z-buffer when zdraw is TRUE, 0 if they do not. SEE ALSO gversion, scrnselect NOTES This routine is available only in immediate mode. To inquire about the screen on which the current window is displayed, use the following sequence: long savescrn; ... savescrn = scrnselect(getwscrn()); val1 = getgdesc(inquiry1); val2 = getgdesc(inquiry2); ... scrnselect(savescrn);