diff options
| author | bryceharrington <b.harrington@samsung.com> | 2014-05-24 09:13:46 +0900 |
|---|---|---|
| committer | bryceharrington <b.harrington@samsung.com> | 2014-05-24 09:13:46 +0900 |
| commit | ec8643c1f3fd22c714f8f9800332611d29b7ae0d (patch) | |
| tree | 60349350157ee437ea7b08256a61957a7abe68dc /src/caskbench.cpp | |
| parent | 42276c85ce2759bd6dfb1d6cdf13bf500886b3cb (diff) | |
| parent | 94026b7a41173090bcd71024338469bb2fcbd33d (diff) | |
Merge pull request #54 from SRA-SiliconValley/Issue_52
Break caskbench_context stuff out to its own file
ref: https://github.com/SRA-SiliconValley/caskbench/issues/52
Diffstat (limited to 'src/caskbench.cpp')
| -rw-r--r-- | src/caskbench.cpp | 178 |
1 files changed, 0 insertions, 178 deletions
diff --git a/src/caskbench.cpp b/src/caskbench.cpp index 44b9af2..a77d3c3 100644 --- a/src/caskbench.cpp +++ b/src/caskbench.cpp @@ -102,35 +102,6 @@ const char *gFillTypes[] = { NULL }; -// Backend-specific graphics initialization -cairo_surface_t * create_cairo_surface_image (const device_config_t& config); -void destroy_cairo_image(); -void update_cairo_image(); - -SkBaseDevice * create_skia_device_image (const device_config_t& config); -void destroy_skia_image(); -void update_skia_image(); - -#if USE_GLX -cairo_surface_t *create_cairo_surface_glx (const device_config_t& config); -void destroy_cairo_glx(); -void update_cairo_glx(); - -SkBaseDevice * create_skia_device_glx (const device_config_t& config); -void destroy_skia_glx(); -void update_skia_glx(); -#endif - -#if USE_EGL -cairo_surface_t * create_cairo_surface_egl (const device_config_t& config); -void destroy_cairo_egl(); -void update_cairo_egl(); - -SkBaseDevice * create_skia_device_egl (const device_config_t& config); -void destroy_skia_egl(); -void update_skia_egl(); -#endif - typedef enum { CB_STATUS_PASS, CB_STATUS_FAIL, @@ -347,155 +318,6 @@ convertToFillType(const char *fill_name) } void -context_init(caskbench_context_t *context, int size) -{ - assert(context); - assert(size > 0); - - context->size = size; - context->canvas_width = 800; - context->canvas_height = 400; - context->skia_device = NULL; - context->skia_paint = NULL; - - context->setup_cairo = NULL; - context->setup_skia = NULL; - context->destroy_cairo = NULL; - context->destroy_skia = NULL; - context->update_cairo = NULL; - context->update_skia = NULL; -} - -void -context_setup_cairo(caskbench_context_t *context, const device_config_t& config) -{ - if (config.surface_type == NULL || !strncmp(config.surface_type, "image", 5)) { - context->setup_cairo = create_cairo_surface_image; - context->destroy_cairo = destroy_cairo_image; - context->update_cairo = update_cairo_image; - } else if (!strncmp(config.surface_type, "glx", 3)) { -#if USE_GLX - context->setup_cairo = create_cairo_surface_glx; - context->destroy_cairo = destroy_cairo_glx; - context->update_cairo = update_cairo_glx; -#else - errx(1, "glx unsupported in this build\n"); -#endif - - } else if (!strncmp(config.surface_type, "egl", 3)) { -#if USE_EGL - context->setup_cairo = create_cairo_surface_egl; - context->destroy_cairo = destroy_cairo_egl; - context->update_cairo = update_cairo_egl; -#else - errx(1, "egl unsupported in this build\n"); -#endif - } - assert (context->setup_cairo); - assert (context->destroy_cairo); - assert (context->update_cairo); - - context->cairo_surface = context->setup_cairo(config); - if (!context->cairo_surface) - errx(2, "Could not create a cairo surface\n"); - - context->cairo_cr = cairo_create(context->cairo_surface); - - // Clear background to black - cairo_set_source_rgb (context->cairo_cr, 0, 0, 0); - cairo_paint (context->cairo_cr); - - // Enable anti-aliasing - cairo_set_antialias (context->cairo_cr, CAIRO_ANTIALIAS_DEFAULT); - - // Ease up Cairo's tessellation tolerance (default is 0.001) - cairo_set_tolerance (context->cairo_cr, 0.25); -} - -void -context_update_cairo(caskbench_context_t *context) -{ - context->update_cairo(); -} - -void -context_destroy_cairo(caskbench_context_t *context) -{ - if (!context) - return; - cairo_destroy(context->cairo_cr); - cairo_surface_destroy(context->cairo_surface); - context->destroy_cairo(); - context->cairo_cr = NULL; -} - -#ifdef USE_SKIA -void -context_setup_skia(caskbench_context_t *context, const device_config_t& config) -{ - if (config.surface_type == NULL || !strncmp(config.surface_type, "image", 5)) { - context->setup_skia = create_skia_device_image; - context->destroy_skia = destroy_skia_image; - context->update_skia = update_skia_image; - } else if (!strncmp(config.surface_type, "glx", 3)) { -#if USE_GLX - context->setup_skia = create_skia_device_glx; - context->destroy_skia = destroy_skia_glx; - context->update_skia = update_skia_glx; -#else - errx(1, "glx unsupported in this build\n"); -#endif - - } else if (!strncmp(config.surface_type, "egl", 3)) { -#if USE_EGL - context->setup_skia = create_skia_device_egl; - context->destroy_skia = destroy_skia_egl; - context->update_skia = update_skia_egl; -#else - errx(1, "egl unsupported in this build\n"); -#endif - } - - assert (context->setup_skia); - assert (context->destroy_skia); - assert (context->update_skia); - - context->skia_device = context->setup_skia(config); - if (!context->skia_device) - errx(2, "Could not create a skia device\n"); - - context->skia_paint = new SkPaint; - context->skia_canvas = new SkCanvas(context->skia_device); - - // Clear background to black - context->skia_canvas->clear(0); - context->skia_paint->setARGB(255, 0, 0, 0); - context->skia_canvas->drawPaint(*context->skia_paint); - - // Enable anti-aliasing - context->skia_paint->setAntiAlias(true); -} - -void -context_update_skia(caskbench_context_t *context) -{ - context->update_skia(); -} - -void -context_destroy_skia(caskbench_context_t *context) -{ - if (!context) - return; - delete context->skia_paint; - delete context->skia_canvas; - delete context->skia_device; - context->destroy_skia(); - context->skia_device = NULL; -} -#endif - -void shape_defaults_init(shapes *shape_defaults, caskbench_options_t *opt) { shape_defaults->x = opt->x_position; |