Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/thirdparty/linuxbsd_headers/X11/extensions/renderproto.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 _XRENDERP_H_
25
#define _XRENDERP_H_
26
27
#include <X11/Xmd.h>
28
#include <X11/extensions/render.h>
29
30
#define Window CARD32
31
#define Drawable CARD32
32
#define Font CARD32
33
#define Pixmap CARD32
34
#define Cursor CARD32
35
#define Colormap CARD32
36
#define GContext CARD32
37
#define Atom CARD32
38
#define VisualID CARD32
39
#define Time CARD32
40
#define KeyCode CARD8
41
#define KeySym CARD32
42
43
#define Picture CARD32
44
#define PictFormat CARD32
45
#define Fixed INT32
46
#define Glyphset CARD32
47
48
/*
49
* data structures
50
*/
51
52
typedef struct {
53
CARD16 red;
54
CARD16 redMask;
55
CARD16 green;
56
CARD16 greenMask;
57
CARD16 blue;
58
CARD16 blueMask;
59
CARD16 alpha;
60
CARD16 alphaMask;
61
} xDirectFormat;
62
63
#define sz_xDirectFormat 16
64
65
typedef struct {
66
PictFormat id;
67
CARD8 type;
68
CARD8 depth;
69
CARD16 pad1;
70
xDirectFormat direct;
71
Colormap colormap;
72
} xPictFormInfo;
73
74
#define sz_xPictFormInfo 28
75
76
typedef struct {
77
VisualID visual;
78
PictFormat format;
79
} xPictVisual;
80
81
#define sz_xPictVisual 8
82
83
typedef struct {
84
CARD8 depth;
85
CARD8 pad1;
86
CARD16 nPictVisuals;
87
CARD32 pad2;
88
} xPictDepth;
89
90
#define sz_xPictDepth 8
91
92
typedef struct {
93
CARD32 nDepth;
94
PictFormat fallback;
95
} xPictScreen;
96
97
#define sz_xPictScreen 8
98
99
typedef struct {
100
CARD32 pixel;
101
CARD16 red;
102
CARD16 green;
103
CARD16 blue;
104
CARD16 alpha;
105
} xIndexValue;
106
107
#define sz_xIndexValue 12
108
109
typedef struct {
110
CARD16 red;
111
CARD16 green;
112
CARD16 blue;
113
CARD16 alpha;
114
} xRenderColor;
115
116
#define sz_xRenderColor 8
117
118
typedef struct {
119
Fixed x;
120
Fixed y;
121
} xPointFixed;
122
123
#define sz_xPointFixed 8
124
125
typedef struct {
126
xPointFixed p1;
127
xPointFixed p2;
128
} xLineFixed;
129
130
#define sz_xLineFixed 16
131
132
typedef struct {
133
xPointFixed p1, p2, p3;
134
} xTriangle;
135
136
#define sz_xTriangle 24
137
138
typedef struct {
139
Fixed top;
140
Fixed bottom;
141
xLineFixed left;
142
xLineFixed right;
143
} xTrapezoid;
144
145
#define sz_xTrapezoid 40
146
147
typedef struct {
148
CARD16 width;
149
CARD16 height;
150
INT16 x;
151
INT16 y;
152
INT16 xOff;
153
INT16 yOff;
154
} xGlyphInfo;
155
156
#define sz_xGlyphInfo 12
157
158
typedef struct {
159
CARD8 len;
160
CARD8 pad1;
161
CARD16 pad2;
162
INT16 deltax;
163
INT16 deltay;
164
} xGlyphElt;
165
166
#define sz_xGlyphElt 8
167
168
typedef struct {
169
Fixed l, r, y;
170
} xSpanFix;
171
172
#define sz_xSpanFix 12
173
174
typedef struct {
175
xSpanFix top, bot;
176
} xTrap;
177
178
#define sz_xTrap 24
179
180
/*
181
* requests and replies
182
*/
183
typedef struct {
184
CARD8 reqType;
185
CARD8 renderReqType;
186
CARD16 length;
187
CARD32 majorVersion;
188
CARD32 minorVersion;
189
} xRenderQueryVersionReq;
190
191
#define sz_xRenderQueryVersionReq 12
192
193
typedef struct {
194
BYTE type; /* X_Reply */
195
BYTE pad1;
196
CARD16 sequenceNumber;
197
CARD32 length;
198
CARD32 majorVersion;
199
CARD32 minorVersion;
200
CARD32 pad2;
201
CARD32 pad3;
202
CARD32 pad4;
203
CARD32 pad5;
204
} xRenderQueryVersionReply;
205
206
#define sz_xRenderQueryVersionReply 32
207
208
typedef struct {
209
CARD8 reqType;
210
CARD8 renderReqType;
211
CARD16 length;
212
} xRenderQueryPictFormatsReq;
213
214
#define sz_xRenderQueryPictFormatsReq 4
215
216
typedef struct {
217
BYTE type; /* X_Reply */
218
BYTE pad1;
219
CARD16 sequenceNumber;
220
CARD32 length;
221
CARD32 numFormats;
222
CARD32 numScreens;
223
CARD32 numDepths;
224
CARD32 numVisuals;
225
CARD32 numSubpixel; /* Version 0.6 */
226
CARD32 pad5;
227
} xRenderQueryPictFormatsReply;
228
229
#define sz_xRenderQueryPictFormatsReply 32
230
231
typedef struct {
232
CARD8 reqType;
233
CARD8 renderReqType;
234
CARD16 length;
235
PictFormat format;
236
} xRenderQueryPictIndexValuesReq;
237
238
#define sz_xRenderQueryPictIndexValuesReq 8
239
240
typedef struct {
241
BYTE type; /* X_Reply */
242
BYTE pad1;
243
CARD16 sequenceNumber;
244
CARD32 length;
245
CARD32 numIndexValues;
246
CARD32 pad2;
247
CARD32 pad3;
248
CARD32 pad4;
249
CARD32 pad5;
250
CARD32 pad6;
251
} xRenderQueryPictIndexValuesReply;
252
253
#define sz_xRenderQueryPictIndexValuesReply 32
254
255
typedef struct {
256
CARD8 reqType;
257
CARD8 renderReqType;
258
CARD16 length;
259
Picture pid;
260
Drawable drawable;
261
PictFormat format;
262
CARD32 mask;
263
} xRenderCreatePictureReq;
264
265
#define sz_xRenderCreatePictureReq 20
266
267
typedef struct {
268
CARD8 reqType;
269
CARD8 renderReqType;
270
CARD16 length;
271
Picture picture;
272
CARD32 mask;
273
} xRenderChangePictureReq;
274
275
#define sz_xRenderChangePictureReq 12
276
277
typedef struct {
278
CARD8 reqType;
279
CARD8 renderReqType;
280
CARD16 length;
281
Picture picture;
282
INT16 xOrigin;
283
INT16 yOrigin;
284
} xRenderSetPictureClipRectanglesReq;
285
286
#define sz_xRenderSetPictureClipRectanglesReq 12
287
288
typedef struct {
289
CARD8 reqType;
290
CARD8 renderReqType;
291
CARD16 length;
292
Picture picture;
293
} xRenderFreePictureReq;
294
295
#define sz_xRenderFreePictureReq 8
296
297
typedef struct {
298
CARD8 reqType;
299
CARD8 renderReqType;
300
CARD16 length;
301
CARD8 op;
302
CARD8 pad1;
303
CARD16 pad2;
304
Picture src;
305
Picture mask;
306
Picture dst;
307
INT16 xSrc;
308
INT16 ySrc;
309
INT16 xMask;
310
INT16 yMask;
311
INT16 xDst;
312
INT16 yDst;
313
CARD16 width;
314
CARD16 height;
315
} xRenderCompositeReq;
316
317
#define sz_xRenderCompositeReq 36
318
319
typedef struct {
320
CARD8 reqType;
321
CARD8 renderReqType;
322
CARD16 length;
323
Picture src;
324
Picture dst;
325
CARD32 colorScale;
326
CARD32 alphaScale;
327
INT16 xSrc;
328
INT16 ySrc;
329
INT16 xDst;
330
INT16 yDst;
331
CARD16 width;
332
CARD16 height;
333
} xRenderScaleReq;
334
335
#define sz_xRenderScaleReq 32
336
337
typedef struct {
338
CARD8 reqType;
339
CARD8 renderReqType;
340
CARD16 length;
341
CARD8 op;
342
CARD8 pad1;
343
CARD16 pad2;
344
Picture src;
345
Picture dst;
346
PictFormat maskFormat;
347
INT16 xSrc;
348
INT16 ySrc;
349
} xRenderTrapezoidsReq;
350
351
#define sz_xRenderTrapezoidsReq 24
352
353
typedef struct {
354
CARD8 reqType;
355
CARD8 renderReqType;
356
CARD16 length;
357
CARD8 op;
358
CARD8 pad1;
359
CARD16 pad2;
360
Picture src;
361
Picture dst;
362
PictFormat maskFormat;
363
INT16 xSrc;
364
INT16 ySrc;
365
} xRenderTrianglesReq;
366
367
#define sz_xRenderTrianglesReq 24
368
369
typedef struct {
370
CARD8 reqType;
371
CARD8 renderReqType;
372
CARD16 length;
373
CARD8 op;
374
CARD8 pad1;
375
CARD16 pad2;
376
Picture src;
377
Picture dst;
378
PictFormat maskFormat;
379
INT16 xSrc;
380
INT16 ySrc;
381
} xRenderTriStripReq;
382
383
#define sz_xRenderTriStripReq 24
384
385
typedef struct {
386
CARD8 reqType;
387
CARD8 renderReqType;
388
CARD16 length;
389
CARD8 op;
390
CARD8 pad1;
391
CARD16 pad2;
392
Picture src;
393
Picture dst;
394
PictFormat maskFormat;
395
INT16 xSrc;
396
INT16 ySrc;
397
} xRenderTriFanReq;
398
399
#define sz_xRenderTriFanReq 24
400
401
typedef struct {
402
CARD8 reqType;
403
CARD8 renderReqType;
404
CARD16 length;
405
Glyphset gsid;
406
PictFormat format;
407
} xRenderCreateGlyphSetReq;
408
409
#define sz_xRenderCreateGlyphSetReq 12
410
411
typedef struct {
412
CARD8 reqType;
413
CARD8 renderReqType;
414
CARD16 length;
415
Glyphset gsid;
416
Glyphset existing;
417
} xRenderReferenceGlyphSetReq;
418
419
#define sz_xRenderReferenceGlyphSetReq 24
420
421
typedef struct {
422
CARD8 reqType;
423
CARD8 renderReqType;
424
CARD16 length;
425
Glyphset glyphset;
426
} xRenderFreeGlyphSetReq;
427
428
#define sz_xRenderFreeGlyphSetReq 8
429
430
typedef struct {
431
CARD8 reqType;
432
CARD8 renderReqType;
433
CARD16 length;
434
Glyphset glyphset;
435
CARD32 nglyphs;
436
} xRenderAddGlyphsReq;
437
438
#define sz_xRenderAddGlyphsReq 12
439
440
typedef struct {
441
CARD8 reqType;
442
CARD8 renderReqType;
443
CARD16 length;
444
Glyphset glyphset;
445
} xRenderFreeGlyphsReq;
446
447
#define sz_xRenderFreeGlyphsReq 8
448
449
typedef struct {
450
CARD8 reqType;
451
CARD8 renderReqType;
452
CARD16 length;
453
CARD8 op;
454
CARD8 pad1;
455
CARD16 pad2;
456
Picture src;
457
Picture dst;
458
PictFormat maskFormat;
459
Glyphset glyphset;
460
INT16 xSrc;
461
INT16 ySrc;
462
} xRenderCompositeGlyphsReq, xRenderCompositeGlyphs8Req,
463
xRenderCompositeGlyphs16Req, xRenderCompositeGlyphs32Req;
464
465
#define sz_xRenderCompositeGlyphs8Req 28
466
#define sz_xRenderCompositeGlyphs16Req 28
467
#define sz_xRenderCompositeGlyphs32Req 28
468
469
/* 0.1 and higher */
470
471
typedef struct {
472
CARD8 reqType;
473
CARD8 renderReqType;
474
CARD16 length;
475
CARD8 op;
476
CARD8 pad1;
477
CARD16 pad2;
478
Picture dst;
479
xRenderColor color;
480
} xRenderFillRectanglesReq;
481
482
#define sz_xRenderFillRectanglesReq 20
483
484
/* 0.5 and higher */
485
486
typedef struct {
487
CARD8 reqType;
488
CARD8 renderReqType;
489
CARD16 length;
490
Cursor cid;
491
Picture src;
492
CARD16 x;
493
CARD16 y;
494
} xRenderCreateCursorReq;
495
496
#define sz_xRenderCreateCursorReq 16
497
498
/* 0.6 and higher */
499
500
/*
501
* This can't use an array because 32-bit values may be in bitfields
502
*/
503
typedef struct {
504
Fixed matrix11;
505
Fixed matrix12;
506
Fixed matrix13;
507
Fixed matrix21;
508
Fixed matrix22;
509
Fixed matrix23;
510
Fixed matrix31;
511
Fixed matrix32;
512
Fixed matrix33;
513
} xRenderTransform;
514
515
#define sz_xRenderTransform 36
516
517
typedef struct {
518
CARD8 reqType;
519
CARD8 renderReqType;
520
CARD16 length;
521
Picture picture;
522
xRenderTransform transform;
523
} xRenderSetPictureTransformReq;
524
525
#define sz_xRenderSetPictureTransformReq 44
526
527
typedef struct {
528
CARD8 reqType;
529
CARD8 renderReqType;
530
CARD16 length;
531
Drawable drawable;
532
} xRenderQueryFiltersReq;
533
534
#define sz_xRenderQueryFiltersReq 8
535
536
typedef struct {
537
BYTE type; /* X_Reply */
538
BYTE pad1;
539
CARD16 sequenceNumber;
540
CARD32 length;
541
CARD32 numAliases; /* LISTofCARD16 */
542
CARD32 numFilters; /* LISTofSTRING8 */
543
CARD32 pad2;
544
CARD32 pad3;
545
CARD32 pad4;
546
CARD32 pad5;
547
} xRenderQueryFiltersReply;
548
549
#define sz_xRenderQueryFiltersReply 32
550
551
typedef struct {
552
CARD8 reqType;
553
CARD8 renderReqType;
554
CARD16 length;
555
Picture picture;
556
CARD16 nbytes; /* number of bytes in name */
557
CARD16 pad;
558
} xRenderSetPictureFilterReq;
559
560
#define sz_xRenderSetPictureFilterReq 12
561
562
/* 0.8 and higher */
563
564
typedef struct {
565
Cursor cursor;
566
CARD32 delay;
567
} xAnimCursorElt;
568
569
#define sz_xAnimCursorElt 8
570
571
typedef struct {
572
CARD8 reqType;
573
CARD8 renderReqType;
574
CARD16 length;
575
Cursor cid;
576
} xRenderCreateAnimCursorReq;
577
578
#define sz_xRenderCreateAnimCursorReq 8
579
580
/* 0.9 and higher */
581
582
typedef struct {
583
CARD8 reqType;
584
CARD8 renderReqType;
585
CARD16 length;
586
Picture picture;
587
INT16 xOff;
588
INT16 yOff;
589
} xRenderAddTrapsReq;
590
591
#define sz_xRenderAddTrapsReq 12
592
593
/* 0.10 and higher */
594
595
typedef struct {
596
CARD8 reqType;
597
CARD8 renderReqType;
598
CARD16 length;
599
Picture pid;
600
xRenderColor color;
601
} xRenderCreateSolidFillReq;
602
603
#define sz_xRenderCreateSolidFillReq 16
604
605
typedef struct {
606
CARD8 reqType;
607
CARD8 renderReqType;
608
CARD16 length;
609
Picture pid;
610
xPointFixed p1;
611
xPointFixed p2;
612
CARD32 nStops;
613
} xRenderCreateLinearGradientReq;
614
615
#define sz_xRenderCreateLinearGradientReq 28
616
617
typedef struct {
618
CARD8 reqType;
619
CARD8 renderReqType;
620
CARD16 length;
621
Picture pid;
622
xPointFixed inner;
623
xPointFixed outer;
624
Fixed inner_radius;
625
Fixed outer_radius;
626
CARD32 nStops;
627
} xRenderCreateRadialGradientReq;
628
629
#define sz_xRenderCreateRadialGradientReq 36
630
631
typedef struct {
632
CARD8 reqType;
633
CARD8 renderReqType;
634
CARD16 length;
635
Picture pid;
636
xPointFixed center;
637
Fixed angle; /* in degrees */
638
CARD32 nStops;
639
} xRenderCreateConicalGradientReq;
640
641
#define sz_xRenderCreateConicalGradientReq 24
642
643
#undef Window
644
#undef Drawable
645
#undef Font
646
#undef Pixmap
647
#undef Cursor
648
#undef Colormap
649
#undef GContext
650
#undef Atom
651
#undef VisualID
652
#undef Time
653
#undef KeyCode
654
#undef KeySym
655
656
#undef Picture
657
#undef PictFormat
658
#undef Fixed
659
#undef Glyphset
660
661
#endif /* _XRENDERP_H_ */
662
663