File indexing completed on 2025-01-18 10:14:49
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012 #ifndef __XVMC_H
0013 #define __XVMC_H
0014
0015 #include "xcb.h"
0016 #include "xv.h"
0017
0018 #ifdef __cplusplus
0019 extern "C" {
0020 #endif
0021
0022 #define XCB_XVMC_MAJOR_VERSION 1
0023 #define XCB_XVMC_MINOR_VERSION 1
0024
0025 extern xcb_extension_t xcb_xvmc_id;
0026
0027 typedef uint32_t xcb_xvmc_context_t;
0028
0029
0030
0031
0032 typedef struct xcb_xvmc_context_iterator_t {
0033 xcb_xvmc_context_t *data;
0034 int rem;
0035 int index;
0036 } xcb_xvmc_context_iterator_t;
0037
0038 typedef uint32_t xcb_xvmc_surface_t;
0039
0040
0041
0042
0043 typedef struct xcb_xvmc_surface_iterator_t {
0044 xcb_xvmc_surface_t *data;
0045 int rem;
0046 int index;
0047 } xcb_xvmc_surface_iterator_t;
0048
0049 typedef uint32_t xcb_xvmc_subpicture_t;
0050
0051
0052
0053
0054 typedef struct xcb_xvmc_subpicture_iterator_t {
0055 xcb_xvmc_subpicture_t *data;
0056 int rem;
0057 int index;
0058 } xcb_xvmc_subpicture_iterator_t;
0059
0060
0061
0062
0063 typedef struct xcb_xvmc_surface_info_t {
0064 xcb_xvmc_surface_t id;
0065 uint16_t chroma_format;
0066 uint16_t pad0;
0067 uint16_t max_width;
0068 uint16_t max_height;
0069 uint16_t subpicture_max_width;
0070 uint16_t subpicture_max_height;
0071 uint32_t mc_type;
0072 uint32_t flags;
0073 } xcb_xvmc_surface_info_t;
0074
0075
0076
0077
0078 typedef struct xcb_xvmc_surface_info_iterator_t {
0079 xcb_xvmc_surface_info_t *data;
0080 int rem;
0081 int index;
0082 } xcb_xvmc_surface_info_iterator_t;
0083
0084
0085
0086
0087 typedef struct xcb_xvmc_query_version_cookie_t {
0088 unsigned int sequence;
0089 } xcb_xvmc_query_version_cookie_t;
0090
0091
0092 #define XCB_XVMC_QUERY_VERSION 0
0093
0094
0095
0096
0097 typedef struct xcb_xvmc_query_version_request_t {
0098 uint8_t major_opcode;
0099 uint8_t minor_opcode;
0100 uint16_t length;
0101 } xcb_xvmc_query_version_request_t;
0102
0103
0104
0105
0106 typedef struct xcb_xvmc_query_version_reply_t {
0107 uint8_t response_type;
0108 uint8_t pad0;
0109 uint16_t sequence;
0110 uint32_t length;
0111 uint32_t major;
0112 uint32_t minor;
0113 } xcb_xvmc_query_version_reply_t;
0114
0115
0116
0117
0118 typedef struct xcb_xvmc_list_surface_types_cookie_t {
0119 unsigned int sequence;
0120 } xcb_xvmc_list_surface_types_cookie_t;
0121
0122
0123 #define XCB_XVMC_LIST_SURFACE_TYPES 1
0124
0125
0126
0127
0128 typedef struct xcb_xvmc_list_surface_types_request_t {
0129 uint8_t major_opcode;
0130 uint8_t minor_opcode;
0131 uint16_t length;
0132 xcb_xv_port_t port_id;
0133 } xcb_xvmc_list_surface_types_request_t;
0134
0135
0136
0137
0138 typedef struct xcb_xvmc_list_surface_types_reply_t {
0139 uint8_t response_type;
0140 uint8_t pad0;
0141 uint16_t sequence;
0142 uint32_t length;
0143 uint32_t num;
0144 uint8_t pad1[20];
0145 } xcb_xvmc_list_surface_types_reply_t;
0146
0147
0148
0149
0150 typedef struct xcb_xvmc_create_context_cookie_t {
0151 unsigned int sequence;
0152 } xcb_xvmc_create_context_cookie_t;
0153
0154
0155 #define XCB_XVMC_CREATE_CONTEXT 2
0156
0157
0158
0159
0160 typedef struct xcb_xvmc_create_context_request_t {
0161 uint8_t major_opcode;
0162 uint8_t minor_opcode;
0163 uint16_t length;
0164 xcb_xvmc_context_t context_id;
0165 xcb_xv_port_t port_id;
0166 xcb_xvmc_surface_t surface_id;
0167 uint16_t width;
0168 uint16_t height;
0169 uint32_t flags;
0170 } xcb_xvmc_create_context_request_t;
0171
0172
0173
0174
0175 typedef struct xcb_xvmc_create_context_reply_t {
0176 uint8_t response_type;
0177 uint8_t pad0;
0178 uint16_t sequence;
0179 uint32_t length;
0180 uint16_t width_actual;
0181 uint16_t height_actual;
0182 uint32_t flags_return;
0183 uint8_t pad1[20];
0184 } xcb_xvmc_create_context_reply_t;
0185
0186
0187 #define XCB_XVMC_DESTROY_CONTEXT 3
0188
0189
0190
0191
0192 typedef struct xcb_xvmc_destroy_context_request_t {
0193 uint8_t major_opcode;
0194 uint8_t minor_opcode;
0195 uint16_t length;
0196 xcb_xvmc_context_t context_id;
0197 } xcb_xvmc_destroy_context_request_t;
0198
0199
0200
0201
0202 typedef struct xcb_xvmc_create_surface_cookie_t {
0203 unsigned int sequence;
0204 } xcb_xvmc_create_surface_cookie_t;
0205
0206
0207 #define XCB_XVMC_CREATE_SURFACE 4
0208
0209
0210
0211
0212 typedef struct xcb_xvmc_create_surface_request_t {
0213 uint8_t major_opcode;
0214 uint8_t minor_opcode;
0215 uint16_t length;
0216 xcb_xvmc_surface_t surface_id;
0217 xcb_xvmc_context_t context_id;
0218 } xcb_xvmc_create_surface_request_t;
0219
0220
0221
0222
0223 typedef struct xcb_xvmc_create_surface_reply_t {
0224 uint8_t response_type;
0225 uint8_t pad0;
0226 uint16_t sequence;
0227 uint32_t length;
0228 uint8_t pad1[24];
0229 } xcb_xvmc_create_surface_reply_t;
0230
0231
0232 #define XCB_XVMC_DESTROY_SURFACE 5
0233
0234
0235
0236
0237 typedef struct xcb_xvmc_destroy_surface_request_t {
0238 uint8_t major_opcode;
0239 uint8_t minor_opcode;
0240 uint16_t length;
0241 xcb_xvmc_surface_t surface_id;
0242 } xcb_xvmc_destroy_surface_request_t;
0243
0244
0245
0246
0247 typedef struct xcb_xvmc_create_subpicture_cookie_t {
0248 unsigned int sequence;
0249 } xcb_xvmc_create_subpicture_cookie_t;
0250
0251
0252 #define XCB_XVMC_CREATE_SUBPICTURE 6
0253
0254
0255
0256
0257 typedef struct xcb_xvmc_create_subpicture_request_t {
0258 uint8_t major_opcode;
0259 uint8_t minor_opcode;
0260 uint16_t length;
0261 xcb_xvmc_subpicture_t subpicture_id;
0262 xcb_xvmc_context_t context;
0263 uint32_t xvimage_id;
0264 uint16_t width;
0265 uint16_t height;
0266 } xcb_xvmc_create_subpicture_request_t;
0267
0268
0269
0270
0271 typedef struct xcb_xvmc_create_subpicture_reply_t {
0272 uint8_t response_type;
0273 uint8_t pad0;
0274 uint16_t sequence;
0275 uint32_t length;
0276 uint16_t width_actual;
0277 uint16_t height_actual;
0278 uint16_t num_palette_entries;
0279 uint16_t entry_bytes;
0280 uint8_t component_order[4];
0281 uint8_t pad1[12];
0282 } xcb_xvmc_create_subpicture_reply_t;
0283
0284
0285 #define XCB_XVMC_DESTROY_SUBPICTURE 7
0286
0287
0288
0289
0290 typedef struct xcb_xvmc_destroy_subpicture_request_t {
0291 uint8_t major_opcode;
0292 uint8_t minor_opcode;
0293 uint16_t length;
0294 xcb_xvmc_subpicture_t subpicture_id;
0295 } xcb_xvmc_destroy_subpicture_request_t;
0296
0297
0298
0299
0300 typedef struct xcb_xvmc_list_subpicture_types_cookie_t {
0301 unsigned int sequence;
0302 } xcb_xvmc_list_subpicture_types_cookie_t;
0303
0304
0305 #define XCB_XVMC_LIST_SUBPICTURE_TYPES 8
0306
0307
0308
0309
0310 typedef struct xcb_xvmc_list_subpicture_types_request_t {
0311 uint8_t major_opcode;
0312 uint8_t minor_opcode;
0313 uint16_t length;
0314 xcb_xv_port_t port_id;
0315 xcb_xvmc_surface_t surface_id;
0316 } xcb_xvmc_list_subpicture_types_request_t;
0317
0318
0319
0320
0321 typedef struct xcb_xvmc_list_subpicture_types_reply_t {
0322 uint8_t response_type;
0323 uint8_t pad0;
0324 uint16_t sequence;
0325 uint32_t length;
0326 uint32_t num;
0327 uint8_t pad1[20];
0328 } xcb_xvmc_list_subpicture_types_reply_t;
0329
0330
0331
0332
0333
0334
0335
0336
0337
0338 void
0339 xcb_xvmc_context_next (xcb_xvmc_context_iterator_t *i);
0340
0341
0342
0343
0344
0345
0346
0347
0348
0349
0350 xcb_generic_iterator_t
0351 xcb_xvmc_context_end (xcb_xvmc_context_iterator_t i);
0352
0353
0354
0355
0356
0357
0358
0359
0360
0361 void
0362 xcb_xvmc_surface_next (xcb_xvmc_surface_iterator_t *i);
0363
0364
0365
0366
0367
0368
0369
0370
0371
0372
0373 xcb_generic_iterator_t
0374 xcb_xvmc_surface_end (xcb_xvmc_surface_iterator_t i);
0375
0376
0377
0378
0379
0380
0381
0382
0383
0384 void
0385 xcb_xvmc_subpicture_next (xcb_xvmc_subpicture_iterator_t *i);
0386
0387
0388
0389
0390
0391
0392
0393
0394
0395
0396 xcb_generic_iterator_t
0397 xcb_xvmc_subpicture_end (xcb_xvmc_subpicture_iterator_t i);
0398
0399
0400
0401
0402
0403
0404
0405
0406
0407 void
0408 xcb_xvmc_surface_info_next (xcb_xvmc_surface_info_iterator_t *i);
0409
0410
0411
0412
0413
0414
0415
0416
0417
0418
0419 xcb_generic_iterator_t
0420 xcb_xvmc_surface_info_end (xcb_xvmc_surface_info_iterator_t i);
0421
0422
0423
0424
0425
0426
0427
0428
0429
0430 xcb_xvmc_query_version_cookie_t
0431 xcb_xvmc_query_version (xcb_connection_t *c);
0432
0433
0434
0435
0436
0437
0438
0439
0440
0441
0442
0443
0444 xcb_xvmc_query_version_cookie_t
0445 xcb_xvmc_query_version_unchecked (xcb_connection_t *c);
0446
0447
0448
0449
0450
0451
0452
0453
0454
0455
0456
0457
0458
0459
0460
0461 xcb_xvmc_query_version_reply_t *
0462 xcb_xvmc_query_version_reply (xcb_connection_t *c,
0463 xcb_xvmc_query_version_cookie_t cookie ,
0464 xcb_generic_error_t **e);
0465
0466 int
0467 xcb_xvmc_list_surface_types_sizeof (const void *_buffer);
0468
0469
0470
0471
0472
0473
0474
0475
0476
0477 xcb_xvmc_list_surface_types_cookie_t
0478 xcb_xvmc_list_surface_types (xcb_connection_t *c,
0479 xcb_xv_port_t port_id);
0480
0481
0482
0483
0484
0485
0486
0487
0488
0489
0490
0491
0492 xcb_xvmc_list_surface_types_cookie_t
0493 xcb_xvmc_list_surface_types_unchecked (xcb_connection_t *c,
0494 xcb_xv_port_t port_id);
0495
0496 xcb_xvmc_surface_info_t *
0497 xcb_xvmc_list_surface_types_surfaces (const xcb_xvmc_list_surface_types_reply_t *R);
0498
0499 int
0500 xcb_xvmc_list_surface_types_surfaces_length (const xcb_xvmc_list_surface_types_reply_t *R);
0501
0502 xcb_xvmc_surface_info_iterator_t
0503 xcb_xvmc_list_surface_types_surfaces_iterator (const xcb_xvmc_list_surface_types_reply_t *R);
0504
0505
0506
0507
0508
0509
0510
0511
0512
0513
0514
0515
0516
0517
0518
0519 xcb_xvmc_list_surface_types_reply_t *
0520 xcb_xvmc_list_surface_types_reply (xcb_connection_t *c,
0521 xcb_xvmc_list_surface_types_cookie_t cookie ,
0522 xcb_generic_error_t **e);
0523
0524 int
0525 xcb_xvmc_create_context_sizeof (const void *_buffer);
0526
0527
0528
0529
0530
0531
0532
0533
0534
0535 xcb_xvmc_create_context_cookie_t
0536 xcb_xvmc_create_context (xcb_connection_t *c,
0537 xcb_xvmc_context_t context_id,
0538 xcb_xv_port_t port_id,
0539 xcb_xvmc_surface_t surface_id,
0540 uint16_t width,
0541 uint16_t height,
0542 uint32_t flags);
0543
0544
0545
0546
0547
0548
0549
0550
0551
0552
0553
0554
0555 xcb_xvmc_create_context_cookie_t
0556 xcb_xvmc_create_context_unchecked (xcb_connection_t *c,
0557 xcb_xvmc_context_t context_id,
0558 xcb_xv_port_t port_id,
0559 xcb_xvmc_surface_t surface_id,
0560 uint16_t width,
0561 uint16_t height,
0562 uint32_t flags);
0563
0564 uint32_t *
0565 xcb_xvmc_create_context_priv_data (const xcb_xvmc_create_context_reply_t *R);
0566
0567 int
0568 xcb_xvmc_create_context_priv_data_length (const xcb_xvmc_create_context_reply_t *R);
0569
0570 xcb_generic_iterator_t
0571 xcb_xvmc_create_context_priv_data_end (const xcb_xvmc_create_context_reply_t *R);
0572
0573
0574
0575
0576
0577
0578
0579
0580
0581
0582
0583
0584
0585
0586
0587 xcb_xvmc_create_context_reply_t *
0588 xcb_xvmc_create_context_reply (xcb_connection_t *c,
0589 xcb_xvmc_create_context_cookie_t cookie ,
0590 xcb_generic_error_t **e);
0591
0592
0593
0594
0595
0596
0597
0598
0599
0600
0601
0602
0603 xcb_void_cookie_t
0604 xcb_xvmc_destroy_context_checked (xcb_connection_t *c,
0605 xcb_xvmc_context_t context_id);
0606
0607
0608
0609
0610
0611
0612
0613
0614
0615 xcb_void_cookie_t
0616 xcb_xvmc_destroy_context (xcb_connection_t *c,
0617 xcb_xvmc_context_t context_id);
0618
0619 int
0620 xcb_xvmc_create_surface_sizeof (const void *_buffer);
0621
0622
0623
0624
0625
0626
0627
0628
0629
0630 xcb_xvmc_create_surface_cookie_t
0631 xcb_xvmc_create_surface (xcb_connection_t *c,
0632 xcb_xvmc_surface_t surface_id,
0633 xcb_xvmc_context_t context_id);
0634
0635
0636
0637
0638
0639
0640
0641
0642
0643
0644
0645
0646 xcb_xvmc_create_surface_cookie_t
0647 xcb_xvmc_create_surface_unchecked (xcb_connection_t *c,
0648 xcb_xvmc_surface_t surface_id,
0649 xcb_xvmc_context_t context_id);
0650
0651 uint32_t *
0652 xcb_xvmc_create_surface_priv_data (const xcb_xvmc_create_surface_reply_t *R);
0653
0654 int
0655 xcb_xvmc_create_surface_priv_data_length (const xcb_xvmc_create_surface_reply_t *R);
0656
0657 xcb_generic_iterator_t
0658 xcb_xvmc_create_surface_priv_data_end (const xcb_xvmc_create_surface_reply_t *R);
0659
0660
0661
0662
0663
0664
0665
0666
0667
0668
0669
0670
0671
0672
0673
0674 xcb_xvmc_create_surface_reply_t *
0675 xcb_xvmc_create_surface_reply (xcb_connection_t *c,
0676 xcb_xvmc_create_surface_cookie_t cookie ,
0677 xcb_generic_error_t **e);
0678
0679
0680
0681
0682
0683
0684
0685
0686
0687
0688
0689
0690 xcb_void_cookie_t
0691 xcb_xvmc_destroy_surface_checked (xcb_connection_t *c,
0692 xcb_xvmc_surface_t surface_id);
0693
0694
0695
0696
0697
0698
0699
0700
0701
0702 xcb_void_cookie_t
0703 xcb_xvmc_destroy_surface (xcb_connection_t *c,
0704 xcb_xvmc_surface_t surface_id);
0705
0706 int
0707 xcb_xvmc_create_subpicture_sizeof (const void *_buffer);
0708
0709
0710
0711
0712
0713
0714
0715
0716
0717 xcb_xvmc_create_subpicture_cookie_t
0718 xcb_xvmc_create_subpicture (xcb_connection_t *c,
0719 xcb_xvmc_subpicture_t subpicture_id,
0720 xcb_xvmc_context_t context,
0721 uint32_t xvimage_id,
0722 uint16_t width,
0723 uint16_t height);
0724
0725
0726
0727
0728
0729
0730
0731
0732
0733
0734
0735
0736 xcb_xvmc_create_subpicture_cookie_t
0737 xcb_xvmc_create_subpicture_unchecked (xcb_connection_t *c,
0738 xcb_xvmc_subpicture_t subpicture_id,
0739 xcb_xvmc_context_t context,
0740 uint32_t xvimage_id,
0741 uint16_t width,
0742 uint16_t height);
0743
0744 uint32_t *
0745 xcb_xvmc_create_subpicture_priv_data (const xcb_xvmc_create_subpicture_reply_t *R);
0746
0747 int
0748 xcb_xvmc_create_subpicture_priv_data_length (const xcb_xvmc_create_subpicture_reply_t *R);
0749
0750 xcb_generic_iterator_t
0751 xcb_xvmc_create_subpicture_priv_data_end (const xcb_xvmc_create_subpicture_reply_t *R);
0752
0753
0754
0755
0756
0757
0758
0759
0760
0761
0762
0763
0764
0765
0766
0767 xcb_xvmc_create_subpicture_reply_t *
0768 xcb_xvmc_create_subpicture_reply (xcb_connection_t *c,
0769 xcb_xvmc_create_subpicture_cookie_t cookie ,
0770 xcb_generic_error_t **e);
0771
0772
0773
0774
0775
0776
0777
0778
0779
0780
0781
0782
0783 xcb_void_cookie_t
0784 xcb_xvmc_destroy_subpicture_checked (xcb_connection_t *c,
0785 xcb_xvmc_subpicture_t subpicture_id);
0786
0787
0788
0789
0790
0791
0792
0793
0794
0795 xcb_void_cookie_t
0796 xcb_xvmc_destroy_subpicture (xcb_connection_t *c,
0797 xcb_xvmc_subpicture_t subpicture_id);
0798
0799 int
0800 xcb_xvmc_list_subpicture_types_sizeof (const void *_buffer);
0801
0802
0803
0804
0805
0806
0807
0808
0809
0810 xcb_xvmc_list_subpicture_types_cookie_t
0811 xcb_xvmc_list_subpicture_types (xcb_connection_t *c,
0812 xcb_xv_port_t port_id,
0813 xcb_xvmc_surface_t surface_id);
0814
0815
0816
0817
0818
0819
0820
0821
0822
0823
0824
0825
0826 xcb_xvmc_list_subpicture_types_cookie_t
0827 xcb_xvmc_list_subpicture_types_unchecked (xcb_connection_t *c,
0828 xcb_xv_port_t port_id,
0829 xcb_xvmc_surface_t surface_id);
0830
0831 xcb_xv_image_format_info_t *
0832 xcb_xvmc_list_subpicture_types_types (const xcb_xvmc_list_subpicture_types_reply_t *R);
0833
0834 int
0835 xcb_xvmc_list_subpicture_types_types_length (const xcb_xvmc_list_subpicture_types_reply_t *R);
0836
0837 xcb_xv_image_format_info_iterator_t
0838 xcb_xvmc_list_subpicture_types_types_iterator (const xcb_xvmc_list_subpicture_types_reply_t *R);
0839
0840
0841
0842
0843
0844
0845
0846
0847
0848
0849
0850
0851
0852
0853
0854 xcb_xvmc_list_subpicture_types_reply_t *
0855 xcb_xvmc_list_subpicture_types_reply (xcb_connection_t *c,
0856 xcb_xvmc_list_subpicture_types_cookie_t cookie ,
0857 xcb_generic_error_t **e);
0858
0859
0860 #ifdef __cplusplus
0861 }
0862 #endif
0863
0864 #endif
0865
0866
0867
0868