diff options
author | David Herrmann <dh.herrmann@gmail.com> | 2014-10-02 18:26:06 +0200 |
---|---|---|
committer | David Herrmann <dh.herrmann@gmail.com> | 2014-10-03 15:57:00 +0200 |
commit | 51cff8bdedbc283b2403ab4a688903d8b1f2fab5 (patch) | |
tree | 8514ad964d0ba061244a8944c1fe4194cd77ef06 /src/libsystemd-terminal/grdev.h | |
parent | aec3f44651998211d559b474bb830aad65680a62 (diff) |
terminal/grdev: provide front and back buffer to renderers
We really want more sophisticated aging than just 64bit integers. So
always provide front *and* back buffers to renderers so they can compare
arbitrary aging information and decide whether to re-render.
Diffstat (limited to 'src/libsystemd-terminal/grdev.h')
-rw-r--r-- | src/libsystemd-terminal/grdev.h | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/libsystemd-terminal/grdev.h b/src/libsystemd-terminal/grdev.h index 6ca8a767c4..ca0373ed29 100644 --- a/src/libsystemd-terminal/grdev.h +++ b/src/libsystemd-terminal/grdev.h @@ -105,7 +105,8 @@ struct grdev_display_target { uint32_t height; unsigned int rotate; unsigned int flip; - const grdev_fb *fb; + const grdev_fb *front; + const grdev_fb *back; }; void grdev_display_set_userdata(grdev_display *display, void *userdata); @@ -119,13 +120,13 @@ bool grdev_display_is_enabled(grdev_display *display); void grdev_display_enable(grdev_display *display); void grdev_display_disable(grdev_display *display); -const grdev_display_target *grdev_display_next_target(grdev_display *display, const grdev_display_target *prev, uint64_t minage); +const grdev_display_target *grdev_display_next_target(grdev_display *display, const grdev_display_target *prev); void grdev_display_flip_target(grdev_display *display, const grdev_display_target *target, uint64_t age); -#define GRDEV_DISPLAY_FOREACH_TARGET(_display, _t, _minage) \ - for ((_t) = grdev_display_next_target((_display), NULL, (_minage)); \ - (_t); \ - (_t) = grdev_display_next_target((_display), (_t), (_minage))) +#define GRDEV_DISPLAY_FOREACH_TARGET(_display, _t) \ + for ((_t) = grdev_display_next_target((_display), NULL); \ + (_t); \ + (_t) = grdev_display_next_target((_display), (_t))) /* * Events |