2018-07-13 14:40:56 +02:00
|
|
|
/*
|
|
|
|
* This an unstable interface of wlroots. No guarantees are made regarding the
|
|
|
|
* future consistency of this API.
|
|
|
|
*/
|
|
|
|
#ifndef WLR_USE_UNSTABLE
|
|
|
|
#error "Add -DWLR_USE_UNSTABLE to enable unstable wlroots features"
|
|
|
|
#endif
|
|
|
|
|
2017-09-23 10:26:01 +02:00
|
|
|
#ifndef WLR_INTERFACES_WLR_INPUT_DEVICE_H
|
|
|
|
#define WLR_INTERFACES_WLR_INPUT_DEVICE_H
|
|
|
|
|
2017-06-20 00:41:02 +02:00
|
|
|
#include <wlr/types/wlr_input_device.h>
|
|
|
|
|
|
|
|
struct wlr_input_device_impl {
|
2017-08-14 14:54:53 +02:00
|
|
|
void (*destroy)(struct wlr_input_device *wlr_device);
|
2017-06-20 00:41:02 +02:00
|
|
|
};
|
|
|
|
|
2022-02-04 15:26:57 +01:00
|
|
|
void wlr_input_device_init(struct wlr_input_device *wlr_device,
|
|
|
|
enum wlr_input_device_type type, const struct wlr_input_device_impl *impl,
|
|
|
|
const char *name);
|
2022-02-08 17:20:44 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* Cleans up all of the provided wlr_input_device resources and signals the
|
|
|
|
* destroy event.
|
|
|
|
*/
|
|
|
|
void wlr_input_device_finish(struct wlr_input_device *wlr_device);
|
|
|
|
|
2022-02-11 15:06:26 +01:00
|
|
|
/**
|
|
|
|
* Calls the specialized input device destroy function.
|
|
|
|
* If the wlr_input_device is not owned by a specialized input device, the
|
|
|
|
* function will finish the wlr_input_device, and either call its implementation
|
|
|
|
* destroy function if one has been given, or free the wlr_input_device.
|
|
|
|
*/
|
2017-06-20 00:41:02 +02:00
|
|
|
void wlr_input_device_destroy(struct wlr_input_device *dev);
|
|
|
|
|
|
|
|
#endif
|