[gegl] buffer: Implement abyss parameter on gegl_buffer_copy
- From: Michael Henning <mhenning src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gegl] buffer: Implement abyss parameter on gegl_buffer_copy
- Date: Fri, 5 Jun 2015 02:12:03 +0000 (UTC)
commit 852d301b951e0833f43ba2a761c886a0eab0dcf4
Author: Michael Henning <drawoc darkrefraction com>
Date: Thu Jun 4 22:08:33 2015 -0400
buffer: Implement abyss parameter on gegl_buffer_copy
gegl/buffer/gegl-buffer-access.c | 15 ++++++++-------
1 files changed, 8 insertions(+), 7 deletions(-)
---
diff --git a/gegl/buffer/gegl-buffer-access.c b/gegl/buffer/gegl-buffer-access.c
index af62c89..a661e39 100644
--- a/gegl/buffer/gegl-buffer-access.c
+++ b/gegl/buffer/gegl-buffer-access.c
@@ -1549,6 +1549,7 @@ gegl_buffer_sample_cleanup (GeglBuffer *buffer)
static void
gegl_buffer_copy2 (GeglBuffer *src,
const GeglRectangle *src_rect,
+ GeglAbyssPolicy repeat_mode,
GeglBuffer *dst,
const GeglRectangle *dst_rect)
{
@@ -1578,14 +1579,14 @@ gegl_buffer_copy2 (GeglBuffer *src,
dest_rect_r.height = src_rect->height;
i = gegl_buffer_iterator_new (dst, &dest_rect_r, 0, dst->soft_format,
- GEGL_ACCESS_WRITE, GEGL_ABYSS_NONE);
+ GEGL_ACCESS_WRITE, repeat_mode);
while (gegl_buffer_iterator_next (i))
{
GeglRectangle src_rect = i->roi[0];
src_rect.x += offset_x;
src_rect.y += offset_y;
gegl_buffer_iterate_read_dispatch (src, &src_rect, i->data[0], 0,
- dst->soft_format, 0, GEGL_ABYSS_NONE);
+ dst->soft_format, 0, repeat_mode);
}
}
}
@@ -1726,31 +1727,31 @@ gegl_buffer_copy (GeglBuffer *src,
GEGL_RECTANGLE (src_rect->x + (top.x-dst_rect->x),
src_rect->y + (top.y-dst_rect->y),
top.width, top.height),
- dst, &top);
+ repeat_mode, dst, &top);
if (bottom.height)
gegl_buffer_copy2 (src,
GEGL_RECTANGLE (src_rect->x + (bottom.x-dst_rect->x),
src_rect->y + (bottom.y-dst_rect->y),
bottom.width, bottom.height),
- dst, &bottom);
+ repeat_mode, dst, &bottom);
if (left.width)
gegl_buffer_copy2 (src,
GEGL_RECTANGLE (src_rect->x + (left.x-dst_rect->x),
src_rect->y + (left.y-dst_rect->y),
left.width, left.height),
- dst, &left);
+ repeat_mode, dst, &left);
if (right.width && right.height)
gegl_buffer_copy2 (src,
GEGL_RECTANGLE (src_rect->x + (right.x-dst_rect->x),
src_rect->y + (right.y-dst_rect->y),
right.width, right.height),
- dst, &right);
+ repeat_mode, dst, &right);
}
}
}
else
{
- gegl_buffer_copy2 (src, src_rect, dst, dst_rect);
+ gegl_buffer_copy2 (src, src_rect, repeat_mode, dst, dst_rect);
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]