zorldo

Goofing around with Ebiten
git clone git://bsandro.tech/zorldo
Log | Files | Refs | README

wayland-idle-inhibit-unstable-v1-client-protocol.h (9131B)


      1 /* Generated by wayland-scanner */
      2 
      3 #ifndef IDLE_INHIBIT_UNSTABLE_V1_CLIENT_PROTOCOL_H
      4 #define IDLE_INHIBIT_UNSTABLE_V1_CLIENT_PROTOCOL_H
      5 
      6 #include <stdint.h>
      7 #include <stddef.h>
      8 #include "wayland-client.h"
      9 
     10 #ifdef  __cplusplus
     11 extern "C" {
     12 #endif
     13 
     14 /**
     15  * @page page_idle_inhibit_unstable_v1 The idle_inhibit_unstable_v1 protocol
     16  * @section page_ifaces_idle_inhibit_unstable_v1 Interfaces
     17  * - @subpage page_iface_zwp_idle_inhibit_manager_v1 - control behavior when display idles
     18  * - @subpage page_iface_zwp_idle_inhibitor_v1 - context object for inhibiting idle behavior
     19  * @section page_copyright_idle_inhibit_unstable_v1 Copyright
     20  * <pre>
     21  *
     22  * Copyright © 2015 Samsung Electronics Co., Ltd
     23  *
     24  * Permission is hereby granted, free of charge, to any person obtaining a
     25  * copy of this software and associated documentation files (the "Software"),
     26  * to deal in the Software without restriction, including without limitation
     27  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
     28  * and/or sell copies of the Software, and to permit persons to whom the
     29  * Software is furnished to do so, subject to the following conditions:
     30  *
     31  * The above copyright notice and this permission notice (including the next
     32  * paragraph) shall be included in all copies or substantial portions of the
     33  * Software.
     34  *
     35  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     36  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     37  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
     38  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     39  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
     40  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
     41  * DEALINGS IN THE SOFTWARE.
     42  * </pre>
     43  */
     44 struct wl_surface;
     45 struct zwp_idle_inhibit_manager_v1;
     46 struct zwp_idle_inhibitor_v1;
     47 
     48 /**
     49  * @page page_iface_zwp_idle_inhibit_manager_v1 zwp_idle_inhibit_manager_v1
     50  * @section page_iface_zwp_idle_inhibit_manager_v1_desc Description
     51  *
     52  * This interface permits inhibiting the idle behavior such as screen
     53  * blanking, locking, and screensaving.  The client binds the idle manager
     54  * globally, then creates idle-inhibitor objects for each surface.
     55  *
     56  * Warning! The protocol described in this file is experimental and
     57  * backward incompatible changes may be made. Backward compatible changes
     58  * may be added together with the corresponding interface version bump.
     59  * Backward incompatible changes are done by bumping the version number in
     60  * the protocol and interface names and resetting the interface version.
     61  * Once the protocol is to be declared stable, the 'z' prefix and the
     62  * version number in the protocol and interface names are removed and the
     63  * interface version number is reset.
     64  * @section page_iface_zwp_idle_inhibit_manager_v1_api API
     65  * See @ref iface_zwp_idle_inhibit_manager_v1.
     66  */
     67 /**
     68  * @defgroup iface_zwp_idle_inhibit_manager_v1 The zwp_idle_inhibit_manager_v1 interface
     69  *
     70  * This interface permits inhibiting the idle behavior such as screen
     71  * blanking, locking, and screensaving.  The client binds the idle manager
     72  * globally, then creates idle-inhibitor objects for each surface.
     73  *
     74  * Warning! The protocol described in this file is experimental and
     75  * backward incompatible changes may be made. Backward compatible changes
     76  * may be added together with the corresponding interface version bump.
     77  * Backward incompatible changes are done by bumping the version number in
     78  * the protocol and interface names and resetting the interface version.
     79  * Once the protocol is to be declared stable, the 'z' prefix and the
     80  * version number in the protocol and interface names are removed and the
     81  * interface version number is reset.
     82  */
     83 extern const struct wl_interface zwp_idle_inhibit_manager_v1_interface;
     84 /**
     85  * @page page_iface_zwp_idle_inhibitor_v1 zwp_idle_inhibitor_v1
     86  * @section page_iface_zwp_idle_inhibitor_v1_desc Description
     87  *
     88  * An idle inhibitor prevents the output that the associated surface is
     89  * visible on from being set to a state where it is not visually usable due
     90  * to lack of user interaction (e.g. blanked, dimmed, locked, set to power
     91  * save, etc.)  Any screensaver processes are also blocked from displaying.
     92  *
     93  * If the surface is destroyed, unmapped, becomes occluded, loses
     94  * visibility, or otherwise becomes not visually relevant for the user, the
     95  * idle inhibitor will not be honored by the compositor; if the surface
     96  * subsequently regains visibility the inhibitor takes effect once again.
     97  * Likewise, the inhibitor isn't honored if the system was already idled at
     98  * the time the inhibitor was established, although if the system later
     99  * de-idles and re-idles the inhibitor will take effect.
    100  * @section page_iface_zwp_idle_inhibitor_v1_api API
    101  * See @ref iface_zwp_idle_inhibitor_v1.
    102  */
    103 /**
    104  * @defgroup iface_zwp_idle_inhibitor_v1 The zwp_idle_inhibitor_v1 interface
    105  *
    106  * An idle inhibitor prevents the output that the associated surface is
    107  * visible on from being set to a state where it is not visually usable due
    108  * to lack of user interaction (e.g. blanked, dimmed, locked, set to power
    109  * save, etc.)  Any screensaver processes are also blocked from displaying.
    110  *
    111  * If the surface is destroyed, unmapped, becomes occluded, loses
    112  * visibility, or otherwise becomes not visually relevant for the user, the
    113  * idle inhibitor will not be honored by the compositor; if the surface
    114  * subsequently regains visibility the inhibitor takes effect once again.
    115  * Likewise, the inhibitor isn't honored if the system was already idled at
    116  * the time the inhibitor was established, although if the system later
    117  * de-idles and re-idles the inhibitor will take effect.
    118  */
    119 extern const struct wl_interface zwp_idle_inhibitor_v1_interface;
    120 
    121 #define ZWP_IDLE_INHIBIT_MANAGER_V1_DESTROY 0
    122 #define ZWP_IDLE_INHIBIT_MANAGER_V1_CREATE_INHIBITOR 1
    123 
    124 
    125 /**
    126  * @ingroup iface_zwp_idle_inhibit_manager_v1
    127  */
    128 #define ZWP_IDLE_INHIBIT_MANAGER_V1_DESTROY_SINCE_VERSION 1
    129 /**
    130  * @ingroup iface_zwp_idle_inhibit_manager_v1
    131  */
    132 #define ZWP_IDLE_INHIBIT_MANAGER_V1_CREATE_INHIBITOR_SINCE_VERSION 1
    133 
    134 /** @ingroup iface_zwp_idle_inhibit_manager_v1 */
    135 static inline void
    136 zwp_idle_inhibit_manager_v1_set_user_data(struct zwp_idle_inhibit_manager_v1 *zwp_idle_inhibit_manager_v1, void *user_data)
    137 {
    138 	wl_proxy_set_user_data((struct wl_proxy *) zwp_idle_inhibit_manager_v1, user_data);
    139 }
    140 
    141 /** @ingroup iface_zwp_idle_inhibit_manager_v1 */
    142 static inline void *
    143 zwp_idle_inhibit_manager_v1_get_user_data(struct zwp_idle_inhibit_manager_v1 *zwp_idle_inhibit_manager_v1)
    144 {
    145 	return wl_proxy_get_user_data((struct wl_proxy *) zwp_idle_inhibit_manager_v1);
    146 }
    147 
    148 static inline uint32_t
    149 zwp_idle_inhibit_manager_v1_get_version(struct zwp_idle_inhibit_manager_v1 *zwp_idle_inhibit_manager_v1)
    150 {
    151 	return wl_proxy_get_version((struct wl_proxy *) zwp_idle_inhibit_manager_v1);
    152 }
    153 
    154 /**
    155  * @ingroup iface_zwp_idle_inhibit_manager_v1
    156  *
    157  * Destroy the inhibit manager.
    158  */
    159 static inline void
    160 zwp_idle_inhibit_manager_v1_destroy(struct zwp_idle_inhibit_manager_v1 *zwp_idle_inhibit_manager_v1)
    161 {
    162 	wl_proxy_marshal((struct wl_proxy *) zwp_idle_inhibit_manager_v1,
    163 			 ZWP_IDLE_INHIBIT_MANAGER_V1_DESTROY);
    164 
    165 	wl_proxy_destroy((struct wl_proxy *) zwp_idle_inhibit_manager_v1);
    166 }
    167 
    168 /**
    169  * @ingroup iface_zwp_idle_inhibit_manager_v1
    170  *
    171  * Create a new inhibitor object associated with the given surface.
    172  */
    173 static inline struct zwp_idle_inhibitor_v1 *
    174 zwp_idle_inhibit_manager_v1_create_inhibitor(struct zwp_idle_inhibit_manager_v1 *zwp_idle_inhibit_manager_v1, struct wl_surface *surface)
    175 {
    176 	struct wl_proxy *id;
    177 
    178 	id = wl_proxy_marshal_constructor((struct wl_proxy *) zwp_idle_inhibit_manager_v1,
    179 			 ZWP_IDLE_INHIBIT_MANAGER_V1_CREATE_INHIBITOR, &zwp_idle_inhibitor_v1_interface, NULL, surface);
    180 
    181 	return (struct zwp_idle_inhibitor_v1 *) id;
    182 }
    183 
    184 #define ZWP_IDLE_INHIBITOR_V1_DESTROY 0
    185 
    186 
    187 /**
    188  * @ingroup iface_zwp_idle_inhibitor_v1
    189  */
    190 #define ZWP_IDLE_INHIBITOR_V1_DESTROY_SINCE_VERSION 1
    191 
    192 /** @ingroup iface_zwp_idle_inhibitor_v1 */
    193 static inline void
    194 zwp_idle_inhibitor_v1_set_user_data(struct zwp_idle_inhibitor_v1 *zwp_idle_inhibitor_v1, void *user_data)
    195 {
    196 	wl_proxy_set_user_data((struct wl_proxy *) zwp_idle_inhibitor_v1, user_data);
    197 }
    198 
    199 /** @ingroup iface_zwp_idle_inhibitor_v1 */
    200 static inline void *
    201 zwp_idle_inhibitor_v1_get_user_data(struct zwp_idle_inhibitor_v1 *zwp_idle_inhibitor_v1)
    202 {
    203 	return wl_proxy_get_user_data((struct wl_proxy *) zwp_idle_inhibitor_v1);
    204 }
    205 
    206 static inline uint32_t
    207 zwp_idle_inhibitor_v1_get_version(struct zwp_idle_inhibitor_v1 *zwp_idle_inhibitor_v1)
    208 {
    209 	return wl_proxy_get_version((struct wl_proxy *) zwp_idle_inhibitor_v1);
    210 }
    211 
    212 /**
    213  * @ingroup iface_zwp_idle_inhibitor_v1
    214  *
    215  * Remove the inhibitor effect from the associated wl_surface.
    216  */
    217 static inline void
    218 zwp_idle_inhibitor_v1_destroy(struct zwp_idle_inhibitor_v1 *zwp_idle_inhibitor_v1)
    219 {
    220 	wl_proxy_marshal((struct wl_proxy *) zwp_idle_inhibitor_v1,
    221 			 ZWP_IDLE_INHIBITOR_V1_DESTROY);
    222 
    223 	wl_proxy_destroy((struct wl_proxy *) zwp_idle_inhibitor_v1);
    224 }
    225 
    226 #ifdef  __cplusplus
    227 }
    228 #endif
    229 
    230 #endif