summaryrefslogtreecommitdiffstatsci
path: root/src/caskbench_context.cpp
diff options
context:
space:
mode:
authorBryce Harrington <bryce@osg.samsung.com>2017-12-01 20:11:12 -0800
committerBryce Harrington <bryce@osg.samsung.com>2017-12-01 20:19:53 -0800
commit45f67bf2ab96f15ef2d99848ef150128b3d44465 (patch)
tree4c122afb9043665a0a9c901efd93827a643b2b28 /src/caskbench_context.cpp
parente3c990e8ab999a26d24c28222738040546db5ab5 (diff)
Add XCB supportHEADmaster
This adds an XCB backend and hooks it up for cairo (not skia... yet). This is for doing performance comparisons of the GL backend against "standard Cairo".
Diffstat (limited to 'src/caskbench_context.cpp')
-rw-r--r--src/caskbench_context.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/caskbench_context.cpp b/src/caskbench_context.cpp
index 50f9e1d..375d4e1 100644
--- a/src/caskbench_context.cpp
+++ b/src/caskbench_context.cpp
@@ -70,6 +70,14 @@ context_setup_cairo(caskbench_context_t *context, const device_config_t& config)
#else
errx(1, "egl unsupported in this build\n");
#endif
+ } else if (!strncmp(config.surface_type, "xcb", 3)) {
+#if USE_XCB
+ context->setup_cairo = create_cairo_surface_xcb;
+ context->destroy_cairo = destroy_cairo_xcb;
+ context->update_cairo = update_cairo_xcb;
+#else
+ errx(1, "xcb unsupported in this build\n");
+#endif
}
assert (context->setup_cairo);
assert (context->destroy_cairo);