ggi_mode

Section: GGI (3)
Updated: 2006-12-30
Page Index
 

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)


 

Index

NAME
SYNOPSIS
DESCRIPTION
STRUCTURE MEMBERS
SEE ALSO