diff options
author | Ryan Dwyer <ryandwyer1@gmail.com> | 2019-01-17 20:13:55 +1000 |
---|---|---|
committer | Ryan Dwyer <ryandwyer1@gmail.com> | 2019-01-17 20:13:55 +1000 |
commit | 9b4be5a59506a81175ab2eb9248f4035176df5f0 (patch) | |
tree | bde4d21776be98e7e0c51d941e9198d5d11f5c57 /include/wlr | |
parent | 10b1de6e718f1765f81131447d4b6b86bc78a6f4 (diff) |
Introduce noop backend
The noop backend is similar to headless, but it doesn't contain a
renderer. It can be used as a place to stash views for when there's no
physical outputs connected.
Diffstat (limited to 'include/wlr')
-rw-r--r-- | include/wlr/backend/noop.h | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/include/wlr/backend/noop.h b/include/wlr/backend/noop.h new file mode 100644 index 00000000..592b8f35 --- /dev/null +++ b/include/wlr/backend/noop.h @@ -0,0 +1,31 @@ +/* + * 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_NOOP_H +#define WLR_BACKEND_NOOP_H + +#include <wlr/backend.h> +#include <wlr/types/wlr_output.h> + +/** + * Creates a noop backend. Noop backends do not have a framebuffer and are not + * capable of rendering anything. They are useful for when there's no real + * outputs connected; you can stash your views on a noop output until an output + * is connected. + */ +struct wlr_backend *wlr_noop_backend_create(struct wl_display *display); + +/** + * Create a new noop output. + */ +struct wlr_output *wlr_noop_add_output(struct wlr_backend *backend); + +bool wlr_backend_is_noop(struct wlr_backend *backend); +bool wlr_output_is_noop(struct wlr_output *output); + +#endif |