summaryrefslogtreecommitdiff
path: root/src/common/backend.h
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-12 00:09:38 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-12 00:09:38 +0300
commit624d1371304a5ae4b3429ad5e4267aac7cd03dfd (patch)
tree32de069f6eec83686521fc4bf39cc9874b123e93 /src/common/backend.h
parente813252e685d761235ad45e170d97c9375f51958 (diff)
missing impls and hardening
Diffstat (limited to 'src/common/backend.h')
-rw-r--r--src/common/backend.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/common/backend.h b/src/common/backend.h
index c1d878b..c6691eb 100644
--- a/src/common/backend.h
+++ b/src/common/backend.h
@@ -7,12 +7,21 @@ struct yasl_backend_ops;
struct yasl_display {
const struct yasl_backend_ops *ops;
+ struct yasl_display_cbs callbacks;
};
struct yasl_surface {
struct yasl_display *display;
+ struct yasl_surface_cbs callbacks;
+ uint64_t frame_generation;
};
+static inline uint64_t yasl_frame_begin(struct yasl_surface *s)
+{
+ if (++s->frame_generation == 0) ++s->frame_generation;
+ return s->frame_generation;
+}
+
struct yasl_backend_ops {
enum yasl_backend type;
struct yasl_display *(*display_open)(struct yasl_loop *loop, const struct yasl_display_spec *spec);