Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
godotengine
GitHub Repository: godotengine/godot
Path: blob/master/thirdparty/linuxbsd_headers/X11/extensions/randrproto.h
9905 views
1
/*
2
* Copyright © 2000 Compaq Computer Corporation
3
* Copyright © 2002 Hewlett-Packard Company
4
* Copyright © 2006 Intel Corporation
5
* Copyright © 2008 Red Hat, Inc.
6
*
7
* Permission to use, copy, modify, distribute, and sell this software and its
8
* documentation for any purpose is hereby granted without fee, provided that
9
* the above copyright notice appear in all copies and that both that copyright
10
* notice and this permission notice appear in supporting documentation, and
11
* that the name of the copyright holders not be used in advertising or
12
* publicity pertaining to distribution of the software without specific,
13
* written prior permission. The copyright holders make no representations
14
* about the suitability of this software for any purpose. It is provided "as
15
* is" without express or implied warranty.
16
*
17
* THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
18
* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
19
* EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
20
* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
21
* DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
22
* TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
23
* OF THIS SOFTWARE.
24
*
25
* Author: Jim Gettys, Hewlett-Packard Company, Inc.
26
* Keith Packard, Intel Corporation
27
*/
28
29
/* note that RANDR 1.0 is incompatible with version 0.0, or 0.1 */
30
/* V1.0 removes depth switching from the protocol */
31
#ifndef _XRANDRP_H_
32
#define _XRANDRP_H_
33
34
#include <X11/extensions/randr.h>
35
#include <X11/extensions/renderproto.h>
36
37
#define Window CARD32
38
#define Drawable CARD32
39
#define Font CARD32
40
#define Pixmap CARD32
41
#define Cursor CARD32
42
#define Colormap CARD32
43
#define GContext CARD32
44
#define Atom CARD32
45
#define Time CARD32
46
#define KeyCode CARD8
47
#define KeySym CARD32
48
#define RROutput CARD32
49
#define RRMode CARD32
50
#define RRCrtc CARD32
51
#define RRProvider CARD32
52
#define RRModeFlags CARD32
53
#define RRLease CARD32
54
55
#define Rotation CARD16
56
#define SizeID CARD16
57
#define SubpixelOrder CARD16
58
59
/*
60
* data structures
61
*/
62
63
typedef struct {
64
CARD16 widthInPixels;
65
CARD16 heightInPixels;
66
CARD16 widthInMillimeters;
67
CARD16 heightInMillimeters;
68
} xScreenSizes;
69
#define sz_xScreenSizes 8
70
71
/*
72
* requests and replies
73
*/
74
75
typedef struct {
76
CARD8 reqType;
77
CARD8 randrReqType;
78
CARD16 length;
79
CARD32 majorVersion;
80
CARD32 minorVersion;
81
} xRRQueryVersionReq;
82
#define sz_xRRQueryVersionReq 12
83
84
typedef struct {
85
BYTE type; /* X_Reply */
86
BYTE pad1;
87
CARD16 sequenceNumber;
88
CARD32 length;
89
CARD32 majorVersion;
90
CARD32 minorVersion;
91
CARD32 pad2;
92
CARD32 pad3;
93
CARD32 pad4;
94
CARD32 pad5;
95
} xRRQueryVersionReply;
96
#define sz_xRRQueryVersionReply 32
97
98
typedef struct {
99
CARD8 reqType;
100
CARD8 randrReqType;
101
CARD16 length;
102
Window window;
103
} xRRGetScreenInfoReq;
104
#define sz_xRRGetScreenInfoReq 8
105
106
/*
107
* the xRRScreenInfoReply structure is followed by:
108
*
109
* the size information
110
*/
111
112
113
typedef struct {
114
BYTE type; /* X_Reply */
115
BYTE setOfRotations;
116
CARD16 sequenceNumber;
117
CARD32 length;
118
Window root;
119
Time timestamp;
120
Time configTimestamp;
121
CARD16 nSizes;
122
SizeID sizeID;
123
Rotation rotation;
124
CARD16 rate;
125
CARD16 nrateEnts;
126
CARD16 pad;
127
} xRRGetScreenInfoReply;
128
#define sz_xRRGetScreenInfoReply 32
129
130
typedef struct {
131
CARD8 reqType;
132
CARD8 randrReqType;
133
CARD16 length;
134
Drawable drawable;
135
Time timestamp;
136
Time configTimestamp;
137
SizeID sizeID;
138
Rotation rotation;
139
} xRR1_0SetScreenConfigReq;
140
#define sz_xRR1_0SetScreenConfigReq 20
141
142
typedef struct {
143
CARD8 reqType;
144
CARD8 randrReqType;
145
CARD16 length;
146
Drawable drawable;
147
Time timestamp;
148
Time configTimestamp;
149
SizeID sizeID;
150
Rotation rotation;
151
CARD16 rate;
152
CARD16 pad;
153
} xRRSetScreenConfigReq;
154
#define sz_xRRSetScreenConfigReq 24
155
156
typedef struct {
157
BYTE type; /* X_Reply */
158
CARD8 status;
159
CARD16 sequenceNumber;
160
CARD32 length;
161
Time newTimestamp;
162
Time newConfigTimestamp;
163
Window root;
164
CARD16 subpixelOrder;
165
CARD16 pad4;
166
CARD32 pad5;
167
CARD32 pad6;
168
} xRRSetScreenConfigReply;
169
#define sz_xRRSetScreenConfigReply 32
170
171
typedef struct {
172
CARD8 reqType;
173
CARD8 randrReqType;
174
CARD16 length;
175
Window window;
176
CARD16 enable;
177
CARD16 pad2;
178
} xRRSelectInputReq;
179
#define sz_xRRSelectInputReq 12
180
181
/*
182
* Additions for version 1.2
183
*/
184
185
typedef struct _xRRModeInfo {
186
RRMode id;
187
CARD16 width;
188
CARD16 height;
189
CARD32 dotClock;
190
CARD16 hSyncStart;
191
CARD16 hSyncEnd;
192
CARD16 hTotal;
193
CARD16 hSkew;
194
CARD16 vSyncStart;
195
CARD16 vSyncEnd;
196
CARD16 vTotal;
197
CARD16 nameLength;
198
RRModeFlags modeFlags;
199
} xRRModeInfo;
200
#define sz_xRRModeInfo 32
201
202
typedef struct {
203
CARD8 reqType;
204
CARD8 randrReqType;
205
CARD16 length;
206
Window window;
207
} xRRGetScreenSizeRangeReq;
208
#define sz_xRRGetScreenSizeRangeReq 8
209
210
typedef struct {
211
BYTE type; /* X_Reply */
212
CARD8 pad;
213
CARD16 sequenceNumber;
214
CARD32 length;
215
CARD16 minWidth;
216
CARD16 minHeight;
217
CARD16 maxWidth;
218
CARD16 maxHeight;
219
CARD32 pad0;
220
CARD32 pad1;
221
CARD32 pad2;
222
CARD32 pad3;
223
} xRRGetScreenSizeRangeReply;
224
#define sz_xRRGetScreenSizeRangeReply 32
225
226
typedef struct {
227
CARD8 reqType;
228
CARD8 randrReqType;
229
CARD16 length;
230
Window window;
231
CARD16 width;
232
CARD16 height;
233
CARD32 widthInMillimeters;
234
CARD32 heightInMillimeters;
235
} xRRSetScreenSizeReq;
236
#define sz_xRRSetScreenSizeReq 20
237
238
typedef struct {
239
CARD8 reqType;
240
CARD8 randrReqType;
241
CARD16 length;
242
Window window;
243
} xRRGetScreenResourcesReq;
244
#define sz_xRRGetScreenResourcesReq 8
245
246
typedef struct {
247
BYTE type;
248
CARD8 pad;
249
CARD16 sequenceNumber;
250
CARD32 length;
251
Time timestamp;
252
Time configTimestamp;
253
CARD16 nCrtcs;
254
CARD16 nOutputs;
255
CARD16 nModes;
256
CARD16 nbytesNames;
257
CARD32 pad1;
258
CARD32 pad2;
259
} xRRGetScreenResourcesReply;
260
#define sz_xRRGetScreenResourcesReply 32
261
262
typedef struct {
263
CARD8 reqType;
264
CARD8 randrReqType;
265
CARD16 length;
266
RROutput output;
267
Time configTimestamp;
268
} xRRGetOutputInfoReq;
269
#define sz_xRRGetOutputInfoReq 12
270
271
typedef struct {
272
BYTE type;
273
CARD8 status;
274
CARD16 sequenceNumber;
275
CARD32 length;
276
Time timestamp;
277
RRCrtc crtc;
278
CARD32 mmWidth;
279
CARD32 mmHeight;
280
CARD8 connection;
281
CARD8 subpixelOrder;
282
CARD16 nCrtcs;
283
CARD16 nModes;
284
CARD16 nPreferred;
285
CARD16 nClones;
286
CARD16 nameLength;
287
} xRRGetOutputInfoReply;
288
#define sz_xRRGetOutputInfoReply 36
289
290
typedef struct {
291
CARD8 reqType;
292
CARD8 randrReqType;
293
CARD16 length;
294
RROutput output;
295
} xRRListOutputPropertiesReq;
296
#define sz_xRRListOutputPropertiesReq 8
297
298
typedef struct {
299
BYTE type;
300
CARD8 pad0;
301
CARD16 sequenceNumber;
302
CARD32 length;
303
CARD16 nAtoms;
304
CARD16 pad1;
305
CARD32 pad2;
306
CARD32 pad3;
307
CARD32 pad4;
308
CARD32 pad5;
309
CARD32 pad6;
310
} xRRListOutputPropertiesReply;
311
#define sz_xRRListOutputPropertiesReply 32
312
313
typedef struct {
314
CARD8 reqType;
315
CARD8 randrReqType;
316
CARD16 length;
317
RROutput output;
318
Atom property;
319
} xRRQueryOutputPropertyReq;
320
#define sz_xRRQueryOutputPropertyReq 12
321
322
typedef struct {
323
BYTE type;
324
BYTE pad0;
325
CARD16 sequenceNumber;
326
CARD32 length;
327
BOOL pending;
328
BOOL range;
329
BOOL immutable;
330
BYTE pad1;
331
CARD32 pad2;
332
CARD32 pad3;
333
CARD32 pad4;
334
CARD32 pad5;
335
CARD32 pad6;
336
} xRRQueryOutputPropertyReply;
337
#define sz_xRRQueryOutputPropertyReply 32
338
339
typedef struct {
340
CARD8 reqType;
341
CARD8 randrReqType;
342
CARD16 length;
343
RROutput output;
344
Atom property;
345
BOOL pending;
346
BOOL range;
347
CARD16 pad;
348
} xRRConfigureOutputPropertyReq;
349
#define sz_xRRConfigureOutputPropertyReq 16
350
351
typedef struct {
352
CARD8 reqType;
353
CARD8 randrReqType;
354
CARD16 length;
355
RROutput output;
356
Atom property;
357
Atom type;
358
CARD8 format;
359
CARD8 mode;
360
CARD16 pad;
361
CARD32 nUnits;
362
} xRRChangeOutputPropertyReq;
363
#define sz_xRRChangeOutputPropertyReq 24
364
365
typedef struct {
366
CARD8 reqType;
367
CARD8 randrReqType;
368
CARD16 length;
369
RROutput output;
370
Atom property;
371
} xRRDeleteOutputPropertyReq;
372
#define sz_xRRDeleteOutputPropertyReq 12
373
374
typedef struct {
375
CARD8 reqType;
376
CARD8 randrReqType;
377
CARD16 length;
378
RROutput output;
379
Atom property;
380
Atom type;
381
CARD32 longOffset;
382
CARD32 longLength;
383
#ifdef __cplusplus
384
BOOL _delete;
385
#else
386
BOOL delete;
387
#endif
388
BOOL pending;
389
CARD16 pad1;
390
} xRRGetOutputPropertyReq;
391
#define sz_xRRGetOutputPropertyReq 28
392
393
typedef struct {
394
BYTE type;
395
CARD8 format;
396
CARD16 sequenceNumber;
397
CARD32 length;
398
Atom propertyType;
399
CARD32 bytesAfter;
400
CARD32 nItems;
401
CARD32 pad1;
402
CARD32 pad2;
403
CARD32 pad3;
404
} xRRGetOutputPropertyReply;
405
#define sz_xRRGetOutputPropertyReply 32
406
407
typedef struct {
408
CARD8 reqType;
409
CARD8 randrReqType;
410
CARD16 length;
411
Window window;
412
xRRModeInfo modeInfo;
413
} xRRCreateModeReq;
414
#define sz_xRRCreateModeReq 40
415
416
typedef struct {
417
BYTE type;
418
CARD8 pad0;
419
CARD16 sequenceNumber;
420
CARD32 length;
421
RRMode mode;
422
CARD32 pad1;
423
CARD32 pad2;
424
CARD32 pad3;
425
CARD32 pad4;
426
CARD32 pad5;
427
} xRRCreateModeReply;
428
#define sz_xRRCreateModeReply 32
429
430
typedef struct {
431
CARD8 reqType;
432
CARD8 randrReqType;
433
CARD16 length;
434
RRMode mode;
435
} xRRDestroyModeReq;
436
#define sz_xRRDestroyModeReq 8
437
438
typedef struct {
439
CARD8 reqType;
440
CARD8 randrReqType;
441
CARD16 length;
442
RROutput output;
443
RRMode mode;
444
} xRRAddOutputModeReq;
445
#define sz_xRRAddOutputModeReq 12
446
447
typedef struct {
448
CARD8 reqType;
449
CARD8 randrReqType;
450
CARD16 length;
451
RROutput output;
452
RRMode mode;
453
} xRRDeleteOutputModeReq;
454
#define sz_xRRDeleteOutputModeReq 12
455
456
typedef struct {
457
CARD8 reqType;
458
CARD8 randrReqType;
459
CARD16 length;
460
RRCrtc crtc;
461
Time configTimestamp;
462
} xRRGetCrtcInfoReq;
463
#define sz_xRRGetCrtcInfoReq 12
464
465
typedef struct {
466
BYTE type;
467
CARD8 status;
468
CARD16 sequenceNumber;
469
CARD32 length;
470
Time timestamp;
471
INT16 x;
472
INT16 y;
473
CARD16 width;
474
CARD16 height;
475
RRMode mode;
476
Rotation rotation;
477
Rotation rotations;
478
CARD16 nOutput;
479
CARD16 nPossibleOutput;
480
} xRRGetCrtcInfoReply;
481
#define sz_xRRGetCrtcInfoReply 32
482
483
typedef struct {
484
CARD8 reqType;
485
CARD8 randrReqType;
486
CARD16 length;
487
RRCrtc crtc;
488
Time timestamp;
489
Time configTimestamp;
490
INT16 x;
491
INT16 y;
492
RRMode mode;
493
Rotation rotation;
494
CARD16 pad;
495
} xRRSetCrtcConfigReq;
496
#define sz_xRRSetCrtcConfigReq 28
497
498
typedef struct {
499
BYTE type;
500
CARD8 status;
501
CARD16 sequenceNumber;
502
CARD32 length;
503
Time newTimestamp;
504
CARD32 pad1;
505
CARD32 pad2;
506
CARD32 pad3;
507
CARD32 pad4;
508
CARD32 pad5;
509
} xRRSetCrtcConfigReply;
510
#define sz_xRRSetCrtcConfigReply 32
511
512
typedef struct {
513
CARD8 reqType;
514
CARD8 randrReqType;
515
CARD16 length;
516
RRCrtc crtc;
517
} xRRGetCrtcGammaSizeReq;
518
#define sz_xRRGetCrtcGammaSizeReq 8
519
520
typedef struct {
521
BYTE type;
522
CARD8 status;
523
CARD16 sequenceNumber;
524
CARD32 length;
525
CARD16 size;
526
CARD16 pad1;
527
CARD32 pad2;
528
CARD32 pad3;
529
CARD32 pad4;
530
CARD32 pad5;
531
CARD32 pad6;
532
} xRRGetCrtcGammaSizeReply;
533
#define sz_xRRGetCrtcGammaSizeReply 32
534
535
typedef struct {
536
CARD8 reqType;
537
CARD8 randrReqType;
538
CARD16 length;
539
RRCrtc crtc;
540
} xRRGetCrtcGammaReq;
541
#define sz_xRRGetCrtcGammaReq 8
542
543
typedef struct {
544
BYTE type;
545
CARD8 status;
546
CARD16 sequenceNumber;
547
CARD32 length;
548
CARD16 size;
549
CARD16 pad1;
550
CARD32 pad2;
551
CARD32 pad3;
552
CARD32 pad4;
553
CARD32 pad5;
554
CARD32 pad6;
555
} xRRGetCrtcGammaReply;
556
#define sz_xRRGetCrtcGammaReply 32
557
558
typedef struct {
559
CARD8 reqType;
560
CARD8 randrReqType;
561
CARD16 length;
562
RRCrtc crtc;
563
CARD16 size;
564
CARD16 pad1;
565
} xRRSetCrtcGammaReq;
566
#define sz_xRRSetCrtcGammaReq 12
567
568
/*
569
* Additions for V1.3
570
*/
571
572
typedef xRRGetScreenResourcesReq xRRGetScreenResourcesCurrentReq;
573
574
#define sz_xRRGetScreenResourcesCurrentReq sz_xRRGetScreenResourcesReq
575
576
typedef xRRGetScreenResourcesReply xRRGetScreenResourcesCurrentReply;
577
#define sz_xRRGetScreenResourcesCurrentReply sz_xRRGetScreenResourcesReply
578
579
typedef struct {
580
CARD8 reqType;
581
CARD8 randrReqType;
582
CARD16 length;
583
RRCrtc crtc;
584
xRenderTransform transform;
585
CARD16 nbytesFilter; /* number of bytes in filter name */
586
CARD16 pad;
587
} xRRSetCrtcTransformReq;
588
589
#define sz_xRRSetCrtcTransformReq 48
590
591
typedef struct {
592
CARD8 reqType;
593
CARD8 randrReqType;
594
CARD16 length;
595
RRCrtc crtc;
596
} xRRGetCrtcTransformReq;
597
598
#define sz_xRRGetCrtcTransformReq 8
599
600
typedef struct {
601
BYTE type;
602
CARD8 status;
603
CARD16 sequenceNumber;
604
CARD32 length;
605
xRenderTransform pendingTransform;
606
BYTE hasTransforms;
607
CARD8 pad0;
608
CARD16 pad1;
609
xRenderTransform currentTransform;
610
CARD32 pad2;
611
CARD16 pendingNbytesFilter; /* number of bytes in filter name */
612
CARD16 pendingNparamsFilter; /* number of filter params */
613
CARD16 currentNbytesFilter; /* number of bytes in filter name */
614
CARD16 currentNparamsFilter; /* number of filter params */
615
} xRRGetCrtcTransformReply;
616
617
#define sz_xRRGetCrtcTransformReply 96
618
619
typedef struct {
620
CARD8 reqType;
621
CARD8 randrReqType;
622
CARD16 length;
623
Window window;
624
RROutput output;
625
} xRRSetOutputPrimaryReq;
626
#define sz_xRRSetOutputPrimaryReq 12
627
628
typedef struct {
629
CARD8 reqType;
630
CARD8 randrReqType;
631
CARD16 length;
632
Window window;
633
} xRRGetOutputPrimaryReq;
634
#define sz_xRRGetOutputPrimaryReq 8
635
636
typedef struct {
637
BYTE type;
638
CARD8 pad;
639
CARD16 sequenceNumber;
640
CARD32 length;
641
RROutput output;
642
CARD32 pad1;
643
CARD32 pad2;
644
CARD32 pad3;
645
CARD32 pad4;
646
CARD32 pad5;
647
} xRRGetOutputPrimaryReply;
648
#define sz_xRRGetOutputPrimaryReply 32
649
650
/*
651
* Additions for V1.4
652
*/
653
654
typedef struct {
655
CARD8 reqType;
656
CARD8 randrReqType;
657
CARD16 length;
658
Window window;
659
} xRRGetProvidersReq;
660
#define sz_xRRGetProvidersReq 8
661
662
typedef struct {
663
BYTE type;
664
CARD8 pad;
665
CARD16 sequenceNumber;
666
CARD32 length;
667
Time timestamp;
668
CARD16 nProviders;
669
CARD16 pad1;
670
CARD32 pad2;
671
CARD32 pad3;
672
CARD32 pad4;
673
CARD32 pad5;
674
} xRRGetProvidersReply;
675
#define sz_xRRGetProvidersReply 32
676
677
typedef struct {
678
CARD8 reqType;
679
CARD8 randrReqType;
680
CARD16 length;
681
RRProvider provider;
682
Time configTimestamp;
683
} xRRGetProviderInfoReq;
684
#define sz_xRRGetProviderInfoReq 12
685
686
typedef struct {
687
BYTE type;
688
CARD8 status;
689
CARD16 sequenceNumber;
690
CARD32 length;
691
Time timestamp;
692
CARD32 capabilities;
693
CARD16 nCrtcs;
694
CARD16 nOutputs;
695
CARD16 nAssociatedProviders;
696
CARD16 nameLength;
697
CARD32 pad1;
698
CARD32 pad2;
699
} xRRGetProviderInfoReply;
700
#define sz_xRRGetProviderInfoReply 32
701
702
typedef struct {
703
CARD8 reqType;
704
CARD8 randrReqType;
705
CARD16 length;
706
RRProvider provider;
707
RRProvider source_provider;
708
Time configTimestamp;
709
} xRRSetProviderOutputSourceReq;
710
#define sz_xRRSetProviderOutputSourceReq 16
711
712
typedef struct {
713
CARD8 reqType;
714
CARD8 randrReqType;
715
CARD16 length;
716
RRProvider provider;
717
RRProvider sink_provider;
718
Time configTimestamp;
719
} xRRSetProviderOffloadSinkReq;
720
#define sz_xRRSetProviderOffloadSinkReq 16
721
722
typedef struct {
723
CARD8 reqType;
724
CARD8 randrReqType;
725
CARD16 length;
726
RRProvider provider;
727
} xRRListProviderPropertiesReq;
728
#define sz_xRRListProviderPropertiesReq 8
729
730
typedef struct {
731
BYTE type;
732
CARD8 pad0;
733
CARD16 sequenceNumber;
734
CARD32 length;
735
CARD16 nAtoms;
736
CARD16 pad1;
737
CARD32 pad2;
738
CARD32 pad3;
739
CARD32 pad4;
740
CARD32 pad5;
741
CARD32 pad6;
742
} xRRListProviderPropertiesReply;
743
#define sz_xRRListProviderPropertiesReply 32
744
745
typedef struct {
746
CARD8 reqType;
747
CARD8 randrReqType;
748
CARD16 length;
749
RRProvider provider;
750
Atom property;
751
} xRRQueryProviderPropertyReq;
752
#define sz_xRRQueryProviderPropertyReq 12
753
754
typedef struct {
755
BYTE type;
756
BYTE pad0;
757
CARD16 sequenceNumber;
758
CARD32 length;
759
BOOL pending;
760
BOOL range;
761
BOOL immutable;
762
BYTE pad1;
763
CARD32 pad2;
764
CARD32 pad3;
765
CARD32 pad4;
766
CARD32 pad5;
767
CARD32 pad6;
768
} xRRQueryProviderPropertyReply;
769
#define sz_xRRQueryProviderPropertyReply 32
770
771
typedef struct {
772
CARD8 reqType;
773
CARD8 randrReqType;
774
CARD16 length;
775
RRProvider provider;
776
Atom property;
777
BOOL pending;
778
BOOL range;
779
CARD16 pad;
780
} xRRConfigureProviderPropertyReq;
781
#define sz_xRRConfigureProviderPropertyReq 16
782
783
typedef struct {
784
CARD8 reqType;
785
CARD8 randrReqType;
786
CARD16 length;
787
RRProvider provider;
788
Atom property;
789
Atom type;
790
CARD8 format;
791
CARD8 mode;
792
CARD16 pad;
793
CARD32 nUnits;
794
} xRRChangeProviderPropertyReq;
795
#define sz_xRRChangeProviderPropertyReq 24
796
797
typedef struct {
798
CARD8 reqType;
799
CARD8 randrReqType;
800
CARD16 length;
801
RRProvider provider;
802
Atom property;
803
} xRRDeleteProviderPropertyReq;
804
#define sz_xRRDeleteProviderPropertyReq 12
805
806
typedef struct {
807
CARD8 reqType;
808
CARD8 randrReqType;
809
CARD16 length;
810
RRProvider provider;
811
Atom property;
812
Atom type;
813
CARD32 longOffset;
814
CARD32 longLength;
815
#ifdef __cplusplus
816
BOOL _delete;
817
#else
818
BOOL delete;
819
#endif
820
BOOL pending;
821
CARD16 pad1;
822
} xRRGetProviderPropertyReq;
823
#define sz_xRRGetProviderPropertyReq 28
824
825
typedef struct {
826
BYTE type;
827
CARD8 format;
828
CARD16 sequenceNumber;
829
CARD32 length;
830
Atom propertyType;
831
CARD32 bytesAfter;
832
CARD32 nItems;
833
CARD32 pad1;
834
CARD32 pad2;
835
CARD32 pad3;
836
} xRRGetProviderPropertyReply;
837
#define sz_xRRGetProviderPropertyReply 32
838
839
/*
840
* Additions for V1.6
841
*/
842
843
typedef struct {
844
CARD8 reqType;
845
CARD8 randrReqType;
846
CARD16 length;
847
Window window;
848
RRLease lid;
849
CARD16 nCrtcs;
850
CARD16 nOutputs;
851
} xRRCreateLeaseReq;
852
#define sz_xRRCreateLeaseReq 16
853
854
typedef struct {
855
BYTE type;
856
CARD8 nfd;
857
CARD16 sequenceNumber;
858
CARD32 length;
859
CARD32 pad2;
860
CARD32 pad3;
861
CARD32 pad4;
862
CARD32 pad5;
863
CARD32 pad6;
864
CARD32 pad7;
865
} xRRCreateLeaseReply;
866
#define sz_xRRCreateLeaseReply 32
867
868
typedef struct {
869
CARD8 reqType;
870
CARD8 randrReqType;
871
CARD16 length;
872
RRLease lid;
873
BYTE terminate;
874
CARD8 pad1;
875
CARD16 pad2;
876
} xRRFreeLeaseReq;
877
#define sz_xRRFreeLeaseReq 12
878
879
/*
880
* event
881
*/
882
typedef struct {
883
CARD8 type; /* always evBase + ScreenChangeNotify */
884
CARD8 rotation; /* new rotation */
885
CARD16 sequenceNumber;
886
Time timestamp; /* time screen was changed */
887
Time configTimestamp; /* time config data was changed */
888
Window root; /* root window */
889
Window window; /* window requesting notification */
890
SizeID sizeID; /* new size ID */
891
CARD16 subpixelOrder; /* subpixel order */
892
CARD16 widthInPixels; /* new size */
893
CARD16 heightInPixels;
894
CARD16 widthInMillimeters;
895
CARD16 heightInMillimeters;
896
} xRRScreenChangeNotifyEvent;
897
#define sz_xRRScreenChangeNotifyEvent 32
898
899
typedef struct {
900
CARD8 type; /* always evBase + RRNotify */
901
CARD8 subCode; /* RRNotify_CrtcChange */
902
CARD16 sequenceNumber;
903
Time timestamp; /* time crtc was changed */
904
Window window; /* window requesting notification */
905
RRCrtc crtc; /* affected CRTC */
906
RRMode mode; /* current mode */
907
CARD16 rotation; /* rotation and reflection */
908
CARD16 pad1; /* unused */
909
INT16 x; /* new location */
910
INT16 y;
911
CARD16 width; /* new size */
912
CARD16 height;
913
} xRRCrtcChangeNotifyEvent;
914
#define sz_xRRCrtcChangeNotifyEvent 32
915
916
typedef struct {
917
CARD8 type; /* always evBase + RRNotify */
918
CARD8 subCode; /* RRNotify_OutputChange */
919
CARD16 sequenceNumber;
920
Time timestamp; /* time output was changed */
921
Time configTimestamp; /* time config was changed */
922
Window window; /* window requesting notification */
923
RROutput output; /* affected output */
924
RRCrtc crtc; /* current crtc */
925
RRMode mode; /* current mode */
926
CARD16 rotation; /* rotation and reflection */
927
CARD8 connection; /* connection status */
928
CARD8 subpixelOrder; /* subpixel order */
929
} xRROutputChangeNotifyEvent;
930
#define sz_xRROutputChangeNotifyEvent 32
931
932
typedef struct {
933
CARD8 type; /* always evBase + RRNotify */
934
CARD8 subCode; /* RRNotify_OutputProperty */
935
CARD16 sequenceNumber;
936
Window window; /* window requesting notification */
937
RROutput output; /* affected output */
938
Atom atom; /* property name */
939
Time timestamp; /* time crtc was changed */
940
CARD8 state; /* NewValue or Deleted */
941
CARD8 pad1;
942
CARD16 pad2;
943
CARD32 pad3;
944
CARD32 pad4;
945
} xRROutputPropertyNotifyEvent;
946
#define sz_xRROutputPropertyNotifyEvent 32
947
948
typedef struct {
949
CARD8 type; /* always evBase + RRNotify */
950
CARD8 subCode; /* RRNotify_ProviderChange */
951
CARD16 sequenceNumber;
952
Time timestamp; /* time provider was changed */
953
Window window; /* window requesting notification */
954
RRProvider provider; /* affected provider */
955
CARD32 pad1;
956
CARD32 pad2;
957
CARD32 pad3;
958
CARD32 pad4;
959
} xRRProviderChangeNotifyEvent;
960
#define sz_xRRProviderChangeNotifyEvent 32
961
962
typedef struct {
963
CARD8 type; /* always evBase + RRNotify */
964
CARD8 subCode; /* RRNotify_ProviderProperty */
965
CARD16 sequenceNumber;
966
Window window; /* window requesting notification */
967
RRProvider provider; /* affected provider */
968
Atom atom; /* property name */
969
Time timestamp; /* time provider was changed */
970
CARD8 state; /* NewValue or Deleted */
971
CARD8 pad1;
972
CARD16 pad2;
973
CARD32 pad3;
974
CARD32 pad4;
975
} xRRProviderPropertyNotifyEvent;
976
#define sz_xRRProviderPropertyNotifyEvent 32
977
978
typedef struct {
979
CARD8 type; /* always evBase + RRNotify */
980
CARD8 subCode; /* RRNotify_ResourceChange */
981
CARD16 sequenceNumber;
982
Time timestamp; /* time resource was changed */
983
Window window; /* window requesting notification */
984
CARD32 pad1;
985
CARD32 pad2;
986
CARD32 pad3;
987
CARD32 pad4;
988
CARD32 pad5;
989
} xRRResourceChangeNotifyEvent;
990
#define sz_xRRResourceChangeNotifyEvent 32
991
992
typedef struct {
993
CARD8 type; /* always evBase + RRNotify */
994
CARD8 subCode; /* RRNotify_Lease */
995
CARD16 sequenceNumber;
996
Time timestamp; /* time resource was changed */
997
Window window; /* window requesting notification */
998
RRLease lease;
999
CARD8 created; /* created/deleted */
1000
CARD8 pad0;
1001
CARD16 pad1;
1002
CARD32 pad2;
1003
CARD32 pad3;
1004
CARD32 pad4;
1005
} xRRLeaseNotifyEvent;
1006
#define sz_xRRLeaseNotifyEvent 32
1007
1008
typedef struct {
1009
CARD8 reqType;
1010
CARD8 randrReqType;
1011
CARD16 length;
1012
RRCrtc crtc;
1013
} xRRGetPanningReq;
1014
#define sz_xRRGetPanningReq 8
1015
1016
typedef struct {
1017
BYTE type;
1018
CARD8 status;
1019
CARD16 sequenceNumber;
1020
CARD32 length;
1021
Time timestamp;
1022
CARD16 left;
1023
CARD16 top;
1024
CARD16 width;
1025
CARD16 height;
1026
CARD16 track_left;
1027
CARD16 track_top;
1028
CARD16 track_width;
1029
CARD16 track_height;
1030
INT16 border_left;
1031
INT16 border_top;
1032
INT16 border_right;
1033
INT16 border_bottom;
1034
} xRRGetPanningReply;
1035
#define sz_xRRGetPanningReply 36
1036
1037
typedef struct {
1038
CARD8 reqType;
1039
CARD8 randrReqType;
1040
CARD16 length;
1041
RRCrtc crtc;
1042
Time timestamp;
1043
CARD16 left;
1044
CARD16 top;
1045
CARD16 width;
1046
CARD16 height;
1047
CARD16 track_left;
1048
CARD16 track_top;
1049
CARD16 track_width;
1050
CARD16 track_height;
1051
INT16 border_left;
1052
INT16 border_top;
1053
INT16 border_right;
1054
INT16 border_bottom;
1055
} xRRSetPanningReq;
1056
#define sz_xRRSetPanningReq 36
1057
1058
typedef struct {
1059
BYTE type;
1060
CARD8 status;
1061
CARD16 sequenceNumber;
1062
CARD32 length;
1063
Time newTimestamp;
1064
CARD32 pad1;
1065
CARD32 pad2;
1066
CARD32 pad3;
1067
CARD32 pad4;
1068
CARD32 pad5;
1069
} xRRSetPanningReply;
1070
#define sz_xRRSetPanningReply 32
1071
1072
typedef struct {
1073
Atom name;
1074
BOOL primary;
1075
BOOL automatic;
1076
CARD16 noutput;
1077
INT16 x;
1078
INT16 y;
1079
CARD16 width;
1080
CARD16 height;
1081
CARD32 widthInMillimeters;
1082
CARD32 heightInMillimeters;
1083
} xRRMonitorInfo;
1084
#define sz_xRRMonitorInfo 24
1085
1086
typedef struct {
1087
CARD8 reqType;
1088
CARD8 randrReqType;
1089
CARD16 length;
1090
Window window;
1091
BOOL get_active;
1092
CARD8 pad;
1093
CARD16 pad2;
1094
} xRRGetMonitorsReq;
1095
#define sz_xRRGetMonitorsReq 12
1096
1097
typedef struct {
1098
BYTE type;
1099
CARD8 status;
1100
CARD16 sequenceNumber;
1101
CARD32 length;
1102
Time timestamp;
1103
CARD32 nmonitors;
1104
CARD32 noutputs;
1105
CARD32 pad1;
1106
CARD32 pad2;
1107
CARD32 pad3;
1108
} xRRGetMonitorsReply;
1109
#define sz_xRRGetMonitorsReply 32
1110
1111
typedef struct {
1112
CARD8 reqType;
1113
CARD8 randrReqType;
1114
CARD16 length;
1115
Window window;
1116
xRRMonitorInfo monitor;
1117
} xRRSetMonitorReq;
1118
#define sz_xRRSetMonitorReq 32
1119
1120
typedef struct {
1121
CARD8 reqType;
1122
CARD8 randrReqType;
1123
CARD16 length;
1124
Window window;
1125
Atom name;
1126
} xRRDeleteMonitorReq;
1127
#define sz_xRRDeleteMonitorReq 12
1128
1129
#undef RRLease
1130
#undef RRModeFlags
1131
#undef RRCrtc
1132
#undef RRMode
1133
#undef RROutput
1134
#undef RRMode
1135
#undef RRCrtc
1136
#undef RRProvider
1137
#undef Drawable
1138
#undef Window
1139
#undef Font
1140
#undef Pixmap
1141
#undef Cursor
1142
#undef Colormap
1143
#undef GContext
1144
#undef Atom
1145
#undef Time
1146
#undef KeyCode
1147
#undef KeySym
1148
#undef Rotation
1149
#undef SizeID
1150
#undef SubpixelOrder
1151
1152
#endif /* _XRANDRP_H_ */
1153
1154