diff options
| author | Bryce Harrington <b.harrington@samsung.com> | 2014-06-12 16:13:56 -0700 |
|---|---|---|
| committer | Bryce Harrington <b.harrington@samsung.com> | 2014-06-12 16:15:30 -0700 |
| commit | 38445469fcc76ecb8d27b87c30ac4ed9d35ead43 (patch) | |
| tree | 4f2911e4a5c5ebbc5b18f84ccb5f900583cc7376 /src/cairo-tests/image-rotate.cpp | |
| parent | 71fa56a1c42dc0e0c2c3620ee743d096d6dc0143 (diff) | |
Add image tests
Diffstat (limited to 'src/cairo-tests/image-rotate.cpp')
| -rw-r--r-- | src/cairo-tests/image-rotate.cpp | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/src/cairo-tests/image-rotate.cpp b/src/cairo-tests/image-rotate.cpp new file mode 100644 index 0000000..53274c6 --- /dev/null +++ b/src/cairo-tests/image-rotate.cpp @@ -0,0 +1,73 @@ +/* + * Copyright 2014 © Samsung Research America, Silicon Valley + * + * Use of this source code is governed by the 3-Clause BSD license + * specified in the COPYING file included with this source code. + */ +#include <config.h> + +#include <stdio.h> +#include <stdlib.h> +#include <cairo.h> + +#include "caskbench.h" +#include "caskbench_context.h" + +static cairo_surface_t *image; + +int +ca_setup_image_rotate(caskbench_context_t *ctx) +{ + int i, x, y; + cairo_t *cr_image; + + image = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, 160, 40); + cr_image = cairo_create (image); + cairo_set_source_surface (cr_image, image, 0, 0); + + x = 5; + for (i=0; i<16; i++) { + x += 10; + y = (i%2)*10; + + cairo_set_source_rgba (cr_image, 1.0/(i+1), 1.0, 16.0*i/255.0, 1.0); + cairo_rectangle (cr_image, x, y, 10, 10); + cairo_fill (cr_image); + } + + cairo_destroy (cr_image); + + return 1; +} + +void +ca_teardown_image_rotate(void) +{ + cairo_surface_destroy (image); +} + +int +ca_test_image_rotate(caskbench_context_t* ctx) +{ + int i, x, y; + cairo_t *cr = ctx->cairo_cr; + + for (i=0; i<ctx->size; i++) { + y = 50 * (int)(i/4); + x = 200 * (i%4); + cairo_set_source_surface (cr, image, x, y); + cairo_paint (cr); + } + return 1; +} + +/* + Local Variables: + mode:c++ + c-file-style:"stroustrup" + c-file-offsets:((innamespace . 0)(inline-open . 0)(case-label . +)) + indent-tabs-mode:nil + fill-column:99 + End: +*/ +// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 : |