dpms.h revision 1.6
1/*
2 * This file generated automatically from dpms.xml by c_client.py.
3 * Edit at your peril.
4 */
5
6/**
7 * @defgroup XCB_DPMS_API XCB DPMS API
8 * @brief DPMS XCB Protocol Implementation.
9 * @{
10 **/
11
12#ifndef __DPMS_H
13#define __DPMS_H
14
15#include "xcb.h"
16#include "xproto.h"
17
18#ifdef __cplusplus
19extern "C" {
20#endif
21
22#define XCB_DPMS_MAJOR_VERSION 1
23#define XCB_DPMS_MINOR_VERSION 2
24
25extern xcb_extension_t xcb_dpms_id;
26
27/**
28 * @brief xcb_dpms_get_version_cookie_t
29 **/
30typedef struct xcb_dpms_get_version_cookie_t {
31    unsigned int sequence;
32} xcb_dpms_get_version_cookie_t;
33
34/** Opcode for xcb_dpms_get_version. */
35#define XCB_DPMS_GET_VERSION 0
36
37/**
38 * @brief xcb_dpms_get_version_request_t
39 **/
40typedef struct xcb_dpms_get_version_request_t {
41    uint8_t  major_opcode;
42    uint8_t  minor_opcode;
43    uint16_t length;
44    uint16_t client_major_version;
45    uint16_t client_minor_version;
46} xcb_dpms_get_version_request_t;
47
48/**
49 * @brief xcb_dpms_get_version_reply_t
50 **/
51typedef struct xcb_dpms_get_version_reply_t {
52    uint8_t  response_type;
53    uint8_t  pad0;
54    uint16_t sequence;
55    uint32_t length;
56    uint16_t server_major_version;
57    uint16_t server_minor_version;
58} xcb_dpms_get_version_reply_t;
59
60/**
61 * @brief xcb_dpms_capable_cookie_t
62 **/
63typedef struct xcb_dpms_capable_cookie_t {
64    unsigned int sequence;
65} xcb_dpms_capable_cookie_t;
66
67/** Opcode for xcb_dpms_capable. */
68#define XCB_DPMS_CAPABLE 1
69
70/**
71 * @brief xcb_dpms_capable_request_t
72 **/
73typedef struct xcb_dpms_capable_request_t {
74    uint8_t  major_opcode;
75    uint8_t  minor_opcode;
76    uint16_t length;
77} xcb_dpms_capable_request_t;
78
79/**
80 * @brief xcb_dpms_capable_reply_t
81 **/
82typedef struct xcb_dpms_capable_reply_t {
83    uint8_t  response_type;
84    uint8_t  pad0;
85    uint16_t sequence;
86    uint32_t length;
87    uint8_t  capable;
88    uint8_t  pad1[23];
89} xcb_dpms_capable_reply_t;
90
91/**
92 * @brief xcb_dpms_get_timeouts_cookie_t
93 **/
94typedef struct xcb_dpms_get_timeouts_cookie_t {
95    unsigned int sequence;
96} xcb_dpms_get_timeouts_cookie_t;
97
98/** Opcode for xcb_dpms_get_timeouts. */
99#define XCB_DPMS_GET_TIMEOUTS 2
100
101/**
102 * @brief xcb_dpms_get_timeouts_request_t
103 **/
104typedef struct xcb_dpms_get_timeouts_request_t {
105    uint8_t  major_opcode;
106    uint8_t  minor_opcode;
107    uint16_t length;
108} xcb_dpms_get_timeouts_request_t;
109
110/**
111 * @brief xcb_dpms_get_timeouts_reply_t
112 **/
113typedef struct xcb_dpms_get_timeouts_reply_t {
114    uint8_t  response_type;
115    uint8_t  pad0;
116    uint16_t sequence;
117    uint32_t length;
118    uint16_t standby_timeout;
119    uint16_t suspend_timeout;
120    uint16_t off_timeout;
121    uint8_t  pad1[18];
122} xcb_dpms_get_timeouts_reply_t;
123
124/** Opcode for xcb_dpms_set_timeouts. */
125#define XCB_DPMS_SET_TIMEOUTS 3
126
127/**
128 * @brief xcb_dpms_set_timeouts_request_t
129 **/
130typedef struct xcb_dpms_set_timeouts_request_t {
131    uint8_t  major_opcode;
132    uint8_t  minor_opcode;
133    uint16_t length;
134    uint16_t standby_timeout;
135    uint16_t suspend_timeout;
136    uint16_t off_timeout;
137} xcb_dpms_set_timeouts_request_t;
138
139/** Opcode for xcb_dpms_enable. */
140#define XCB_DPMS_ENABLE 4
141
142/**
143 * @brief xcb_dpms_enable_request_t
144 **/
145typedef struct xcb_dpms_enable_request_t {
146    uint8_t  major_opcode;
147    uint8_t  minor_opcode;
148    uint16_t length;
149} xcb_dpms_enable_request_t;
150
151/** Opcode for xcb_dpms_disable. */
152#define XCB_DPMS_DISABLE 5
153
154/**
155 * @brief xcb_dpms_disable_request_t
156 **/
157typedef struct xcb_dpms_disable_request_t {
158    uint8_t  major_opcode;
159    uint8_t  minor_opcode;
160    uint16_t length;
161} xcb_dpms_disable_request_t;
162
163typedef enum xcb_dpms_dpms_mode_t {
164    XCB_DPMS_DPMS_MODE_ON = 0,
165    XCB_DPMS_DPMS_MODE_STANDBY = 1,
166    XCB_DPMS_DPMS_MODE_SUSPEND = 2,
167    XCB_DPMS_DPMS_MODE_OFF = 3
168} xcb_dpms_dpms_mode_t;
169
170/** Opcode for xcb_dpms_force_level. */
171#define XCB_DPMS_FORCE_LEVEL 6
172
173/**
174 * @brief xcb_dpms_force_level_request_t
175 **/
176typedef struct xcb_dpms_force_level_request_t {
177    uint8_t  major_opcode;
178    uint8_t  minor_opcode;
179    uint16_t length;
180    uint16_t power_level;
181} xcb_dpms_force_level_request_t;
182
183/**
184 * @brief xcb_dpms_info_cookie_t
185 **/
186typedef struct xcb_dpms_info_cookie_t {
187    unsigned int sequence;
188} xcb_dpms_info_cookie_t;
189
190/** Opcode for xcb_dpms_info. */
191#define XCB_DPMS_INFO 7
192
193/**
194 * @brief xcb_dpms_info_request_t
195 **/
196typedef struct xcb_dpms_info_request_t {
197    uint8_t  major_opcode;
198    uint8_t  minor_opcode;
199    uint16_t length;
200} xcb_dpms_info_request_t;
201
202/**
203 * @brief xcb_dpms_info_reply_t
204 **/
205typedef struct xcb_dpms_info_reply_t {
206    uint8_t  response_type;
207    uint8_t  pad0;
208    uint16_t sequence;
209    uint32_t length;
210    uint16_t power_level;
211    uint8_t  state;
212    uint8_t  pad1[21];
213} xcb_dpms_info_reply_t;
214
215typedef enum xcb_dpms_event_mask_t {
216    XCB_DPMS_EVENT_MASK_INFO_NOTIFY = 1
217} xcb_dpms_event_mask_t;
218
219/** Opcode for xcb_dpms_select_input. */
220#define XCB_DPMS_SELECT_INPUT 8
221
222/**
223 * @brief xcb_dpms_select_input_request_t
224 **/
225typedef struct xcb_dpms_select_input_request_t {
226    uint8_t  major_opcode;
227    uint8_t  minor_opcode;
228    uint16_t length;
229    uint32_t event_mask;
230} xcb_dpms_select_input_request_t;
231
232/** Opcode for xcb_dpms_info_notify. */
233#define XCB_DPMS_INFO_NOTIFY 0
234
235/**
236 * @brief xcb_dpms_info_notify_event_t
237 **/
238typedef struct xcb_dpms_info_notify_event_t {
239    uint8_t         response_type;
240    uint8_t         extension;
241    uint16_t        sequence;
242    uint32_t        length;
243    uint16_t        event_type;
244    uint8_t         pad0[2];
245    xcb_timestamp_t timestamp;
246    uint16_t        power_level;
247    uint8_t         state;
248    uint8_t         pad1[21];
249} xcb_dpms_info_notify_event_t;
250
251/**
252 *
253 * @param c The connection
254 * @return A cookie
255 *
256 * Delivers a request to the X server.
257 *
258 */
259xcb_dpms_get_version_cookie_t
260xcb_dpms_get_version (xcb_connection_t *c,
261                      uint16_t          client_major_version,
262                      uint16_t          client_minor_version);
263
264/**
265 *
266 * @param c The connection
267 * @return A cookie
268 *
269 * Delivers a request to the X server.
270 *
271 * This form can be used only if the request will cause
272 * a reply to be generated. Any returned error will be
273 * placed in the event queue.
274 */
275xcb_dpms_get_version_cookie_t
276xcb_dpms_get_version_unchecked (xcb_connection_t *c,
277                                uint16_t          client_major_version,
278                                uint16_t          client_minor_version);
279
280/**
281 * Return the reply
282 * @param c      The connection
283 * @param cookie The cookie
284 * @param e      The xcb_generic_error_t supplied
285 *
286 * Returns the reply of the request asked by
287 *
288 * The parameter @p e supplied to this function must be NULL if
289 * xcb_dpms_get_version_unchecked(). is used.
290 * Otherwise, it stores the error if any.
291 *
292 * The returned value must be freed by the caller using free().
293 */
294xcb_dpms_get_version_reply_t *
295xcb_dpms_get_version_reply (xcb_connection_t               *c,
296                            xcb_dpms_get_version_cookie_t   cookie  /**< */,
297                            xcb_generic_error_t           **e);
298
299/**
300 *
301 * @param c The connection
302 * @return A cookie
303 *
304 * Delivers a request to the X server.
305 *
306 */
307xcb_dpms_capable_cookie_t
308xcb_dpms_capable (xcb_connection_t *c);
309
310/**
311 *
312 * @param c The connection
313 * @return A cookie
314 *
315 * Delivers a request to the X server.
316 *
317 * This form can be used only if the request will cause
318 * a reply to be generated. Any returned error will be
319 * placed in the event queue.
320 */
321xcb_dpms_capable_cookie_t
322xcb_dpms_capable_unchecked (xcb_connection_t *c);
323
324/**
325 * Return the reply
326 * @param c      The connection
327 * @param cookie The cookie
328 * @param e      The xcb_generic_error_t supplied
329 *
330 * Returns the reply of the request asked by
331 *
332 * The parameter @p e supplied to this function must be NULL if
333 * xcb_dpms_capable_unchecked(). is used.
334 * Otherwise, it stores the error if any.
335 *
336 * The returned value must be freed by the caller using free().
337 */
338xcb_dpms_capable_reply_t *
339xcb_dpms_capable_reply (xcb_connection_t           *c,
340                        xcb_dpms_capable_cookie_t   cookie  /**< */,
341                        xcb_generic_error_t       **e);
342
343/**
344 *
345 * @param c The connection
346 * @return A cookie
347 *
348 * Delivers a request to the X server.
349 *
350 */
351xcb_dpms_get_timeouts_cookie_t
352xcb_dpms_get_timeouts (xcb_connection_t *c);
353
354/**
355 *
356 * @param c The connection
357 * @return A cookie
358 *
359 * Delivers a request to the X server.
360 *
361 * This form can be used only if the request will cause
362 * a reply to be generated. Any returned error will be
363 * placed in the event queue.
364 */
365xcb_dpms_get_timeouts_cookie_t
366xcb_dpms_get_timeouts_unchecked (xcb_connection_t *c);
367
368/**
369 * Return the reply
370 * @param c      The connection
371 * @param cookie The cookie
372 * @param e      The xcb_generic_error_t supplied
373 *
374 * Returns the reply of the request asked by
375 *
376 * The parameter @p e supplied to this function must be NULL if
377 * xcb_dpms_get_timeouts_unchecked(). is used.
378 * Otherwise, it stores the error if any.
379 *
380 * The returned value must be freed by the caller using free().
381 */
382xcb_dpms_get_timeouts_reply_t *
383xcb_dpms_get_timeouts_reply (xcb_connection_t                *c,
384                             xcb_dpms_get_timeouts_cookie_t   cookie  /**< */,
385                             xcb_generic_error_t            **e);
386
387/**
388 *
389 * @param c The connection
390 * @return A cookie
391 *
392 * Delivers a request to the X server.
393 *
394 * This form can be used only if the request will not cause
395 * a reply to be generated. Any returned error will be
396 * saved for handling by xcb_request_check().
397 */
398xcb_void_cookie_t
399xcb_dpms_set_timeouts_checked (xcb_connection_t *c,
400                               uint16_t          standby_timeout,
401                               uint16_t          suspend_timeout,
402                               uint16_t          off_timeout);
403
404/**
405 *
406 * @param c The connection
407 * @return A cookie
408 *
409 * Delivers a request to the X server.
410 *
411 */
412xcb_void_cookie_t
413xcb_dpms_set_timeouts (xcb_connection_t *c,
414                       uint16_t          standby_timeout,
415                       uint16_t          suspend_timeout,
416                       uint16_t          off_timeout);
417
418/**
419 *
420 * @param c The connection
421 * @return A cookie
422 *
423 * Delivers a request to the X server.
424 *
425 * This form can be used only if the request will not cause
426 * a reply to be generated. Any returned error will be
427 * saved for handling by xcb_request_check().
428 */
429xcb_void_cookie_t
430xcb_dpms_enable_checked (xcb_connection_t *c);
431
432/**
433 *
434 * @param c The connection
435 * @return A cookie
436 *
437 * Delivers a request to the X server.
438 *
439 */
440xcb_void_cookie_t
441xcb_dpms_enable (xcb_connection_t *c);
442
443/**
444 *
445 * @param c The connection
446 * @return A cookie
447 *
448 * Delivers a request to the X server.
449 *
450 * This form can be used only if the request will not cause
451 * a reply to be generated. Any returned error will be
452 * saved for handling by xcb_request_check().
453 */
454xcb_void_cookie_t
455xcb_dpms_disable_checked (xcb_connection_t *c);
456
457/**
458 *
459 * @param c The connection
460 * @return A cookie
461 *
462 * Delivers a request to the X server.
463 *
464 */
465xcb_void_cookie_t
466xcb_dpms_disable (xcb_connection_t *c);
467
468/**
469 *
470 * @param c The connection
471 * @return A cookie
472 *
473 * Delivers a request to the X server.
474 *
475 * This form can be used only if the request will not cause
476 * a reply to be generated. Any returned error will be
477 * saved for handling by xcb_request_check().
478 */
479xcb_void_cookie_t
480xcb_dpms_force_level_checked (xcb_connection_t *c,
481                              uint16_t          power_level);
482
483/**
484 *
485 * @param c The connection
486 * @return A cookie
487 *
488 * Delivers a request to the X server.
489 *
490 */
491xcb_void_cookie_t
492xcb_dpms_force_level (xcb_connection_t *c,
493                      uint16_t          power_level);
494
495/**
496 *
497 * @param c The connection
498 * @return A cookie
499 *
500 * Delivers a request to the X server.
501 *
502 */
503xcb_dpms_info_cookie_t
504xcb_dpms_info (xcb_connection_t *c);
505
506/**
507 *
508 * @param c The connection
509 * @return A cookie
510 *
511 * Delivers a request to the X server.
512 *
513 * This form can be used only if the request will cause
514 * a reply to be generated. Any returned error will be
515 * placed in the event queue.
516 */
517xcb_dpms_info_cookie_t
518xcb_dpms_info_unchecked (xcb_connection_t *c);
519
520/**
521 * Return the reply
522 * @param c      The connection
523 * @param cookie The cookie
524 * @param e      The xcb_generic_error_t supplied
525 *
526 * Returns the reply of the request asked by
527 *
528 * The parameter @p e supplied to this function must be NULL if
529 * xcb_dpms_info_unchecked(). is used.
530 * Otherwise, it stores the error if any.
531 *
532 * The returned value must be freed by the caller using free().
533 */
534xcb_dpms_info_reply_t *
535xcb_dpms_info_reply (xcb_connection_t        *c,
536                     xcb_dpms_info_cookie_t   cookie  /**< */,
537                     xcb_generic_error_t    **e);
538
539/**
540 *
541 * @param c The connection
542 * @return A cookie
543 *
544 * Delivers a request to the X server.
545 *
546 * This form can be used only if the request will not cause
547 * a reply to be generated. Any returned error will be
548 * saved for handling by xcb_request_check().
549 */
550xcb_void_cookie_t
551xcb_dpms_select_input_checked (xcb_connection_t *c,
552                               uint32_t          event_mask);
553
554/**
555 *
556 * @param c The connection
557 * @return A cookie
558 *
559 * Delivers a request to the X server.
560 *
561 */
562xcb_void_cookie_t
563xcb_dpms_select_input (xcb_connection_t *c,
564                       uint32_t          event_mask);
565
566
567#ifdef __cplusplus
568}
569#endif
570
571#endif
572
573/**
574 * @}
575 */
576