From 3568671242456ff7d61293ecfeab548e3e592564 Mon Sep 17 00:00:00 2001 From: David Odin Date: Tue, 7 Sep 2004 21:04:07 +0000 Subject: [PATCH] added some tests for gimp_preview_area_blend() and * libgimpwidgets/test-preview-area.c: added some tests for gimp_preview_area_blend() and gimp_preview_area_mask(). --- ChangeLog | 5 ++ libgimpwidgets/test-preview-area.c | 75 ++++++++++++++++++++++++++---- 2 files changed, 72 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 779c288a69..643a21c90c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2004-09-07 DindinX + + * libgimpwidgets/test-preview-area.c: added some tests for + gimp_preview_area_blend() and gimp_preview_area_mask(). + 2004-09-07 DindinX * libgimpwidgets/gimppreviewarea.c diff --git a/libgimpwidgets/test-preview-area.c b/libgimpwidgets/test-preview-area.c index 32dbda4490..29ac0302c5 100644 --- a/libgimpwidgets/test-preview-area.c +++ b/libgimpwidgets/test-preview-area.c @@ -46,7 +46,7 @@ test_run (GtkWidget *area, { guchar *buf; gint i, j; - gint offset; + gint offset, offset2, offset3; gint num_iters = NUM_ITERS; guchar val; gdouble start_time, total_time; @@ -94,11 +94,12 @@ test_run (GtkWidget *area, for (enum_value = enum_class->values; enum_value->value_name; enum_value++) { + /* gimp_preview_area_draw */ start_time = g_timer_elapsed (timer, NULL); for (i = 0; i < num_iters; i++) - { - offset = (rand () % (WIDTH * HEIGHT * 4)) & -4; + { + offset = (rand () % (WIDTH * HEIGHT * 4)) & -4; gimp_preview_area_draw (GIMP_PREVIEW_AREA (area), 0, 0, WIDTH, HEIGHT, enum_value->value, @@ -111,11 +112,69 @@ test_run (GtkWidget *area, gdk_flush (); total_time = g_timer_elapsed (timer, NULL) - start_time; g_print ("%-16s " - "time elapsed: %5.2fs, %8.1f fps, %8.2f megapixels/s\n", - enum_value->value_name, - total_time, - num_iters / total_time, - num_iters * (WIDTH * HEIGHT * 1e-6) / total_time); + "time elapsed for draw: %5.2fs, %8.1f fps, %8.2f megapixels/s\n", + enum_value->value_name, + total_time, + num_iters / total_time, + num_iters * (WIDTH * HEIGHT * 1e-6) / total_time); + + /* gimp_preview_area_blend */ + start_time = g_timer_elapsed (timer, NULL); + + for (i = 0; i < num_iters; i++) + { + offset = (rand () % (WIDTH * HEIGHT * 4)) & -4; + offset2 = (rand () % (WIDTH * HEIGHT * 4)) & -4; + gimp_preview_area_blend (GIMP_PREVIEW_AREA (area), + 0, 0, WIDTH, HEIGHT, + enum_value->value, + buf + offset, + WIDTH * 4, + buf + offset2, + WIDTH * 4, + rand () & 0xFF); + + gdk_window_process_updates (area->window, FALSE); + } + + gdk_flush (); + total_time = g_timer_elapsed (timer, NULL) - start_time; + g_print ("%-16s " + "time elapsed for blend: %5.2fs, %8.1f fps, %8.2f megapixels/s\n", + enum_value->value_name, + total_time, + num_iters / total_time, + num_iters * (WIDTH * HEIGHT * 1e-6) / total_time); + + /* gimp_preview_area_mask */ + start_time = g_timer_elapsed (timer, NULL); + + for (i = 0; i < num_iters; i++) + { + offset = (rand () % (WIDTH * HEIGHT * 4)) & -4; + offset2 = (rand () % (WIDTH * HEIGHT * 4)) & -4; + offset3 = (rand () % (WIDTH * HEIGHT * 4)) & -4; + gimp_preview_area_mask (GIMP_PREVIEW_AREA (area), + 0, 0, WIDTH, HEIGHT, + enum_value->value, + buf + offset, + WIDTH * 4, + buf + offset2, + WIDTH * 4, + buf + offset3, + WIDTH); + + gdk_window_process_updates (area->window, FALSE); + } + + gdk_flush (); + total_time = g_timer_elapsed (timer, NULL) - start_time; + g_print ("%-16s " + "time elapsed for blend: %5.2fs, %8.1f fps, %8.2f megapixels/s\n", + enum_value->value_name, + total_time, + num_iters / total_time, + num_iters * (WIDTH * HEIGHT * 1e-6) / total_time); } start_time = g_timer_elapsed (timer, NULL);