mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2026-06-13 14:32:57 -04:00
backend/session: introduce wlr_device_manager
This commit is contained in:
parent
3bd8f29b13
commit
e8b81b3d4a
7 changed files with 362 additions and 251 deletions
|
|
@ -2,6 +2,7 @@
|
|||
#define BACKEND_SESSION_SESSION_H
|
||||
|
||||
#include <stdbool.h>
|
||||
#include <sys/types.h>
|
||||
|
||||
struct wl_display;
|
||||
struct wlr_session;
|
||||
|
|
@ -16,5 +17,22 @@ void session_init(struct wlr_session *session);
|
|||
|
||||
struct wlr_device *session_open_if_kms(struct wlr_session *restrict session,
|
||||
const char *restrict path);
|
||||
struct wlr_device *session_find_device_by_devid(struct wlr_session *session, dev_t devid);
|
||||
|
||||
struct wlr_device_manager {
|
||||
struct wlr_session *session;
|
||||
|
||||
const struct wlr_device_manager_impl *impl;
|
||||
};
|
||||
|
||||
struct wlr_device_manager_impl {
|
||||
void (*destroy)(struct wlr_device_manager *manager);
|
||||
ssize_t (*find_drm_cards)(struct wlr_device_manager *manager,
|
||||
size_t ret_cap, struct wlr_device **ret);
|
||||
};
|
||||
|
||||
void wlr_device_manager_init(struct wlr_device_manager *manager,
|
||||
const struct wlr_device_manager_impl *impl, struct wlr_session *session);
|
||||
void wlr_device_manager_finish(struct wlr_device_manager *manager);
|
||||
|
||||
#endif
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue