From be5022138495d2e509735dec7486a040d3e2eb2d Mon Sep 17 00:00:00 2001 From: David Herrmann Date: Thu, 2 Oct 2014 19:31:43 +0200 Subject: terminal: add screen renderer We don't want to expose the term_screen internals for rendering. Therefore, provide an iterator that allows external renderers to draw terminals. --- src/libsystemd-terminal/term.h | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src/libsystemd-terminal/term.h') diff --git a/src/libsystemd-terminal/term.h b/src/libsystemd-terminal/term.h index d5b934fc59..a3ca252e31 100644 --- a/src/libsystemd-terminal/term.h +++ b/src/libsystemd-terminal/term.h @@ -147,3 +147,15 @@ void term_screen_soft_reset(term_screen *screen); void term_screen_hard_reset(term_screen *screen); int term_screen_set_answerback(term_screen *screen, const char *answerback); + +int term_screen_draw(term_screen *screen, + int (*draw_fn) (term_screen *screen, + void *userdata, + unsigned int x, + unsigned int y, + const term_attr *attr, + const uint32_t *ch, + size_t n_ch, + unsigned int ch_width), + void *userdata, + uint64_t *fb_age); -- cgit v1.2.3-54-g00ecf