]> Dogcows Code - chaz/openbox/blobdiff - render/color.h
added depth reduction and startup for true color visuals
[chaz/openbox] / render / color.h
index 1e0cc57a042723a705efc191064e53fe8c5777bf..202817d3054efcc7339c1fa90c90d3e0b83baf4c 100644 (file)
@@ -2,6 +2,37 @@
 #define __color_h
 
 #include <X11/Xlib.h>
+#include <X11/Xutil.h>
+
+#ifdef HAVE_STDINT_H 
+#  include <stdint.h>
+#else
+#  ifdef HAVE_SYS_TYPES_H
+#    include <sys/types.h>
+#  endif   
+#endif
+
+
+#ifdef HAVE_STDINT_H
+typedef uint32_t pixel32;
+typedef uint16_t pixel16;
+#else
+typedef u_int32_t pixel32;  
+typedef u_int16_t pixel16;   
+#endif /* HAVE_STDINT_H */  
+
+#if (G_ENDIAN == G_BIG_ENDIAN)
+#define default_red_shift 0
+#define default_green_shift 8
+#define default_blue_shift 16
+#define endian MSBFirst  
+#else
+#define default_red_shift 16
+#define default_green_shift 8
+#define default_blue_shift 0
+#define endian LSBFirst
+#endif /* G_ENDIAN == G_BIG_ENDIAN */
+
 
 typedef struct color_rgb {
     int r;
@@ -15,5 +46,14 @@ void color_allocate_gc(color_rgb *in);
 color_rgb *color_parse(char *colorname);
 color_rgb *color_new(int r, int g, int b);
 void color_free(color_rgb *in);
+void reduce_depth(pixel32 *data, XImage *im);
+
+extern int render_red_offset;
+extern int render_green_offset;
+extern int render_blue_offset;
+
+extern int render_red_shift;
+extern int render_green_shift;
+extern int render_blue_shift;
 
 #endif /* __color_h */
This page took 0.024108 seconds and 4 git commands to generate.