move around - flatter.
[profile/ivi/evas.git] / src / lib / engines / common / evas_convert_rgb_24.c
1 /*
2  * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
3  */
4
5 #include "evas_common.h"
6 #include "evas_convert_rgb_24.h"
7
8 #ifdef BUILD_CONVERT_24_RGB_888
9 void
10 evas_common_convert_rgba_to_24bpp_rgb_888(DATA32 *src, DATA8 *dst, int src_jump, int dst_jump, int w, int h, int dith_x, int dith_y, DATA8 *pal)
11 {
12    DATA32 *src_ptr;
13    DATA8 *dst_ptr;
14    int x, y;
15
16    dst_ptr = (DATA8 *)dst;
17    src_ptr = (DATA32 *)src;
18
19    for (y = 0; y < h; y++)
20      {
21         for (x = 0; x < w; x++)
22           {
23              dst_ptr[0] = R_VAL(src_ptr);
24              dst_ptr[1] = G_VAL(src_ptr);
25              dst_ptr[2] = B_VAL(src_ptr);
26              src_ptr++;
27              dst_ptr+=3;
28           }
29         src_ptr += src_jump;
30         dst_ptr += (dst_jump * 3);
31      }
32    return;
33    pal = 0;
34    dith_x = 0;
35    dith_y = 0;
36 }
37 #endif
38 #ifdef BUILD_CONVERT_24_BGR_888
39 void
40 evas_common_convert_rgba_to_24bpp_bgr_888(DATA32 *src, DATA8 *dst, int src_jump, int dst_jump, int w, int h, int dith_x, int dith_y, DATA8 *pal)
41 {
42    DATA32 *src_ptr;
43    DATA8 *dst_ptr;
44    int x, y;
45
46    dst_ptr = (DATA8 *)dst;
47    src_ptr = (DATA32 *)src;
48
49    for (y = 0; y < h; y++)
50      {
51         for (x = 0; x < w; x++)
52           {
53              dst_ptr[2] = R_VAL(src_ptr);
54              dst_ptr[1] = G_VAL(src_ptr);
55              dst_ptr[0] = B_VAL(src_ptr);
56              src_ptr++;
57              dst_ptr+=3;
58           }
59         src_ptr += src_jump;
60         dst_ptr += (dst_jump * 3);
61      }
62    return;
63    pal = 0;
64    dith_x = 0;
65    dith_y = 0;
66 }
67 #endif