diff options
author | Drew DeVault <sir@cmpwn.com> | 2018-05-25 08:38:44 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-25 08:38:44 -0400 |
commit | 35b31dcfb7f54c08301c4eb352325bb852b1bece (patch) | |
tree | 93d550e437722bdeabca5605ada5c0b4d41128cf /include/wlr/backend.h | |
parent | a0eb37e2ea4ad96b4f6e98fddbc5c31d0bd0f293 (diff) | |
parent | 24cf70ae9691d605e4a1f7e9d8dc59ec72401bd0 (diff) |
Merge pull request #1000 from ammen99/custom-renderer-initialization
[RFC] backends: implement custom EGL and renderer initialization
Diffstat (limited to 'include/wlr/backend.h')
-rw-r--r-- | include/wlr/backend.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/include/wlr/backend.h b/include/wlr/backend.h index 2059e3b7..f40f5353 100644 --- a/include/wlr/backend.h +++ b/include/wlr/backend.h @@ -20,12 +20,20 @@ struct wlr_backend { } events; }; +typedef struct wlr_renderer *(*wlr_renderer_create_func_t)(struct wlr_egl *egl, EGLenum platform, + void *remote_display, EGLint *config_attribs, EGLint visual_id); /** * Automatically initializes the most suitable backend given the environment. * Will always return a multibackend. The backend is created but not started. * Returns NULL on failure. + * + * The compositor can request to initialize the backend's renderer by setting + * the create_render_func. The callback must initialize the given wlr_egl and + * return a valid wlr_renderer, or NULL if it has failed to initiaze it. + * Pass NULL as create_renderer_func to use the backend's default renderer. */ -struct wlr_backend *wlr_backend_autocreate(struct wl_display *display); +struct wlr_backend *wlr_backend_autocreate(struct wl_display *display, + wlr_renderer_create_func_t create_renderer_func); /** * Start the backend. This may signal new_input or new_output immediately, but * may also wait until the display's event loop begins. Returns false on |