render/color.h (raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
#ifndef __color_h #define __color_h #include "render.h" #include <X11/Xlib.h> #include <X11/Xutil.h> #include <glib.h> #if (G_BYTE_ORDER == G_BIG_ENDIAN) #define default_red_offset 0 #define default_green_offset 8 #define default_blue_offset 16 #define default_alpha_offset 24 #define render_endian MSBFirst #else #define default_alpha_offset 24 #define default_red_offset 16 #define default_green_offset 8 #define default_blue_offset 0 #define render_endian LSBFirst #endif /* G_BYTE_ORDER == G_BIG_ENDIAN */ struct _RrColor { const RrInstance *inst; int r; int g; int b; unsigned long pixel; GC gc; }; void color_allocate_gc(color_rgb *in); XColor *pickColor(const RrInstance *inst, gint r, gint g, gint b); void reduce_depth(const RrInstance *inst, pixel32 *data, XImage *im); void increase_depth(const RrInstance *inst, pixel32 *data, XImage *im); #endif /* __color_h */ |