]> git.sesse.net Git - ccbs/blob - bigscreen/tinyptc/mmx.h
Import TinyPTC 0.7.3 sources, switch from OpenGL to TinyPTC for now.
[ccbs] / bigscreen / tinyptc / mmx.h
1 /*
2  * TinyPTC x11 v0.7.3 MMX-Optimized pixelformat converters
3  * Copyright (C) 2000-2002 Alessandro Gatti <a.gatti@tiscali.it>
4  * Copyright (C) 2000-2001 Glenn Fiedler <gaffer@gaffer.org>
5  *
6  * http://www.sourceforge.net/projects/tinyptc/
7  *
8  * This library is free software; you can redistribute it and/or
9  * modify it under the terms of the GNU Lesser General Public
10  * License as published by the Free Software Foundation; either
11  * version 2 of the License, or (at your option) any later version.
12  *
13  * This library is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16  * Lesser General Public License for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public
19  * License along with this library; if not, write to the Free Software
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
21  *
22  */
23
24 #ifndef __TINYPTC_MMX_H
25 #define __TINYPTC_MMX_H
26
27 #include "tinyptc.h"
28
29 #define __PTC_MMX_CONVERT_32_TO_32_BGR888
30 #define __PTC_MMX_CONVERT_32_TO_32_RGB888
31 #define __PTC_MMX_CONVERT_32_TO_24_BGR888
32 #define __PTC_MMX_CONVERT_32_TO_24_RGB888
33 #define __PTC_MMX_CONVERT_32_TO_16_BGR565
34 #define __PTC_MMX_CONVERT_32_TO_16_RGB565
35 #define __PTC_MMX_CONVERT_32_TO_16_BGR555
36 #define __PTC_MMX_CONVERT_32_TO_16_RGB555
37
38 #ifdef __cplusplus
39         extern "C" {
40 #endif /* __cplusplus */
41
42 #ifdef __PTC_MMX__
43 void mmx_memcpy (void *d, void *s, int bytes);
44 #endif /* __PTC_MMX__ */
45
46 #ifdef __PTC_MMX_CONVERT_32_TO_32_BGR888
47 void mmx_convert_32_to_32_bgr888 (void *d, void *s, int pixels);
48 #endif /* __PTC_MMX_CONVER_32_TO_32_BGR888 */
49
50 #ifdef __PTC_MMX_CONVERT_32_TO_32_RGB888
51 void mmx_convert_32_to_24_rgb888 (void *d, void *s, int pixels);
52 #endif /* __PTC_MMX_CONVERT_32_TO_32_RGB888 */
53
54 #ifdef __PTC_MMX_CONVERT_32_TO_24_BGR888
55 void mmx_convert_32_to_24_bgr888 (void *d, void *s, int pixels);
56 #endif /* __PTC_MMX_CONVERT_32_TO_24_BGR888 */
57
58 #ifdef __PTC_MMX_CONVERT_32_TO_16_BGR565
59 void mmx_convert_32_to_16_rgb565 (void *d, void *s, int pixels);
60 #endif /* __PTC_MMX_CONVERT_32_TO_16_BGR565 */
61
62 #ifdef __PTC_MMX_CONVERT_32_TO_16_RGB565
63 void mmx_convert_32_to_16_bgr565 (void *d, void *s, int pixels);
64 #endif /* __PTC_MMX_CONVERT_32_TO_16_RGB565 */
65
66 #ifdef __PTC_MMX_CONVERT_32_TO_16_BGR555
67 void mmx_convert_32_to_16_rgb555 (void *d, void *s, int pixels);
68 #endif /* __PTC_MMX_CONVERT_32_TO_16_BGR555 */
69
70 #ifdef __PTC_MMX_CONVERT_32_TO_16_RGB555
71 void mmx_convert_32_to_16_bgr555 (void *d, void *s, int pixels);
72 #endif /* __PTC_MMX_CONVERT_32_TO_16_RGB555 */
73
74 #ifdef __cplusplus
75         }
76 #endif /* __cplusplus */
77
78 #endif /* __TINYPTC_MMX_H */