aboutsummaryrefslogtreecommitdiff
path: root/include/wlr/render
diff options
context:
space:
mode:
Diffstat (limited to 'include/wlr/render')
-rw-r--r--include/wlr/render/interface.h15
-rw-r--r--include/wlr/render/matrix.h22
2 files changed, 8 insertions, 29 deletions
diff --git a/include/wlr/render/interface.h b/include/wlr/render/interface.h
index 2ba584d9..c8b4c8eb 100644
--- a/include/wlr/render/interface.h
+++ b/include/wlr/render/interface.h
@@ -19,15 +19,16 @@ struct wlr_renderer {
struct wlr_renderer_impl {
void (*begin)(struct wlr_renderer *renderer, struct wlr_output *output);
void (*end)(struct wlr_renderer *renderer);
- void (*clear)(struct wlr_renderer *renderer, const float (*color)[4]);
+ void (*clear)(struct wlr_renderer *renderer, const float color[static 4]);
void (*scissor)(struct wlr_renderer *renderer, struct wlr_box *box);
struct wlr_texture *(*texture_create)(struct wlr_renderer *renderer);
- bool (*render_with_matrix)(struct wlr_renderer *renderer,
- struct wlr_texture *texture, const float (*matrix)[16], float alpha);
+ bool (*render_texture_with_matrix)(struct wlr_renderer *renderer,
+ struct wlr_texture *texture, const float matrix[static 9],
+ float alpha);
void (*render_quad)(struct wlr_renderer *renderer,
- const float (*color)[4], const float (*matrix)[16]);
+ const float color[static 4], const float matrix[static 9]);
void (*render_ellipse)(struct wlr_renderer *renderer,
- const float (*color)[4], const float (*matrix)[16]);
+ const float color[static 4], const float matrix[static 9]);
const enum wl_shm_format *(*formats)(
struct wlr_renderer *renderer, size_t *len);
bool (*buffer_is_drm)(struct wlr_renderer *renderer,
@@ -61,8 +62,8 @@ struct wlr_texture_impl {
uint32_t width, uint32_t height);
bool (*upload_dmabuf)(struct wlr_texture *texture,
struct wl_resource *dmabuf_resource);
- void (*get_matrix)(struct wlr_texture *state,
- float (*matrix)[16], const float (*projection)[16], int x, int y);
+ void (*get_matrix)(struct wlr_texture *state, float mat[static 9],
+ const float projection[static 9], int x, int y);
void (*get_buffer_size)(struct wlr_texture *texture,
struct wl_resource *resource, int *width, int *height);
void (*bind)(struct wlr_texture *texture);
diff --git a/include/wlr/render/matrix.h b/include/wlr/render/matrix.h
deleted file mode 100644
index a333bf0f..00000000
--- a/include/wlr/render/matrix.h
+++ /dev/null
@@ -1,22 +0,0 @@
-#ifndef WLR_RENDER_MATRIX_H
-#define WLR_RENDER_MATRIX_H
-
-#include <stdint.h>
-#include <wlr/types/wlr_box.h>
-
-void wlr_matrix_identity(float (*output)[16]);
-void wlr_matrix_translate(float (*output)[16], float x, float y, float z);
-void wlr_matrix_scale(float (*output)[16], float x, float y, float z);
-void wlr_matrix_rotate(float (*output)[16], float radians);
-void wlr_matrix_mul(const float (*x)[16], const float (*y)[16], float (*product)[16]);
-
-enum wl_output_transform;
-void wlr_matrix_transform(float mat[static 16],
- enum wl_output_transform transform);
-void wlr_matrix_texture(float mat[static 16], int32_t width, int32_t height,
- enum wl_output_transform transform);
-void wlr_matrix_project_box(float (*mat)[16], struct wlr_box *box,
- enum wl_output_transform transform, float rotation, float
- (*projection)[16]);
-
-#endif