master
ブランチ master
ShaderPlayground / deps / xlibre / include / xcb / bigreq.h
2.9 KB、117行 生 Blame 履歴
1/*
2 * This file generated automatically from bigreq.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6/**
7 * @defgroup XCB_BigRequests_API XCB BigRequests API
8 * @brief BigRequests XCB Protocol Implementation.
9 * @{
10 **/
11
12#ifndef __BIGREQ_H
13#define __BIGREQ_H
14
15#include "xcb.h"
16
17#ifdef __cplusplus
18extern "C" {
19#endif
20
21#define XCB_BIGREQUESTS_MAJOR_VERSION 0
22#define XCB_BIGREQUESTS_MINOR_VERSION 0
23
24extern xcb_extension_t xcb_big_requests_id;
25
26/**
27 * @brief xcb_big_requests_enable_cookie_t
28 **/
29typedef struct xcb_big_requests_enable_cookie_t {
30 unsigned int sequence;
31} xcb_big_requests_enable_cookie_t;
32
33/** Opcode for xcb_big_requests_enable. */
34#define XCB_BIG_REQUESTS_ENABLE 0
35
36/**
37 * @brief xcb_big_requests_enable_request_t
38 **/
39typedef struct xcb_big_requests_enable_request_t {
40 uint8_t major_opcode;
41 uint8_t minor_opcode;
42 uint16_t length;
43} xcb_big_requests_enable_request_t;
44
45/**
46 * @brief xcb_big_requests_enable_reply_t
47 **/
48typedef struct xcb_big_requests_enable_reply_t {
49 uint8_t response_type;
50 uint8_t pad0;
51 uint16_t sequence;
52 uint32_t length;
53 uint32_t maximum_request_length;
54} xcb_big_requests_enable_reply_t;
55
56/**
57 * @brief Enable the BIG-REQUESTS extension
58 *
59 * @param c The connection
60 * @return A cookie
61 *
62 * This enables the BIG-REQUESTS extension, which allows for requests larger than
63 * 262140 bytes in length. When enabled, if the 16-bit length field is zero, it
64 * is immediately followed by a 32-bit length field specifying the length of the
65 * request in 4-byte units.
66 *
67 */
68xcb_big_requests_enable_cookie_t
69xcb_big_requests_enable (xcb_connection_t *c);
70
71/**
72 * @brief Enable the BIG-REQUESTS extension
73 *
74 * @param c The connection
75 * @return A cookie
76 *
77 * This enables the BIG-REQUESTS extension, which allows for requests larger than
78 * 262140 bytes in length. When enabled, if the 16-bit length field is zero, it
79 * is immediately followed by a 32-bit length field specifying the length of the
80 * request in 4-byte units.
81 *
82 * This form can be used only if the request will cause
83 * a reply to be generated. Any returned error will be
84 * placed in the event queue.
85 */
86xcb_big_requests_enable_cookie_t
87xcb_big_requests_enable_unchecked (xcb_connection_t *c);
88
89/**
90 * Return the reply
91 * @param c The connection
92 * @param cookie The cookie
93 * @param e The xcb_generic_error_t supplied
94 *
95 * Returns the reply of the request asked by
96 *
97 * The parameter @p e supplied to this function must be NULL if
98 * xcb_big_requests_enable_unchecked(). is used.
99 * Otherwise, it stores the error if any.
100 *
101 * The returned value must be freed by the caller using free().
102 */
103xcb_big_requests_enable_reply_t *
104xcb_big_requests_enable_reply (xcb_connection_t *c,
105 xcb_big_requests_enable_cookie_t cookie /**< */,
106 xcb_generic_error_t **e);
107
108
109#ifdef __cplusplus
110}
111#endif
112
113#endif
114
115/**
116 * @}
117 */