summaryrefslogtreecommitdiff
path: root/src/fb.h
diff options
context:
space:
mode:
authorVito Caputo <vcaputo@pengaru.com>2017-09-08 19:09:57 -0700
committerVito Caputo <vcaputo@pengaru.com>2017-09-14 17:52:34 -0700
commit7e999e37a5cf65e466091f4d8eeb36a6cea20f52 (patch)
treefa1778c1daf753f46dcc1ca16d492dfa888f6fd3 /src/fb.h
parent77f6d721564ceba589af14554685821aedfc8462 (diff)
*: use fragment generator
Rather than laying out all fragments in a frame up-front in ray_module_t.prepare_frame(), return a fragment generator (rototiller_fragmenter_t) which produces the numbered fragment as needed. This removes complexity from the serially-executed prepare_frame() and allows the individual fragments to be computed in parallel by the different threads. It also eliminates the need for a fragments array in the rototiller_frame_t, indeed rototiller_frame_t is eliminated altogether.
Diffstat (limited to 'src/fb.h')
-rw-r--r--src/fb.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/fb.h b/src/fb.h
index 6fdca11..35d5865 100644
--- a/src/fb.h
+++ b/src/fb.h
@@ -36,6 +36,7 @@ void fb_free(fb_t *fb);
void fb_get_put_pages_count(fb_t *fb, unsigned *count);
fb_t * fb_new(int drm_fd, uint32_t crtc_id, uint32_t *connectors, int n_connectors, drmModeModeInfoPtr mode, int n_pages);
void fb_fragment_divide(fb_fragment_t *fragment, unsigned n_fragments, fb_fragment_t fragments[]);
+int fb_fragment_divide_single(const fb_fragment_t *fragment, unsigned n_fragments, unsigned num, fb_fragment_t *res_fragment);
/* checks if a coordinate is contained within a fragment */
© All Rights Reserved