Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/thirdparty/linuxbsd_headers/X11/extensions/render.h
9905 views
1
/*
2
* Copyright © 2000 SuSE, Inc.
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 SuSE not be used in advertising or
9
* publicity pertaining to distribution of the software without specific,
10
* written prior permission. SuSE makes no representations about the
11
* suitability of this software for any purpose. It is provided "as is"
12
* without express or implied warranty.
13
*
14
* SuSE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
15
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
16
* BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
17
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
18
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
19
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20
*
21
* Author: Keith Packard, SuSE, Inc.
22
*/
23
24
#ifndef _RENDER_H_
25
#define _RENDER_H_
26
27
#include <X11/Xdefs.h>
28
29
typedef XID Glyph;
30
typedef XID GlyphSet;
31
typedef XID Picture;
32
typedef XID PictFormat;
33
34
#define RENDER_NAME "RENDER"
35
#define RENDER_MAJOR 0
36
#define RENDER_MINOR 11
37
38
#define X_RenderQueryVersion 0
39
#define X_RenderQueryPictFormats 1
40
#define X_RenderQueryPictIndexValues 2 /* 0.7 */
41
#define X_RenderQueryDithers 3
42
#define X_RenderCreatePicture 4
43
#define X_RenderChangePicture 5
44
#define X_RenderSetPictureClipRectangles 6
45
#define X_RenderFreePicture 7
46
#define X_RenderComposite 8
47
#define X_RenderScale 9
48
#define X_RenderTrapezoids 10
49
#define X_RenderTriangles 11
50
#define X_RenderTriStrip 12
51
#define X_RenderTriFan 13
52
#define X_RenderColorTrapezoids 14
53
#define X_RenderColorTriangles 15
54
/* #define X_RenderTransform 16 */
55
#define X_RenderCreateGlyphSet 17
56
#define X_RenderReferenceGlyphSet 18
57
#define X_RenderFreeGlyphSet 19
58
#define X_RenderAddGlyphs 20
59
#define X_RenderAddGlyphsFromPicture 21
60
#define X_RenderFreeGlyphs 22
61
#define X_RenderCompositeGlyphs8 23
62
#define X_RenderCompositeGlyphs16 24
63
#define X_RenderCompositeGlyphs32 25
64
#define X_RenderFillRectangles 26
65
/* 0.5 */
66
#define X_RenderCreateCursor 27
67
/* 0.6 */
68
#define X_RenderSetPictureTransform 28
69
#define X_RenderQueryFilters 29
70
#define X_RenderSetPictureFilter 30
71
/* 0.8 */
72
#define X_RenderCreateAnimCursor 31
73
/* 0.9 */
74
#define X_RenderAddTraps 32
75
/* 0.10 */
76
#define X_RenderCreateSolidFill 33
77
#define X_RenderCreateLinearGradient 34
78
#define X_RenderCreateRadialGradient 35
79
#define X_RenderCreateConicalGradient 36
80
#define RenderNumberRequests (X_RenderCreateConicalGradient+1)
81
82
#define BadPictFormat 0
83
#define BadPicture 1
84
#define BadPictOp 2
85
#define BadGlyphSet 3
86
#define BadGlyph 4
87
#define RenderNumberErrors (BadGlyph+1)
88
89
#define PictTypeIndexed 0
90
#define PictTypeDirect 1
91
92
#define PictOpMinimum 0
93
#define PictOpClear 0
94
#define PictOpSrc 1
95
#define PictOpDst 2
96
#define PictOpOver 3
97
#define PictOpOverReverse 4
98
#define PictOpIn 5
99
#define PictOpInReverse 6
100
#define PictOpOut 7
101
#define PictOpOutReverse 8
102
#define PictOpAtop 9
103
#define PictOpAtopReverse 10
104
#define PictOpXor 11
105
#define PictOpAdd 12
106
#define PictOpSaturate 13
107
#define PictOpMaximum 13
108
109
/*
110
* Operators only available in version 0.2
111
*/
112
#define PictOpDisjointMinimum 0x10
113
#define PictOpDisjointClear 0x10
114
#define PictOpDisjointSrc 0x11
115
#define PictOpDisjointDst 0x12
116
#define PictOpDisjointOver 0x13
117
#define PictOpDisjointOverReverse 0x14
118
#define PictOpDisjointIn 0x15
119
#define PictOpDisjointInReverse 0x16
120
#define PictOpDisjointOut 0x17
121
#define PictOpDisjointOutReverse 0x18
122
#define PictOpDisjointAtop 0x19
123
#define PictOpDisjointAtopReverse 0x1a
124
#define PictOpDisjointXor 0x1b
125
#define PictOpDisjointMaximum 0x1b
126
127
#define PictOpConjointMinimum 0x20
128
#define PictOpConjointClear 0x20
129
#define PictOpConjointSrc 0x21
130
#define PictOpConjointDst 0x22
131
#define PictOpConjointOver 0x23
132
#define PictOpConjointOverReverse 0x24
133
#define PictOpConjointIn 0x25
134
#define PictOpConjointInReverse 0x26
135
#define PictOpConjointOut 0x27
136
#define PictOpConjointOutReverse 0x28
137
#define PictOpConjointAtop 0x29
138
#define PictOpConjointAtopReverse 0x2a
139
#define PictOpConjointXor 0x2b
140
#define PictOpConjointMaximum 0x2b
141
142
/*
143
* Operators only available in version 0.11
144
*/
145
#define PictOpBlendMinimum 0x30
146
#define PictOpMultiply 0x30
147
#define PictOpScreen 0x31
148
#define PictOpOverlay 0x32
149
#define PictOpDarken 0x33
150
#define PictOpLighten 0x34
151
#define PictOpColorDodge 0x35
152
#define PictOpColorBurn 0x36
153
#define PictOpHardLight 0x37
154
#define PictOpSoftLight 0x38
155
#define PictOpDifference 0x39
156
#define PictOpExclusion 0x3a
157
#define PictOpHSLHue 0x3b
158
#define PictOpHSLSaturation 0x3c
159
#define PictOpHSLColor 0x3d
160
#define PictOpHSLLuminosity 0x3e
161
#define PictOpBlendMaximum 0x3e
162
163
#define PolyEdgeSharp 0
164
#define PolyEdgeSmooth 1
165
166
#define PolyModePrecise 0
167
#define PolyModeImprecise 1
168
169
#define CPRepeat (1 << 0)
170
#define CPAlphaMap (1 << 1)
171
#define CPAlphaXOrigin (1 << 2)
172
#define CPAlphaYOrigin (1 << 3)
173
#define CPClipXOrigin (1 << 4)
174
#define CPClipYOrigin (1 << 5)
175
#define CPClipMask (1 << 6)
176
#define CPGraphicsExposure (1 << 7)
177
#define CPSubwindowMode (1 << 8)
178
#define CPPolyEdge (1 << 9)
179
#define CPPolyMode (1 << 10)
180
#define CPDither (1 << 11)
181
#define CPComponentAlpha (1 << 12)
182
#define CPLastBit 12
183
184
/* Filters included in 0.6 */
185
#define FilterNearest "nearest"
186
#define FilterBilinear "bilinear"
187
/* Filters included in 0.10 */
188
#define FilterConvolution "convolution"
189
190
#define FilterFast "fast"
191
#define FilterGood "good"
192
#define FilterBest "best"
193
194
#define FilterAliasNone -1
195
196
/* Subpixel orders included in 0.6 */
197
#define SubPixelUnknown 0
198
#define SubPixelHorizontalRGB 1
199
#define SubPixelHorizontalBGR 2
200
#define SubPixelVerticalRGB 3
201
#define SubPixelVerticalBGR 4
202
#define SubPixelNone 5
203
204
/* Extended repeat attributes included in 0.10 */
205
#define RepeatNone 0
206
#define RepeatNormal 1
207
#define RepeatPad 2
208
#define RepeatReflect 3
209
210
#endif /* _RENDER_H_ */
211
212