#include <ggi/ggi.h> ggi_pixel ggiMapColor(ggi_visual_t vis, const ggi_color *col); int ggiUnmapPixel(ggi_visual_t vis, ggi_pixel pixel, ggi_color *col); int ggiPackColors(ggi_visual_t vis, void *buf, const ggi_color *cols, int len); int ggiUnpackPixels(ggi_visual_t vis, const void *buf, ggi_color *cols, int len);
ggiUnmapPixel gets the color associated with the given pixelvalue.
ggiPackColors converts the colors in cols to pixelvalues in buf. The output from this function is suitable for input to the ggiPut{HLine,VLine,Box} functions.
ggiUnpackPixels converts the pixelvalues in buf to individual elements of cols. This function may be used to convert buffers output by the ggiGet{HLine,VLine,Box} functions from the pixelvalue representation to their actual colors as defined by ggi_color(3).
The buffers output from ggiPackColors and the input to ggiUnpackPixels are in the same format as the get/put buffers. Their format is defined in ggi_pixelformat(3).
Try to cache the results of color lookups in your application for efficiency purposes.
ggiUnmapPixel, ggiPackColors and ggiUnpackPixels returns 0 for OK, otherwise a ggi-error(3) code.