Refactor type implementations

This commit is contained in:
Drew DeVault 2017-06-04 19:30:37 -04:00
parent 7051d0e79d
commit 7d82476590
10 changed files with 33 additions and 37 deletions

View file

@ -0,0 +1,17 @@
#ifndef _WLR_BACKEND_INTERFACE_H
#define _WLR_BACKEND_INTERFACE_H
#include <stdbool.h>
#include <wlr/backend.h>
struct wlr_backend_state;
struct wlr_backend_impl {
bool (*init)(struct wlr_backend_state *state);
void (*destroy)(struct wlr_backend_state *state);
};
struct wlr_backend *wlr_backend_create(const struct wlr_backend_impl *impl,
struct wlr_backend_state *state);
#endif

View file

@ -4,7 +4,7 @@
#include <wayland-server.h>
#include <sys/types.h>
struct session_interface;
struct session_impl;
// Passed to the listeners of device_paused/resumed
struct device_arg {
@ -13,7 +13,7 @@ struct device_arg {
};
struct wlr_session {
const struct session_interface *iface;
const struct session_impl *impl;
struct wl_signal device_paused;
struct wl_signal device_resumed;

View file

@ -0,0 +1,15 @@
#ifndef WLR_SESSION_INTERFACE_H
#define WLR_SESSION_INTERFACE_H
#include <wlr/session.h>
struct session_impl {
struct wlr_session *(*start)(struct wl_display *disp);
void (*finish)(struct wlr_session *session);
int (*open)(struct wlr_session *restrict session,
const char *restrict path);
void (*close)(struct wlr_session *session, int fd);
bool (*change_vt)(struct wlr_session *session, int vt);
};
#endif