wlroots/include/wlr/backend/multi.h

38 lines
1.1 KiB
C
Raw Normal View History

/*
* 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
#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.
*/
bool wlr_multi_backend_add(struct wlr_backend *multi,
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
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);
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