summaryrefslogtreecommitdiff
path: root/src/graphics.h
blob: d2028a70e267ec56d2cd821a5a496774532ace5c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#pragma once

#include <EGL/egl.h>
#include <wayland-egl.h>

#include "utils.h"

enum graphics_error_e {
  GRAPHICS_ERROR_NONE = 0,
  GRAPHICS_ERROR_DISPLAY,
  GRAPHICS_ERROR_CONFIG,
  GRAPHICS_ERROR_BIND,
  GRAPHICS_ERROR_CONTEXT,
};

struct graphics_s {
  EGLDisplay display;
  EGLContext context;
  EGLConfig config;
};

enum graphics_error_e wayc_graphics_init(struct graphics_s* graphics,
                                         struct wlstate_s* state);
void wayc_graphics_deinit(struct graphics_s* graphics);

struct renderer_s {
  wl_egl_surface_t surface;
};