diff options
| author | Bryce Harrington <b.harrington@samsung.com> | 2014-07-01 10:52:16 -0700 |
|---|---|---|
| committer | Bryce Harrington <b.harrington@samsung.com> | 2014-07-01 10:52:16 -0700 |
| commit | 9d1052a1799d1c8dd998f276a5bbdd5067e57551 (patch) | |
| tree | fade0916cc3eaa9e2b2306f33f1eac3bb0c0d4b3 /src | |
| parent | 7cbba95b7628405a2457f9aecf2764c0502fc6ef (diff) | |
| parent | 1021d0a53b4b496528441f27f819f7840df30ec0 (diff) | |
Merge pull request #117 from Samsung/Issue_106
Issue #106. Clear the screen to black between iterations.
Diffstat (limited to 'src')
| -rw-r--r-- | src/cairo-util.cpp | 7 | ||||
| -rw-r--r-- | src/caskbench.cpp | 3 | ||||
| -rwxr-xr-x | src/generate_tests | 4 | ||||
| -rw-r--r-- | src/skia-util.cpp | 6 | ||||
| -rw-r--r-- | src/tests.h | 3 |
5 files changed, 21 insertions, 2 deletions
diff --git a/src/cairo-util.cpp b/src/cairo-util.cpp index 4317115..4cd7745 100644 --- a/src/cairo-util.cpp +++ b/src/cairo-util.cpp @@ -15,6 +15,13 @@ #include "caskbench_context.h" void +context_clear_cairo(caskbench_context_t *context) +{ + cairo_set_source_rgb (context->cairo_cr, 0, 0, 0); + cairo_paint (context->cairo_cr); +} + +void write_image_file_cairo (const char *fname, caskbench_context_t *context) { assert (context->cairo_surface); diff --git a/src/caskbench.cpp b/src/caskbench.cpp index 86f9989..541a2ac 100644 --- a/src/caskbench.cpp +++ b/src/caskbench.cpp @@ -663,6 +663,9 @@ main (int argc, char *argv[]) for (i=opt.iterations; i>0; --i) { try { assert(perf_tests[c].test_case); + // Clearing the canvas between iterations + perf_tests[c].context_clear(&context); + start_time = get_tick(); // Execute test_case diff --git a/src/generate_tests b/src/generate_tests index 54afac7..1736644 100755 --- a/src/generate_tests +++ b/src/generate_tests @@ -61,11 +61,11 @@ for source_file in $(ls ${source_dir}/cairo-tests/*.cpp); do (cat <<EOF #ifdef USE_CAIRO {"cairo-${test}", ca_setup_${test}, ca_teardown_${test}, ca_test_${test}, - write_image_file_cairo, context_setup_cairo, context_destroy_cairo, context_update_cairo }, + write_image_file_cairo, context_setup_cairo, context_destroy_cairo, context_update_cairo, context_clear_cairo }, #endif #ifdef USE_SKIA {"skia-${test}", sk_setup_${test}, sk_teardown_${test}, sk_test_${test}, - write_image_file_skia, context_setup_skia, context_destroy_skia, context_update_skia }, + write_image_file_skia, context_setup_skia, context_destroy_skia, context_update_skia, context_clear_skia }, #endif EOF diff --git a/src/skia-util.cpp b/src/skia-util.cpp index d3d4923..e0de879 100644 --- a/src/skia-util.cpp +++ b/src/skia-util.cpp @@ -17,6 +17,12 @@ #include "caskbench_context.h" void +context_clear_skia (caskbench_context_t *context) +{ + context->skia_canvas->drawColor(SK_ColorBLACK); +} + +void write_image_file_skia (const char *fname, caskbench_context_t *context) { SkBitmap bitmap; diff --git a/src/tests.h b/src/tests.h index 3aa6736..130eb69 100644 --- a/src/tests.h +++ b/src/tests.h @@ -18,6 +18,7 @@ typedef struct _caskbench_perf_test { void (*context_setup)(struct _caskbench_context*, const device_config_t& config); void (*context_destroy)(struct _caskbench_context*); void (*context_update)(struct _caskbench_context*); + void (*context_clear)(struct _caskbench_context*); } caskbench_perf_test_t; extern caskbench_perf_test_t perf_tests[]; @@ -35,6 +36,8 @@ void context_destroy_skia(struct _caskbench_context *context); void context_update_cairo(struct _caskbench_context *context); void context_update_skia(struct _caskbench_context *context); +void context_clear_cairo(struct _caskbench_context *context); +void context_clear_skia(struct _caskbench_context *context); #endif // __TESTS_H__ /* Local Variables: |