2018-07-13 12:40:56 +00: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 08:26:01 +00:00
|
|
|
#ifndef WLR_BACKEND_MULTI_H
|
|
|
|
#define WLR_BACKEND_MULTI_H
|
2017-06-13 02:22:40 +00:00
|
|
|
|
|
|
|
#include <wlr/backend.h>
|
2017-07-11 07:18:34 +00:00
|
|
|
#include <wlr/backend/session.h>
|
2017-06-13 02:22:40 +00:00
|
|
|
|
2018-03-19 19:46:28 +00:00
|
|
|
/**
|
|
|
|
* Creates a multi-backend. Multi-backends wrap an arbitrary number of backends
|
|
|
|
* and aggregate their new_output/new_input signals.
|
|
|
|
*/
|
2017-12-19 23:25:46 +00:00
|
|
|
struct wlr_backend *wlr_multi_backend_create(struct wl_display *display);
|
2018-03-19 19:46:28 +00:00
|
|
|
/**
|
|
|
|
* Adds the given backend to the multi backend. This should be done before the
|
|
|
|
* new backend is started.
|
|
|
|
*/
|
2018-05-15 21:08:08 +00:00
|
|
|
bool wlr_multi_backend_add(struct wlr_backend *multi,
|
2017-12-19 17:28:47 +00:00
|
|
|
struct wlr_backend *backend);
|
2018-03-19 19:46:28 +00:00
|
|
|
|
2017-12-19 23:49:00 +00:00
|
|
|
void wlr_multi_backend_remove(struct wlr_backend *multi,
|
|
|
|
struct wlr_backend *backend);
|
2018-03-19 19:46:28 +00:00
|
|
|
|
2017-08-06 03:08:35 +00:00
|
|
|
bool wlr_backend_is_multi(struct wlr_backend *backend);
|
2017-08-06 01:37:49 +00:00
|
|
|
struct wlr_session *wlr_multi_get_session(struct wlr_backend *base);
|
2017-12-20 10:51:23 +00:00
|
|
|
bool wlr_multi_is_empty(struct wlr_backend *backend);
|
|
|
|
|
2018-09-19 11:53:51 +00:00
|
|
|
void wlr_multi_for_each_backend(struct wlr_backend *backend,
|
|
|
|
void (*callback)(struct wlr_backend *backend, void *data), void *data);
|
|
|
|
|
2017-06-13 02:22:40 +00:00
|
|
|
#endif
|