NAME
ggi_mode, ggi_coord, ggi_graphtype - LibGGI mode description
SYNOPSIS
#include <ggi/ggi.h>
typedef struct { int16_t x, y; } ggi_coord;
typedef uint32_t ggi_graphtype;
typedef struct {
int32_t frames;
ggi_coord visible;
ggi_coord virt;
ggi_coord size;
ggi_graphtype graphtype;
ggi_coord dpp;
} ggi_mode;
DESCRIPTION
The mode structure describes a visual configuration given by its size
and other graphic properties.
STRUCTURE MEMBERS
frames The number of frames. Some displays have multi-buffer
capabilities (double-buffering, triple-buffering,...). See
libggi frame-related functions
(ggi{s,g}et{Read,Write,Display}Frame) for information on working
with multiple frames.
visible
The size of the visible area in pixels. This is what the user
will see.
virt The virtual size of the visual in pixels. It can be larger (but
not smaller) than the visible area, in which case only a part of
it is displayed. It is useful for scrolling or backing up
portions of screen efficiently. See ggi[Set|Get]Origin
functions for more.
size The size of the visible area in mm.
graphtype
It holds information on the type of display. libggi defines
macros to construct graphtypes values or access individual
field.
depth ( access via GT_DEPTH(gt), GT_SETDEPTH(gt,x) )
The number of significant bits holding color information.
size ( access via GT_SIZE(gt), GT_SETSIZE(gt,x) )
The actual size (in bits) of a pixel. For instance, on a
32 bits X server the pixel size is 32 but the depth is
only 24 (8bits RGB channels, 8 unused).
scheme ( access via GT_SCHEME(gt), GT_SETSCHEME(gt,x) )
The following schemes are available :
· GT_TEXT : text mode only
· GT_TRUECOLOR : true color mode
· GT_GREYSCALE : pixels represent level of gray
· GT_PALETTE : pixels are entries in a CLUT (Color
Look-Up Table)
· GT_STATIC_PALETTE
· GT_SUBSAMPLE_YUV
· GT_SUBSAMPLE_U_YCRBR
· GT_SUBSAMPLE_S_YCRBR
· GT_NIL
subscheme ( access via GT_SUBSCHEME(gt), GT_SETSUBSCHEME(gt,x) )
One of:
· GT_SUB_REVERSE_ENDIAN
· GT_SUB_HIGHBIT_RIGHT
· GT_SUB_PACKED_GETPUT
Graphtypes can be constructed directly or via the
GT_CONSTRUCT(depth,scheme,size) macro. The following common
graphtypes are defined :
· GT_TEXT16
· GT_TEXT32
· GT_1BIT
· GT_2BIT
· GT_4BIT
· GT_8BIT
· GT_15BIT
· GT_16BIT
· GT_24BIT
· GT_32BIT
· GT_AUTO
· GT_INVALID
dpp It stands for dot-per-pixel.
When filling a mode structure for setting a visual, any field can be
assigned GGI_AUTO (GT_AUTO for graphtype) if a specific value isn’t
required.
SEE ALSO
ggiCheckMode(3), ggiSetMode(3)