diff options
| author | Bryce Harrington <b.harrington@samsung.com> | 2014-06-24 19:32:30 -0700 |
|---|---|---|
| committer | Bryce Harrington <b.harrington@samsung.com> | 2014-06-25 10:30:21 -0700 |
| commit | 6e7613c44feca5d10de4c4c064e3a9338b0a7876 (patch) | |
| tree | 22e65bc3f1288b7625a6b37834bdacf478716731 /src/cairo-tests/circle.cpp | |
| parent | cf727a377e6b9655e718986683f0e229272c0fc1 (diff) | |
Mass test renaming
Now that we can map canvas_perf.js tests to different test names /
commands, make use of this to establish better names for tests.
Diffstat (limited to 'src/cairo-tests/circle.cpp')
| -rw-r--r-- | src/cairo-tests/circle.cpp | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/src/cairo-tests/circle.cpp b/src/cairo-tests/circle.cpp new file mode 100644 index 0000000..7fbf1bd --- /dev/null +++ b/src/cairo-tests/circle.cpp @@ -0,0 +1,70 @@ +/* + * 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" +#include "cairo-shapes.h" + +int +ca_setup_circle(caskbench_context_t *ctx) +{ + cairo_set_antialias (ctx->cairo_cr, CAIRO_ANTIALIAS_NONE); + cairo_set_line_width (ctx->cairo_cr, 1); + return 1; +} + +void +ca_teardown_circle(void) +{ +} + +int +ca_test_circle(caskbench_context_t *ctx) +{ + int w = ctx->canvas_width; + int h = ctx->canvas_height; + + shapes_t shape; + shape_copy(&ctx->shape_defaults, &shape); + for (int i=0; i<ctx->size; i++) { + shape.x = (double)rand()/RAND_MAX * w; + shape.y = (double)rand()/RAND_MAX * h; + shape.radius = (double)rand()/RAND_MAX * MIN( + MIN(shape.x, w-shape.x), MIN(shape.y, h-shape.y)); + + cairoRandomizeColor(ctx); + cairoDrawCircle(ctx, &shape); + switch (ctx->shape_defaults.fill_type) { + case CB_FILL_NONE: + cairo_stroke(ctx->cairo_cr); + break; + case CB_FILL_SOLID: + cairo_fill(ctx->cairo_cr); + break; + default: + break; + } + } + + 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 : |