aboutsummaryrefslogtreecommitdiff
path: root/include/wlr/backend/interface.h
blob: f03e95d918bb55f4e66dd53525bdf7bd2ebd2d74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#ifndef WLR_BACKEND_INTERFACE_H
#define WLR_BACKEND_INTERFACE_H

#include <stdbool.h>
#include <wlr/backend.h>
#include <wlr/render/egl.h>

struct wlr_backend_impl {
	bool (*start)(struct wlr_backend *backend);
	void (*destroy)(struct wlr_backend *backend);
	struct wlr_egl *(*get_egl)(struct wlr_backend *backend);
	struct wlr_renderer *(*get_renderer)(struct wlr_backend *backend);
};

/**
 * Initializes common state on a wlr_backend and sets the implementation to the
 * provided wlr_backend_impl reference.
 */
void wlr_backend_init(struct wlr_backend *backend,
		const struct wlr_backend_impl *impl);

#endif