20 lines
484 B
C
20 lines
484 B
C
#pragma once
|
|
|
|
#include "wm_event.h"
|
|
#include "wm_plan.h"
|
|
|
|
typedef struct wm_backend_t wm_backend_t;
|
|
|
|
typedef struct wm_backend_api_t {
|
|
bool (*init)(wm_backend_t *backend);
|
|
bool (*next_event)(wm_backend_t *backend, wm_event_t *out);
|
|
bool (*apply_effect)(wm_backend_t *backend, const wm_effect_t *effect);
|
|
void (*flush)(wm_backend_t *backend);
|
|
void (*shutdown)(wm_backend_t *backend);
|
|
} wm_backend_api_t;
|
|
|
|
struct wm_backend_t {
|
|
const wm_backend_api_t *api;
|
|
void *impl;
|
|
};
|