int ggiDBGetBuffer(ggi_visual *vis, ggi_directbuffer_t *buf);If *buf is NULL, buf will point to the first buffer.
ggi_buffer_layout ggiDBGetLayout(ggi_directbuffer_t buf);Get the layout of a buffer.
typedef enum { blPixelLinearBuffer, blLastBufferLayout } ggi_buffer_layout;Return Code: Returns the layout type of the buffer.
ggi_pixellinearbuffer *ggiDBGetPLB(ggi_directbuffer_t buf);Get the ggi_pixellinearbuffer of a buffer.
typedef struct { void *read; /* buffer address for reads */ void *write; /* buffer address for writes */ ggi_uint page_size; /* zero for true linear buffers */ ggi_uint access; /* supported access widths */ ggi_uint align; /* alignment requirements */ ggi_uint swap; /* swapping requirements */ uintl write_mask; /* buffer layout */ ggi_uint bpp; /* bits per pixel */ ggi_sint stride; /* pixels per row */ ggi_coord origin; /* application area origin */ ggi_coord size; /* size of application area */ char colorstring[17];/* Define the meaning of the paColor? attributes. */ /* Enumerator for often used modes for fast checks. */ ggi_common_plb_setup setup; ggi_uint numpad; /* number of PADs */ ggi_pixelattributedesc pad[1]; /* allocate struct longer if necessary */ } ggi_pixellinearbuffer; /* Annotation : known colorstrings are : * - RGB * - CMY * - CMYK * - K (greyscale) * - I (indexed) * - YUV * - YCC */Return Code: Returns a pointer to the ggi_pixellinearbuffer structure of a buffer or NULL on error.