1 /* Generated by wayland-scanner 1.22.0 */
2 
3 #ifndef POINTER_GESTURES_UNSTABLE_V1_CLIENT_PROTOCOL_H
4 #define POINTER_GESTURES_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_pointer_gestures_unstable_v1 The pointer_gestures_unstable_v1 protocol
16  * @section page_ifaces_pointer_gestures_unstable_v1 Interfaces
17  * - @subpage page_iface_zwp_pointer_gestures_v1 - touchpad gestures
18  * - @subpage page_iface_zwp_pointer_gesture_swipe_v1 - a swipe gesture object
19  * - @subpage page_iface_zwp_pointer_gesture_pinch_v1 - a pinch gesture object
20  */
21 struct wl_pointer;
22 struct wl_surface;
23 struct zwp_pointer_gesture_pinch_v1;
24 struct zwp_pointer_gesture_swipe_v1;
25 struct zwp_pointer_gestures_v1;
26 
27 #ifndef ZWP_POINTER_GESTURES_V1_INTERFACE
28 #define ZWP_POINTER_GESTURES_V1_INTERFACE
29 /**
30  * @page page_iface_zwp_pointer_gestures_v1 zwp_pointer_gestures_v1
31  * @section page_iface_zwp_pointer_gestures_v1_desc Description
32  *
33  * A global interface to provide semantic touchpad gestures for a given
34  * pointer.
35  *
36  * Two gestures are currently supported: swipe and pinch.
37  * All gestures follow a three-stage cycle: begin, update, end and
38  * are identified by a unique id.
39  *
40  * Warning! The protocol described in this file is experimental and
41  * backward incompatible changes may be made. Backward compatible changes
42  * may be added together with the corresponding interface version bump.
43  * Backward incompatible changes are done by bumping the version number in
44  * the protocol and interface names and resetting the interface version.
45  * Once the protocol is to be declared stable, the 'z' prefix and the
46  * version number in the protocol and interface names are removed and the
47  * interface version number is reset.
48  * @section page_iface_zwp_pointer_gestures_v1_api API
49  * See @ref iface_zwp_pointer_gestures_v1.
50  */
51 /**
52  * @defgroup iface_zwp_pointer_gestures_v1 The zwp_pointer_gestures_v1 interface
53  *
54  * A global interface to provide semantic touchpad gestures for a given
55  * pointer.
56  *
57  * Two gestures are currently supported: swipe and pinch.
58  * All gestures follow a three-stage cycle: begin, update, end and
59  * are identified by a unique id.
60  *
61  * Warning! The protocol described in this file is experimental and
62  * backward incompatible changes may be made. Backward compatible changes
63  * may be added together with the corresponding interface version bump.
64  * Backward incompatible changes are done by bumping the version number in
65  * the protocol and interface names and resetting the interface version.
66  * Once the protocol is to be declared stable, the 'z' prefix and the
67  * version number in the protocol and interface names are removed and the
68  * interface version number is reset.
69  */
70 extern const struct wl_interface zwp_pointer_gestures_v1_interface;
71 #endif
72 #ifndef ZWP_POINTER_GESTURE_SWIPE_V1_INTERFACE
73 #define ZWP_POINTER_GESTURE_SWIPE_V1_INTERFACE
74 /**
75  * @page page_iface_zwp_pointer_gesture_swipe_v1 zwp_pointer_gesture_swipe_v1
76  * @section page_iface_zwp_pointer_gesture_swipe_v1_desc Description
77  *
78  * A swipe gesture object notifies a client about a multi-finger swipe
79  * gesture detected on an indirect input device such as a touchpad.
80  * The gesture is usually initiated by multiple fingers moving in the
81  * same direction but once initiated the direction may change.
82  * The precise conditions of when such a gesture is detected are
83  * implementation-dependent.
84  *
85  * A gesture consists of three stages: begin, update (optional) and end.
86  * There cannot be multiple simultaneous pinch or swipe gestures on a
87  * same pointer/seat, how compositors prevent these situations is
88  * implementation-dependent.
89  *
90  * A gesture may be cancelled by the compositor or the hardware.
91  * Clients should not consider performing permanent or irreversible
92  * actions until the end of a gesture has been received.
93  * @section page_iface_zwp_pointer_gesture_swipe_v1_api API
94  * See @ref iface_zwp_pointer_gesture_swipe_v1.
95  */
96 /**
97  * @defgroup iface_zwp_pointer_gesture_swipe_v1 The zwp_pointer_gesture_swipe_v1 interface
98  *
99  * A swipe gesture object notifies a client about a multi-finger swipe
100  * gesture detected on an indirect input device such as a touchpad.
101  * The gesture is usually initiated by multiple fingers moving in the
102  * same direction but once initiated the direction may change.
103  * The precise conditions of when such a gesture is detected are
104  * implementation-dependent.
105  *
106  * A gesture consists of three stages: begin, update (optional) and end.
107  * There cannot be multiple simultaneous pinch or swipe gestures on a
108  * same pointer/seat, how compositors prevent these situations is
109  * implementation-dependent.
110  *
111  * A gesture may be cancelled by the compositor or the hardware.
112  * Clients should not consider performing permanent or irreversible
113  * actions until the end of a gesture has been received.
114  */
115 extern const struct wl_interface zwp_pointer_gesture_swipe_v1_interface;
116 #endif
117 #ifndef ZWP_POINTER_GESTURE_PINCH_V1_INTERFACE
118 #define ZWP_POINTER_GESTURE_PINCH_V1_INTERFACE
119 /**
120  * @page page_iface_zwp_pointer_gesture_pinch_v1 zwp_pointer_gesture_pinch_v1
121  * @section page_iface_zwp_pointer_gesture_pinch_v1_desc Description
122  *
123  * A pinch gesture object notifies a client about a multi-finger pinch
124  * gesture detected on an indirect input device such as a touchpad.
125  * The gesture is usually initiated by multiple fingers moving towards
126  * each other or away from each other, or by two or more fingers rotating
127  * around a logical center of gravity. The precise conditions of when
128  * such a gesture is detected are implementation-dependent.
129  *
130  * A gesture consists of three stages: begin, update (optional) and end.
131  * There cannot be multiple simultaneous pinch or swipe gestures on a
132  * same pointer/seat, how compositors prevent these situations is
133  * implementation-dependent.
134  *
135  * A gesture may be cancelled by the compositor or the hardware.
136  * Clients should not consider performing permanent or irreversible
137  * actions until the end of a gesture has been received.
138  * @section page_iface_zwp_pointer_gesture_pinch_v1_api API
139  * See @ref iface_zwp_pointer_gesture_pinch_v1.
140  */
141 /**
142  * @defgroup iface_zwp_pointer_gesture_pinch_v1 The zwp_pointer_gesture_pinch_v1 interface
143  *
144  * A pinch gesture object notifies a client about a multi-finger pinch
145  * gesture detected on an indirect input device such as a touchpad.
146  * The gesture is usually initiated by multiple fingers moving towards
147  * each other or away from each other, or by two or more fingers rotating
148  * around a logical center of gravity. The precise conditions of when
149  * such a gesture is detected are implementation-dependent.
150  *
151  * A gesture consists of three stages: begin, update (optional) and end.
152  * There cannot be multiple simultaneous pinch or swipe gestures on a
153  * same pointer/seat, how compositors prevent these situations is
154  * implementation-dependent.
155  *
156  * A gesture may be cancelled by the compositor or the hardware.
157  * Clients should not consider performing permanent or irreversible
158  * actions until the end of a gesture has been received.
159  */
160 extern const struct wl_interface zwp_pointer_gesture_pinch_v1_interface;
161 #endif
162 
163 #define ZWP_POINTER_GESTURES_V1_GET_SWIPE_GESTURE 0
164 #define ZWP_POINTER_GESTURES_V1_GET_PINCH_GESTURE 1
165 #define ZWP_POINTER_GESTURES_V1_RELEASE 2
166 
167 
168 /**
169  * @ingroup iface_zwp_pointer_gestures_v1
170  */
171 #define ZWP_POINTER_GESTURES_V1_GET_SWIPE_GESTURE_SINCE_VERSION 1
172 /**
173  * @ingroup iface_zwp_pointer_gestures_v1
174  */
175 #define ZWP_POINTER_GESTURES_V1_GET_PINCH_GESTURE_SINCE_VERSION 1
176 /**
177  * @ingroup iface_zwp_pointer_gestures_v1
178  */
179 #define ZWP_POINTER_GESTURES_V1_RELEASE_SINCE_VERSION 2
180 
181 /** @ingroup iface_zwp_pointer_gestures_v1 */
182 static inline void
zwp_pointer_gestures_v1_set_user_data(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1,void * user_data)183 zwp_pointer_gestures_v1_set_user_data(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1, void *user_data)
184 {
185 	wl_proxy_set_user_data((struct wl_proxy *) zwp_pointer_gestures_v1, user_data);
186 }
187 
188 /** @ingroup iface_zwp_pointer_gestures_v1 */
189 static inline void *
zwp_pointer_gestures_v1_get_user_data(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1)190 zwp_pointer_gestures_v1_get_user_data(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1)
191 {
192 	return wl_proxy_get_user_data((struct wl_proxy *) zwp_pointer_gestures_v1);
193 }
194 
195 static inline uint32_t
zwp_pointer_gestures_v1_get_version(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1)196 zwp_pointer_gestures_v1_get_version(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1)
197 {
198 	return wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gestures_v1);
199 }
200 
201 /** @ingroup iface_zwp_pointer_gestures_v1 */
202 static inline void
zwp_pointer_gestures_v1_destroy(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1)203 zwp_pointer_gestures_v1_destroy(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1)
204 {
205 	wl_proxy_destroy((struct wl_proxy *) zwp_pointer_gestures_v1);
206 }
207 
208 /**
209  * @ingroup iface_zwp_pointer_gestures_v1
210  *
211  * Create a swipe gesture object. See the
212  * wl_pointer_gesture_swipe interface for details.
213  */
214 static inline struct zwp_pointer_gesture_swipe_v1 *
zwp_pointer_gestures_v1_get_swipe_gesture(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1,struct wl_pointer * pointer)215 zwp_pointer_gestures_v1_get_swipe_gesture(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1, struct wl_pointer *pointer)
216 {
217 	struct wl_proxy *id;
218 
219 	id = wl_proxy_marshal_flags((struct wl_proxy *) zwp_pointer_gestures_v1,
220 			 ZWP_POINTER_GESTURES_V1_GET_SWIPE_GESTURE, &zwp_pointer_gesture_swipe_v1_interface, wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gestures_v1), 0, NULL, pointer);
221 
222 	return (struct zwp_pointer_gesture_swipe_v1 *) id;
223 }
224 
225 /**
226  * @ingroup iface_zwp_pointer_gestures_v1
227  *
228  * Create a pinch gesture object. See the
229  * wl_pointer_gesture_pinch interface for details.
230  */
231 static inline struct zwp_pointer_gesture_pinch_v1 *
zwp_pointer_gestures_v1_get_pinch_gesture(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1,struct wl_pointer * pointer)232 zwp_pointer_gestures_v1_get_pinch_gesture(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1, struct wl_pointer *pointer)
233 {
234 	struct wl_proxy *id;
235 
236 	id = wl_proxy_marshal_flags((struct wl_proxy *) zwp_pointer_gestures_v1,
237 			 ZWP_POINTER_GESTURES_V1_GET_PINCH_GESTURE, &zwp_pointer_gesture_pinch_v1_interface, wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gestures_v1), 0, NULL, pointer);
238 
239 	return (struct zwp_pointer_gesture_pinch_v1 *) id;
240 }
241 
242 /**
243  * @ingroup iface_zwp_pointer_gestures_v1
244  *
245  * Destroy the pointer gesture object. Swipe and pinch objects created via this
246  * gesture object remain valid.
247  */
248 static inline void
zwp_pointer_gestures_v1_release(struct zwp_pointer_gestures_v1 * zwp_pointer_gestures_v1)249 zwp_pointer_gestures_v1_release(struct zwp_pointer_gestures_v1 *zwp_pointer_gestures_v1)
250 {
251 	wl_proxy_marshal_flags((struct wl_proxy *) zwp_pointer_gestures_v1,
252 			 ZWP_POINTER_GESTURES_V1_RELEASE, NULL, wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gestures_v1), WL_MARSHAL_FLAG_DESTROY);
253 }
254 
255 /**
256  * @ingroup iface_zwp_pointer_gesture_swipe_v1
257  * @struct zwp_pointer_gesture_swipe_v1_listener
258  */
259 struct zwp_pointer_gesture_swipe_v1_listener {
260 	/**
261 	 * multi-finger swipe begin
262 	 *
263 	 * This event is sent when a multi-finger swipe gesture is
264 	 * detected on the device.
265 	 * @param time timestamp with millisecond granularity
266 	 * @param fingers number of fingers
267 	 */
268 	void (*begin)(void *data,
269 		      struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1,
270 		      uint32_t serial,
271 		      uint32_t time,
272 		      struct wl_surface *surface,
273 		      uint32_t fingers);
274 	/**
275 	 * multi-finger swipe motion
276 	 *
277 	 * This event is sent when a multi-finger swipe gesture changes
278 	 * the position of the logical center.
279 	 *
280 	 * The dx and dy coordinates are relative coordinates of the
281 	 * logical center of the gesture compared to the previous event.
282 	 * @param time timestamp with millisecond granularity
283 	 * @param dx delta x coordinate in surface coordinate space
284 	 * @param dy delta y coordinate in surface coordinate space
285 	 */
286 	void (*update)(void *data,
287 		       struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1,
288 		       uint32_t time,
289 		       wl_fixed_t dx,
290 		       wl_fixed_t dy);
291 	/**
292 	 * multi-finger swipe end
293 	 *
294 	 * This event is sent when a multi-finger swipe gesture ceases to
295 	 * be valid. This may happen when one or more fingers are lifted or
296 	 * the gesture is cancelled.
297 	 *
298 	 * When a gesture is cancelled, the client should undo state
299 	 * changes caused by this gesture. What causes a gesture to be
300 	 * cancelled is implementation-dependent.
301 	 * @param time timestamp with millisecond granularity
302 	 * @param cancelled 1 if the gesture was cancelled, 0 otherwise
303 	 */
304 	void (*end)(void *data,
305 		    struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1,
306 		    uint32_t serial,
307 		    uint32_t time,
308 		    int32_t cancelled);
309 };
310 
311 /**
312  * @ingroup iface_zwp_pointer_gesture_swipe_v1
313  */
314 static inline int
zwp_pointer_gesture_swipe_v1_add_listener(struct zwp_pointer_gesture_swipe_v1 * zwp_pointer_gesture_swipe_v1,const struct zwp_pointer_gesture_swipe_v1_listener * listener,void * data)315 zwp_pointer_gesture_swipe_v1_add_listener(struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1,
316 					  const struct zwp_pointer_gesture_swipe_v1_listener *listener, void *data)
317 {
318 	return wl_proxy_add_listener((struct wl_proxy *) zwp_pointer_gesture_swipe_v1,
319 				     (void (**)(void)) listener, data);
320 }
321 
322 #define ZWP_POINTER_GESTURE_SWIPE_V1_DESTROY 0
323 
324 /**
325  * @ingroup iface_zwp_pointer_gesture_swipe_v1
326  */
327 #define ZWP_POINTER_GESTURE_SWIPE_V1_BEGIN_SINCE_VERSION 1
328 /**
329  * @ingroup iface_zwp_pointer_gesture_swipe_v1
330  */
331 #define ZWP_POINTER_GESTURE_SWIPE_V1_UPDATE_SINCE_VERSION 1
332 /**
333  * @ingroup iface_zwp_pointer_gesture_swipe_v1
334  */
335 #define ZWP_POINTER_GESTURE_SWIPE_V1_END_SINCE_VERSION 1
336 
337 /**
338  * @ingroup iface_zwp_pointer_gesture_swipe_v1
339  */
340 #define ZWP_POINTER_GESTURE_SWIPE_V1_DESTROY_SINCE_VERSION 1
341 
342 /** @ingroup iface_zwp_pointer_gesture_swipe_v1 */
343 static inline void
zwp_pointer_gesture_swipe_v1_set_user_data(struct zwp_pointer_gesture_swipe_v1 * zwp_pointer_gesture_swipe_v1,void * user_data)344 zwp_pointer_gesture_swipe_v1_set_user_data(struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1, void *user_data)
345 {
346 	wl_proxy_set_user_data((struct wl_proxy *) zwp_pointer_gesture_swipe_v1, user_data);
347 }
348 
349 /** @ingroup iface_zwp_pointer_gesture_swipe_v1 */
350 static inline void *
zwp_pointer_gesture_swipe_v1_get_user_data(struct zwp_pointer_gesture_swipe_v1 * zwp_pointer_gesture_swipe_v1)351 zwp_pointer_gesture_swipe_v1_get_user_data(struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1)
352 {
353 	return wl_proxy_get_user_data((struct wl_proxy *) zwp_pointer_gesture_swipe_v1);
354 }
355 
356 static inline uint32_t
zwp_pointer_gesture_swipe_v1_get_version(struct zwp_pointer_gesture_swipe_v1 * zwp_pointer_gesture_swipe_v1)357 zwp_pointer_gesture_swipe_v1_get_version(struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1)
358 {
359 	return wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gesture_swipe_v1);
360 }
361 
362 /**
363  * @ingroup iface_zwp_pointer_gesture_swipe_v1
364  */
365 static inline void
zwp_pointer_gesture_swipe_v1_destroy(struct zwp_pointer_gesture_swipe_v1 * zwp_pointer_gesture_swipe_v1)366 zwp_pointer_gesture_swipe_v1_destroy(struct zwp_pointer_gesture_swipe_v1 *zwp_pointer_gesture_swipe_v1)
367 {
368 	wl_proxy_marshal_flags((struct wl_proxy *) zwp_pointer_gesture_swipe_v1,
369 			 ZWP_POINTER_GESTURE_SWIPE_V1_DESTROY, NULL, wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gesture_swipe_v1), WL_MARSHAL_FLAG_DESTROY);
370 }
371 
372 /**
373  * @ingroup iface_zwp_pointer_gesture_pinch_v1
374  * @struct zwp_pointer_gesture_pinch_v1_listener
375  */
376 struct zwp_pointer_gesture_pinch_v1_listener {
377 	/**
378 	 * multi-finger pinch begin
379 	 *
380 	 * This event is sent when a multi-finger pinch gesture is
381 	 * detected on the device.
382 	 * @param time timestamp with millisecond granularity
383 	 * @param fingers number of fingers
384 	 */
385 	void (*begin)(void *data,
386 		      struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1,
387 		      uint32_t serial,
388 		      uint32_t time,
389 		      struct wl_surface *surface,
390 		      uint32_t fingers);
391 	/**
392 	 * multi-finger pinch motion
393 	 *
394 	 * This event is sent when a multi-finger pinch gesture changes
395 	 * the position of the logical center, the rotation or the relative
396 	 * scale.
397 	 *
398 	 * The dx and dy coordinates are relative coordinates in the
399 	 * surface coordinate space of the logical center of the gesture.
400 	 *
401 	 * The scale factor is an absolute scale compared to the
402 	 * pointer_gesture_pinch.begin event, e.g. a scale of 2 means the
403 	 * fingers are now twice as far apart as on
404 	 * pointer_gesture_pinch.begin.
405 	 *
406 	 * The rotation is the relative angle in degrees clockwise compared
407 	 * to the previous pointer_gesture_pinch.begin or
408 	 * pointer_gesture_pinch.update event.
409 	 * @param time timestamp with millisecond granularity
410 	 * @param dx delta x coordinate in surface coordinate space
411 	 * @param dy delta y coordinate in surface coordinate space
412 	 * @param scale scale relative to the initial finger position
413 	 * @param rotation angle in degrees cw relative to the previous event
414 	 */
415 	void (*update)(void *data,
416 		       struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1,
417 		       uint32_t time,
418 		       wl_fixed_t dx,
419 		       wl_fixed_t dy,
420 		       wl_fixed_t scale,
421 		       wl_fixed_t rotation);
422 	/**
423 	 * multi-finger pinch end
424 	 *
425 	 * This event is sent when a multi-finger pinch gesture ceases to
426 	 * be valid. This may happen when one or more fingers are lifted or
427 	 * the gesture is cancelled.
428 	 *
429 	 * When a gesture is cancelled, the client should undo state
430 	 * changes caused by this gesture. What causes a gesture to be
431 	 * cancelled is implementation-dependent.
432 	 * @param time timestamp with millisecond granularity
433 	 * @param cancelled 1 if the gesture was cancelled, 0 otherwise
434 	 */
435 	void (*end)(void *data,
436 		    struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1,
437 		    uint32_t serial,
438 		    uint32_t time,
439 		    int32_t cancelled);
440 };
441 
442 /**
443  * @ingroup iface_zwp_pointer_gesture_pinch_v1
444  */
445 static inline int
zwp_pointer_gesture_pinch_v1_add_listener(struct zwp_pointer_gesture_pinch_v1 * zwp_pointer_gesture_pinch_v1,const struct zwp_pointer_gesture_pinch_v1_listener * listener,void * data)446 zwp_pointer_gesture_pinch_v1_add_listener(struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1,
447 					  const struct zwp_pointer_gesture_pinch_v1_listener *listener, void *data)
448 {
449 	return wl_proxy_add_listener((struct wl_proxy *) zwp_pointer_gesture_pinch_v1,
450 				     (void (**)(void)) listener, data);
451 }
452 
453 #define ZWP_POINTER_GESTURE_PINCH_V1_DESTROY 0
454 
455 /**
456  * @ingroup iface_zwp_pointer_gesture_pinch_v1
457  */
458 #define ZWP_POINTER_GESTURE_PINCH_V1_BEGIN_SINCE_VERSION 1
459 /**
460  * @ingroup iface_zwp_pointer_gesture_pinch_v1
461  */
462 #define ZWP_POINTER_GESTURE_PINCH_V1_UPDATE_SINCE_VERSION 1
463 /**
464  * @ingroup iface_zwp_pointer_gesture_pinch_v1
465  */
466 #define ZWP_POINTER_GESTURE_PINCH_V1_END_SINCE_VERSION 1
467 
468 /**
469  * @ingroup iface_zwp_pointer_gesture_pinch_v1
470  */
471 #define ZWP_POINTER_GESTURE_PINCH_V1_DESTROY_SINCE_VERSION 1
472 
473 /** @ingroup iface_zwp_pointer_gesture_pinch_v1 */
474 static inline void
zwp_pointer_gesture_pinch_v1_set_user_data(struct zwp_pointer_gesture_pinch_v1 * zwp_pointer_gesture_pinch_v1,void * user_data)475 zwp_pointer_gesture_pinch_v1_set_user_data(struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1, void *user_data)
476 {
477 	wl_proxy_set_user_data((struct wl_proxy *) zwp_pointer_gesture_pinch_v1, user_data);
478 }
479 
480 /** @ingroup iface_zwp_pointer_gesture_pinch_v1 */
481 static inline void *
zwp_pointer_gesture_pinch_v1_get_user_data(struct zwp_pointer_gesture_pinch_v1 * zwp_pointer_gesture_pinch_v1)482 zwp_pointer_gesture_pinch_v1_get_user_data(struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1)
483 {
484 	return wl_proxy_get_user_data((struct wl_proxy *) zwp_pointer_gesture_pinch_v1);
485 }
486 
487 static inline uint32_t
zwp_pointer_gesture_pinch_v1_get_version(struct zwp_pointer_gesture_pinch_v1 * zwp_pointer_gesture_pinch_v1)488 zwp_pointer_gesture_pinch_v1_get_version(struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1)
489 {
490 	return wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gesture_pinch_v1);
491 }
492 
493 /**
494  * @ingroup iface_zwp_pointer_gesture_pinch_v1
495  */
496 static inline void
zwp_pointer_gesture_pinch_v1_destroy(struct zwp_pointer_gesture_pinch_v1 * zwp_pointer_gesture_pinch_v1)497 zwp_pointer_gesture_pinch_v1_destroy(struct zwp_pointer_gesture_pinch_v1 *zwp_pointer_gesture_pinch_v1)
498 {
499 	wl_proxy_marshal_flags((struct wl_proxy *) zwp_pointer_gesture_pinch_v1,
500 			 ZWP_POINTER_GESTURE_PINCH_V1_DESTROY, NULL, wl_proxy_get_version((struct wl_proxy *) zwp_pointer_gesture_pinch_v1), WL_MARSHAL_FLAG_DESTROY);
501 }
502 
503 #ifdef  __cplusplus
504 }
505 #endif
506 
507 #endif
508