#include "render.h"
#include "color.h"
-XColor *pseudo_colors;
-int pseudo_bpc;
-
-void color_allocate_gc(RrColor *in)
+void RrColorAllocateGC(RrColor *in)
{
XGCValues gcv;
}
}
-void reduce_depth(const RrInstance *inst, RrPixel32 *data, XImage *im)
+void RrReduceDepth(const RrInstance *inst, RrPixel32 *data, XImage *im)
{
int r, g, b;
int x,y;
if ((RrRedOffset(inst) != RrDefaultRedOffset) ||
(RrBlueOffset(inst) != RrDefaultBlueOffset) ||
(RrGreenOffset(inst) != RrDefaultGreenOffset)) {
+ g_message("CONVERSION %d->%d %d->%d %d->%d",
+ RrDefaultRedOffset, RrRedOffset(inst),
+ RrDefaultBlueOffset, RrGreenOffset(inst),
+ RrDefaultGreenOffset, RrBlueOffset(inst));
for (y = 0; y < im->height; y++) {
for (x = 0; x < im->width; x++) {
r = (data[x] >> RrDefaultRedOffset) & 0xFF;
g = (data[x] >> RrDefaultGreenOffset) & 0xFF;
b = (data[x] >> RrDefaultBlueOffset) & 0xFF;
- p32[x] = (r << RrRedShift(inst))
- + (g << RrGreenShift(inst))
- + (b << RrBlueShift(inst));
+ p32[x] = (r << RrRedOffset(inst))
+ + (g << RrGreenOffset(inst))
+ + (b << RrBlueOffset(inst));
}
data += im->width;
p32 += im->width;
g_assert(RrVisual(inst)->class != TrueColor);
for (y = 0; y < im->height; y++) {
for (x = 0; x < im->width; x++) {
- p8[x] = pickColor(inst,
- data[x] >> RrDefaultRedOffset,
- data[x] >> RrDefaultGreenOffset,
- data[x] >> RrDefaultBlueOffset)->pixel;
+ p8[x] = RrPickColor(inst,
+ data[x] >> RrDefaultRedOffset,
+ data[x] >> RrDefaultGreenOffset,
+ data[x] >> RrDefaultBlueOffset)->pixel;
}
data += im->width;
p8 += im->bytes_per_line;
}
}
-XColor *pickColor(const RrInstance *inst, gint r, gint g, gint b)
+XColor *RrPickColor(const RrInstance *inst, gint r, gint g, gint b)
{
- r = (r & 0xff) >> (8-pseudo_bpc);
- g = (g & 0xff) >> (8-pseudo_bpc);
- b = (b & 0xff) >> (8-pseudo_bpc);
- return &RrPseudoColors(inst)[(r << (2*pseudo_bpc)) +
- (g << (1*pseudo_bpc)) +
+ r = (r & 0xff) >> (8-RrPseudoBPC(inst));
+ g = (g & 0xff) >> (8-RrPseudoBPC(inst));
+ b = (b & 0xff) >> (8-RrPseudoBPC(inst));
+ return &RrPseudoColors(inst)[(r << (2*RrPseudoBPC(inst))) +
+ (g << (1*RrPseudoBPC(inst))) +
b];
}
im->byte_order = LSBFirst;
}
-void increase_depth(const RrInstance *inst, RrPixel32 *data, XImage *im)
+void RrIncreaseDepth(const RrInstance *inst, RrPixel32 *data, XImage *im)
{
int r, g, b;
int x,y;