diff options
| author | Bryce Harrington <b.harrington@samsung.com> | 2014-05-05 16:19:54 -0700 |
|---|---|---|
| committer | Bryce Harrington <b.harrington@samsung.com> | 2014-05-05 16:19:54 -0700 |
| commit | 398770f6d07eb5916e12545b8d223b34fa69fd6e (patch) | |
| tree | 4b311c89b0f8aeb72b1082107ea73c72dc9f4502 /src/caskbench.cpp | |
| parent | 4b40cca3f563d90db02949f38a6b4c3e313b686f (diff) | |
util: Move skia and cairo image export functionality to utils modules
This cleans up some of the cairo/skia-specific code in caskbench.cpp,
moving it out to *-util.cpp files that can be conditionally compiled.
Diffstat (limited to 'src/caskbench.cpp')
| -rw-r--r-- | src/caskbench.cpp | 61 |
1 files changed, 0 insertions, 61 deletions
diff --git a/src/caskbench.cpp b/src/caskbench.cpp index 6c85606..82e7f43 100644 --- a/src/caskbench.cpp +++ b/src/caskbench.cpp @@ -104,67 +104,6 @@ void destroy_skia_egl(); void update_skia_egl(); #endif -void -write_image_file_cairo (const char *fname, caskbench_context_t *context) -{ - assert (context->cairo_surface); - cairo_status_t status = cairo_surface_status (context->cairo_surface); - if (status != CAIRO_STATUS_SUCCESS) { - warnx("Error writing cairo surface to file: %s\n", cairo_status_to_string(status)); - return; - } - cairo_surface_write_to_png (context->cairo_surface, fname); -} - -#ifdef USE_SKIA -void -write_image_file_skia (const char *fname, caskbench_context_t *context) -{ - SkBitmap bitmap; - void * data; - cairo_surface_t* surface; - -#ifdef USE_LEGACY_SKIA_SRA - bitmap.setConfig(SkBitmap::kARGB_8888_Config, - context->canvas_width, context->canvas_height, - 4 * context->canvas_width, // TODO: Get from context->skia_device - kPremul_SkAlphaType); - context->skia_canvas->flush(); - if (!context->skia_canvas->readPixels(&bitmap, 0, 0, SkCanvas::kRGBA_Unpremul_Config8888)) { - warnx("Could not read pixels from skia device\n"); - return; - } -#else - bitmap.setConfig(SkBitmap::kARGB_8888_Config, - context->canvas_width, context->canvas_height); - SkImageInfo info = SkImageInfo::Make(context->canvas_width, context->canvas_height, - kBGRA_8888_SkColorType, - kPremul_SkAlphaType); - bitmap.allocPixels(info); - context->skia_canvas->flush(); - if (!context->skia_canvas->readPixels(&bitmap, 0, 0)) { - warnx("Could not read pixels from skia device\n"); - return; - } -#endif - - data = bitmap.getPixels(); - assert(data); - surface = cairo_image_surface_create_for_data((unsigned char*)data, - CAIRO_FORMAT_ARGB32, - context->canvas_width, context->canvas_height, - 4 * context->canvas_width); - - cairo_status_t status = cairo_surface_status (surface); - if (status != CAIRO_STATUS_SUCCESS) { - warnx("Error writing skia surface to file: %s\n", cairo_status_to_string(status)); - return; - } - cairo_surface_write_to_png (surface, fname); - cairo_surface_destroy(surface); -} -#endif - typedef enum { CASKBENCH_STATUS_PASS, CASKBENCH_STATUS_FAIL, |