From dc2e640a7de3304c03bf2893e9ae4b4f81458f39 Mon Sep 17 00:00:00 2001 From: Simon Ser Date: Thu, 1 Jul 2021 22:12:32 +0200 Subject: [PATCH] buffer: make enum wlr_buffer_cap public Custom backends and renderers need to implement wlr_backend_impl.get_buffer_caps and wlr_renderer_impl.get_render_buffer_caps. They can't if enum wlr_buffer_cap isn't made public. (cherry picked from commit a38baec1f89d423dea4be85a6233fed26d13732f) --- backend/drm/backend.c | 1 - backend/drm/drm.c | 1 - backend/headless/backend.c | 1 - backend/wayland/backend.c | 1 - backend/wayland/output.c | 1 - backend/x11/backend.c | 1 - backend/x11/output.c | 1 - include/types/wlr_buffer.h | 12 ------------ include/wlr/types/wlr_buffer.h | 12 ++++++++++++ render/allocator.c | 1 - render/drm_dumb_allocator.c | 1 - render/gbm_allocator.c | 1 - render/gles2/renderer.c | 1 - render/shm_allocator.c | 1 - 14 files changed, 12 insertions(+), 24 deletions(-) diff --git a/backend/drm/backend.c b/backend/drm/backend.c index c7a72a35..94f6fc52 100644 --- a/backend/drm/backend.c +++ b/backend/drm/backend.c @@ -13,7 +13,6 @@ #include #include #include "backend/drm/drm.h" -#include "types/wlr_buffer.h" #include "util/signal.h" struct wlr_drm_backend *get_drm_backend_from_backend( diff --git a/backend/drm/drm.c b/backend/drm/drm.c index b56cf6d5..c1f07167 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -28,7 +28,6 @@ #include "render/drm_format_set.h" #include "render/swapchain.h" #include "render/wlr_renderer.h" -#include "types/wlr_buffer.h" #include "util/signal.h" static const uint32_t SUPPORTED_OUTPUT_STATE = diff --git a/backend/headless/backend.c b/backend/headless/backend.c index a49a515f..cf7f6026 100644 --- a/backend/headless/backend.c +++ b/backend/headless/backend.c @@ -14,7 +14,6 @@ #include "render/drm_format_set.h" #include "render/gbm_allocator.h" #include "render/wlr_renderer.h" -#include "types/wlr_buffer.h" #include "util/signal.h" struct wlr_headless_backend *headless_backend_from_backend( diff --git a/backend/wayland/backend.c b/backend/wayland/backend.c index 771f4405..079f6400 100644 --- a/backend/wayland/backend.c +++ b/backend/wayland/backend.c @@ -21,7 +21,6 @@ #include "render/drm_format_set.h" #include "render/pixel_format.h" #include "render/wlr_renderer.h" -#include "types/wlr_buffer.h" #include "util/signal.h" #include "drm-client-protocol.h" diff --git a/backend/wayland/output.c b/backend/wayland/output.c index 542185ce..d0f5f6dd 100644 --- a/backend/wayland/output.c +++ b/backend/wayland/output.c @@ -19,7 +19,6 @@ #include "render/pixel_format.h" #include "render/swapchain.h" #include "render/wlr_renderer.h" -#include "types/wlr_buffer.h" #include "util/signal.h" #include "linux-dmabuf-unstable-v1-client-protocol.h" diff --git a/backend/x11/backend.c b/backend/x11/backend.c index 6c0e5a0b..478583f0 100644 --- a/backend/x11/backend.c +++ b/backend/x11/backend.c @@ -33,7 +33,6 @@ #include "backend/x11.h" #include "render/allocator.h" #include "render/drm_format_set.h" -#include "types/wlr_buffer.h" #include "util/signal.h" // See dri2_format_for_depth in mesa diff --git a/backend/x11/output.c b/backend/x11/output.c index 15d1d9a0..44219dde 100644 --- a/backend/x11/output.c +++ b/backend/x11/output.c @@ -21,7 +21,6 @@ #include #include "backend/x11.h" -#include "types/wlr_buffer.h" #include "util/signal.h" #include "util/time.h" diff --git a/include/types/wlr_buffer.h b/include/types/wlr_buffer.h index 8abb68d6..ae497a73 100644 --- a/include/types/wlr_buffer.h +++ b/include/types/wlr_buffer.h @@ -25,18 +25,6 @@ struct wlr_shm_client_buffer { struct wlr_shm_client_buffer *shm_client_buffer_create( struct wl_resource *resource); -/** - * Buffer capabilities. - * - * These bits indicate the features supported by a wlr_buffer. There is one bit - * per function in wlr_buffer_impl. - */ -enum wlr_buffer_cap { - WLR_BUFFER_CAP_DATA_PTR = 1 << 0, - WLR_BUFFER_CAP_DMABUF = 1 << 1, - WLR_BUFFER_CAP_SHM = 1 << 2, -}; - /** * Get a pointer to a region of memory referring to the buffer's underlying * storage. The format and stride can be used to interpret the memory region diff --git a/include/wlr/types/wlr_buffer.h b/include/wlr/types/wlr_buffer.h index 47f17cce..d23cdce8 100644 --- a/include/wlr/types/wlr_buffer.h +++ b/include/wlr/types/wlr_buffer.h @@ -33,6 +33,18 @@ struct wlr_buffer_impl { void (*end_data_ptr_access)(struct wlr_buffer *buffer); }; +/** + * Buffer capabilities. + * + * These bits indicate the features supported by a wlr_buffer. There is one bit + * per function in wlr_buffer_impl. + */ +enum wlr_buffer_cap { + WLR_BUFFER_CAP_DATA_PTR = 1 << 0, + WLR_BUFFER_CAP_DMABUF = 1 << 1, + WLR_BUFFER_CAP_SHM = 1 << 2, +}; + /** * A buffer containing pixel data. * diff --git a/render/allocator.c b/render/allocator.c index aade40a9..5b7e27ff 100644 --- a/render/allocator.c +++ b/render/allocator.c @@ -8,7 +8,6 @@ #include "render/shm_allocator.h" #include "render/drm_dumb_allocator.h" #include "render/wlr_renderer.h" -#include "types/wlr_buffer.h" void wlr_allocator_init(struct wlr_allocator *alloc, const struct wlr_allocator_interface *impl, uint32_t buffer_caps) { diff --git a/render/drm_dumb_allocator.c b/render/drm_dumb_allocator.c index 9713e078..c0038dff 100644 --- a/render/drm_dumb_allocator.c +++ b/render/drm_dumb_allocator.c @@ -15,7 +15,6 @@ #include "render/drm_dumb_allocator.h" #include "render/pixel_format.h" -#include "types/wlr_buffer.h" static const struct wlr_buffer_impl buffer_impl; diff --git a/render/gbm_allocator.c b/render/gbm_allocator.c index 8dd7b49c..154e5137 100644 --- a/render/gbm_allocator.c +++ b/render/gbm_allocator.c @@ -7,7 +7,6 @@ #include #include #include "render/gbm_allocator.h" -#include "types/wlr_buffer.h" static const struct wlr_buffer_impl buffer_impl; diff --git a/render/gles2/renderer.c b/render/gles2/renderer.c index baf53c72..bf39190b 100644 --- a/render/gles2/renderer.c +++ b/render/gles2/renderer.c @@ -17,7 +17,6 @@ #include #include "render/gles2.h" #include "render/pixel_format.h" -#include "types/wlr_buffer.h" static const GLfloat verts[] = { 1, 0, // top right diff --git a/render/shm_allocator.c b/render/shm_allocator.c index 2066b125..1797433f 100644 --- a/render/shm_allocator.c +++ b/render/shm_allocator.c @@ -7,7 +7,6 @@ #include "render/pixel_format.h" #include "render/shm_allocator.h" #include "util/shm.h" -#include "types/wlr_buffer.h" static const struct wlr_buffer_impl buffer_impl;