xref: /OK3568_Linux_fs/external/xserver/fb/fbbits.c (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 /*
2  * Copyright © 1998 Keith Packard
3  *
4  * Permission to use, copy, modify, distribute, and sell this software and its
5  * documentation for any purpose is hereby granted without fee, provided that
6  * the above copyright notice appear in all copies and that both that
7  * copyright notice and this permission notice appear in supporting
8  * documentation, and that the name of Keith Packard not be used in
9  * advertising or publicity pertaining to distribution of the software without
10  * specific, written prior permission.  Keith Packard makes no
11  * representations about the suitability of this software for any purpose.  It
12  * is provided "as is" without express or implied warranty.
13  *
14  * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
15  * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
16  * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
17  * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
18  * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
19  * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
20  * PERFORMANCE OF THIS SOFTWARE.
21  */
22 
23 #ifdef HAVE_DIX_CONFIG_H
24 #include <dix-config.h>
25 #endif
26 
27 #include "fb.h"
28 #include "miline.h"
29 #include "mizerarc.h"
30 
31 #undef BRESSOLID
32 #undef BRESDASH
33 #undef DOTS
34 #undef ARC
35 #undef GLYPH
36 #undef BITS
37 #undef BITS2
38 #undef BITS4
39 
40 #define BRESSOLID   fbBresSolid8
41 #define BRESDASH    fbBresDash8
42 #define DOTS	    fbDots8
43 #define ARC	    fbArc8
44 #define GLYPH	    fbGlyph8
45 #define POLYLINE    fbPolyline8
46 #define POLYSEGMENT fbPolySegment8
47 #define BITS	    BYTE
48 #define BITS2	    CARD16
49 #define BITS4	    CARD32
50 
51 #include "fbbits.h"
52 
53 #undef BRESSOLID
54 #undef BRESDASH
55 #undef DOTS
56 #undef ARC
57 #undef GLYPH
58 #undef POLYLINE
59 #undef POLYSEGMENT
60 #undef BITS
61 #undef BITS2
62 #undef BITS4
63 
64 #define BRESSOLID   fbBresSolid16
65 #define BRESDASH    fbBresDash16
66 #define DOTS	    fbDots16
67 #define ARC	    fbArc16
68 #define GLYPH	    fbGlyph16
69 #define POLYLINE    fbPolyline16
70 #define POLYSEGMENT fbPolySegment16
71 #define BITS	    CARD16
72 #define BITS2	    CARD32
73 
74 #include "fbbits.h"
75 
76 #undef BRESSOLID
77 #undef BRESDASH
78 #undef DOTS
79 #undef ARC
80 #undef GLYPH
81 #undef POLYLINE
82 #undef POLYSEGMENT
83 #undef BITS
84 #undef BITS2
85 
86 #define BRESSOLID   fbBresSolid32
87 #define BRESDASH    fbBresDash32
88 #define DOTS	    fbDots32
89 #define ARC	    fbArc32
90 #define GLYPH	    fbGlyph32
91 #define POLYLINE    fbPolyline32
92 #define POLYSEGMENT fbPolySegment32
93 #define BITS	    CARD32
94 
95 #include "fbbits.h"
96 
97 #undef BRESSOLID
98 #undef BRESDASH
99 #undef DOTS
100 #undef ARC
101 #undef GLYPH
102 #undef POLYLINE
103 #undef POLYSEGMENT
104 #undef BITS
105