[gegl/pippin/wip/mipmap-prerenders: 4/4] repermutate arguments of gegl_buffer_set and gegl_buffer_get



commit 35ae095972f7c96ac20890d7fa5c56f1bf1251b5
Author: Ãyvind KolÃs <pippin gimp org>
Date:   Sun Jun 12 15:44:36 2011 +0100

    repermutate arguments of gegl_buffer_set and gegl_buffer_get

 gegl/buffer/gegl-buffer-access.c     |    6 +++---
 gegl/buffer/gegl-buffer-iterator.c   |    2 +-
 gegl/buffer/gegl-buffer-linear.c     |    2 +-
 gegl/buffer/gegl-buffer.h            |   14 +++++++++-----
 gegl/buffer/gegl-sampler.c           |    6 +++---
 gegl/graph/gegl-node.c               |    4 ++--
 gegl/process/gegl-processor.c        |    4 ++--
 operations/affine/affine.c           |   10 +++++-----
 operations/common/bilateral-filter.c |    6 +++---
 operations/common/box-blur.c         |    8 ++++----
 operations/common/c2g.c              |    4 ++--
 operations/common/edge-laplace.c     |    6 +++---
 operations/common/edge-sobel.c       |    6 +++---
 operations/common/exp-combine.c      |    8 ++++----
 operations/common/fattal02.c         |    8 ++++----
 operations/common/fractal-explorer.c |    4 ++--
 operations/common/gaussian-blur.c    |   24 ++++++++++++------------
 operations/common/mantiuk06.c        |    8 ++++----
 operations/common/mblur.c            |    8 ++++----
 operations/common/mirrors.c          |    2 +-
 operations/common/mono-mixer.c       |    6 +++---
 operations/common/motion-blur.c      |    4 ++--
 operations/common/noise-reduction.c  |    7 ++++---
 operations/common/pixelise.c         |    4 ++--
 operations/common/raw-load.c         |    3 ++-
 operations/common/reinhard05.c       |    8 ++++----
 operations/common/snn-mean.c         |    6 +++---
 operations/common/stress.c           |    4 ++--
 operations/common/stretch-contrast.c |    8 ++++----
 operations/external/exr-load.cpp     |   25 +++++++++++++------------
 operations/external/exr-save.cc      |    5 +++--
 operations/external/jpg-load.c       |    4 ++--
 operations/external/pixbuf.c         |    4 ++--
 operations/external/png-load.c       |    6 +++---
 operations/external/png-save.c       |    2 +-
 operations/external/ppm-load.c       |   12 ++++++------
 operations/external/ppm-save.c       |    4 ++--
 operations/external/rgbe-load.c      |    4 ++--
 operations/external/rgbe-save.c      |    2 +-
 operations/external/save-pixbuf.c    |    2 +-
 operations/external/sdl-display.c    |    2 +-
 operations/external/svg-load.c       |    2 +-
 operations/external/text.c           |    4 ++--
 43 files changed, 138 insertions(+), 130 deletions(-)
---
diff --git a/gegl/buffer/gegl-buffer-access.c b/gegl/buffer/gegl-buffer-access.c
index e6f61f9..e74861c 100644
--- a/gegl/buffer/gegl-buffer-access.c
+++ b/gegl/buffer/gegl-buffer-access.c
@@ -597,10 +597,10 @@ gegl_buffer_set_unlocked (GeglBuffer          *buffer,
 void
 gegl_buffer_set (GeglBuffer          *buffer,
                  const GeglRectangle *rect,
+                 gint                 level,
                  const Babl          *format,
                  void                *src,
-                 gint                 rowstride,
-                 gint                 level)     /* adding it here seems a bit wrong */
+                 gint                 rowstride)
 {
   g_return_if_fail (GEGL_IS_BUFFER (buffer));
 
@@ -1047,8 +1047,8 @@ gegl_buffer_get_unlocked (GeglBuffer          *buffer,
 
 void
 gegl_buffer_get (GeglBuffer          *buffer,
-                 gdouble              scale,
                  const GeglRectangle *rect,
+                 gdouble              scale,
                  const Babl          *format,
                  gpointer             dest_buf,
                  gint                 rowstride)
diff --git a/gegl/buffer/gegl-buffer-iterator.c b/gegl/buffer/gegl-buffer-iterator.c
index b6d5993..1fab4f3 100644
--- a/gegl/buffer/gegl-buffer-iterator.c
+++ b/gegl/buffer/gegl-buffer-iterator.c
@@ -422,7 +422,7 @@ gboolean gegl_buffer_iterator_next     (GeglBufferIterator *iterator)
   /* XXX: should perhaps use _set_unlocked, and keep the lock in the
    * iterator.
    */
-                  gegl_buffer_set (i->buffer[no], &(i->roi[no]), i->format[no], i->buf[no], GEGL_AUTO_ROWSTRIDE, 0); /* XXX: use correct level */
+                  gegl_buffer_set (i->buffer[no], &(i->roi[no]), 0, i->format[no], i->buf[no], GEGL_AUTO_ROWSTRIDE); /* XXX: use correct level */
                 }
             }
         }
diff --git a/gegl/buffer/gegl-buffer-linear.c b/gegl/buffer/gegl-buffer-linear.c
index 2d57f61..ce497cd 100644
--- a/gegl/buffer/gegl-buffer-linear.c
+++ b/gegl/buffer/gegl-buffer-linear.c
@@ -238,7 +238,7 @@ gegl_buffer_linear_close (GeglBuffer *buffer,
 
               g_mutex_unlock (buffer->tile_storage->mutex);
               /* XXX: potential race */
-              gegl_buffer_set (buffer, &info->extent, info->format, info->buf, 0, 0);
+              gegl_buffer_set (buffer, &info->extent, 0, info->format, info->buf, 0);
               g_mutex_lock (buffer->tile_storage->mutex);
               break;
             }
diff --git a/gegl/buffer/gegl-buffer.h b/gegl/buffer/gegl-buffer.h
index 9277248..ee49397 100644
--- a/gegl/buffer/gegl-buffer.h
+++ b/gegl/buffer/gegl-buffer.h
@@ -216,10 +216,10 @@ gboolean gegl_buffer_set_extent (GeglBuffer          *buffer,
 /**
  * gegl_buffer_get:
  * @buffer: the buffer to retrieve data from.
- * @scale: sampling scale, 1.0 = pixel for pixel 2.0 = magnify, 0.5 scale down.
  * @rect: the coordinates we want to retrieve data from, and width/height of
  * destination buffer, if NULL equal to the extent of the buffer. The
  * coordinates and dimensions are after scale has been applied.
+ * @scale: sampling scale, 1.0 = pixel for pixel 2.0 = magnify, 0.5 scale down.
  * @format: the BablFormat to store in the linear buffer @dest.
  * @dest: the memory destination for a linear buffer for the pixels, the size needed
  * depends on the requested BablFormat.
@@ -232,8 +232,8 @@ gboolean gegl_buffer_set_extent (GeglBuffer          *buffer,
  * the tile structure into a linear buffer.
  */
 void            gegl_buffer_get               (GeglBuffer          *buffer,
-                                               gdouble              scale,
                                                const GeglRectangle *rect,
+                                               gdouble              scale,
                                                const Babl          *format,
                                                gpointer             dest,
                                                gint                 rowstride);
@@ -241,7 +241,11 @@ void            gegl_buffer_get               (GeglBuffer          *buffer,
 /**
  * gegl_buffer_set:
  * @buffer: the buffer to modify.
- * @rect: the coordinates we want to change the data of and the width/height extent, if NULL equal to the extent of the buffer.
+ * @rect: the coordinates we want to change the data of and the width/height of
+ * the linear buffer being set, scale specifies the scaling factor applied to
+ * the data when setting.
+ * @scale_level: the scale level being set, 0 = 1:1 = default = base mipmap level,
+ * 1 = 1:2, 2=1:4, 3=1:8 ..
  * @format: the babl_format the linear buffer @src.
  * @src: linear buffer of image data to be stored in @buffer.
  * @rowstride: rowstride in bytes, or GEGL_AUTO_ROWSTRIDE to compute the
@@ -251,10 +255,10 @@ void            gegl_buffer_get               (GeglBuffer          *buffer,
  */
 void            gegl_buffer_set               (GeglBuffer          *buffer,
                                                const GeglRectangle *rect,
+                                               gint                 scale_level,
                                                const Babl          *format,
                                                void                *src,
-                                               gint                 rowstride,
-                                               gint                 level);  /* level should perhaps be scale? */
+                                               gint                 rowstride);
 
 
 /**
diff --git a/gegl/buffer/gegl-sampler.c b/gegl/buffer/gegl-sampler.c
index a66ee1c..4c12917 100644
--- a/gegl/buffer/gegl-sampler.c
+++ b/gegl/buffer/gegl-sampler.c
@@ -277,8 +277,8 @@ gegl_sampler_get_ptr (GeglSampler *const sampler,
         }
 
       gegl_buffer_get (sampler->buffer,
-                       1.0,
                        &fetch_rectangle,
+                       1.0,
                        sampler->interpolate_format,
                        sampler->sampler_buffer[0],
                        GEGL_AUTO_ROWSTRIDE);
@@ -351,8 +351,8 @@ gegl_sampler_get_from_buffer (GeglSampler *const sampler,
         }
 
       gegl_buffer_get (sampler->buffer,
-                       1.0,
                        &fetch_rectangle,
+                       1.0,
                        sampler->interpolate_format,
                        sampler->sampler_buffer[0],
                        GEGL_AUTO_ROWSTRIDE);
@@ -446,8 +446,8 @@ gegl_sampler_get_from_mipmap (GeglSampler *const sampler,
         }
 
       gegl_buffer_get (sampler->buffer,
-                       scale,
                        &fetch_rectangle,
+                       scale,
                        sampler->interpolate_format,
                        sampler->sampler_buffer[level],
                        GEGL_AUTO_ROWSTRIDE);
diff --git a/gegl/graph/gegl-node.c b/gegl/graph/gegl-node.c
index abe8a25..58a8a18 100644
--- a/gegl/graph/gegl-node.c
+++ b/gegl/graph/gegl-node.c
@@ -893,7 +893,7 @@ static void spawnrender (gpointer data,
 
   if ((buffer ) && td->destination_buf)
     {
-      gegl_buffer_get (buffer, 1.0, &td->roi, td->format, td->destination_buf, td->rowstride);
+      gegl_buffer_get (buffer, &td->roi, 1.0, td->format, td->destination_buf, td->rowstride);
     }
 
   /* and unrefing to ultimately clean it off from the graph */
@@ -1053,7 +1053,7 @@ gegl_node_blit (GeglNode            *self,
         }
       if (destination_buf && cache)
         {
-          gegl_buffer_get (GEGL_BUFFER (cache), scale, roi,
+          gegl_buffer_get (GEGL_BUFFER (cache), roi, scale,
                            format, destination_buf, rowstride);
         }
     }
diff --git a/gegl/process/gegl-processor.c b/gegl/process/gegl-processor.c
index eef64c1..9a3a97d 100644
--- a/gegl/process/gegl-processor.c
+++ b/gegl/process/gegl-processor.c
@@ -480,8 +480,8 @@ render_rectangle (GeglProcessor *processor)
 
 
               /* copy the buffer data into the cache */
-              gegl_buffer_set (GEGL_BUFFER (cache), dr, cache->format, buf,
-                               GEGL_AUTO_ROWSTRIDE, 0); /* XXX: deal with the level */
+              gegl_buffer_set (GEGL_BUFFER (cache), dr, 0, cache->format, buf,
+                               GEGL_AUTO_ROWSTRIDE); /* XXX: deal with the level */
 
               /* tells the cache that the rectangle (dr) has been computed */
               gegl_cache_computed (cache, dr);
diff --git a/operations/affine/affine.c b/operations/affine/affine.c
index 7ac675a..a76e608 100644
--- a/operations/affine/affine.c
+++ b/operations/affine/affine.c
@@ -756,7 +756,7 @@ gegl_affine_fast_reflect_x (GeglBuffer              *dest,
   gint                     i;
   guchar                  *buf = (guchar *) g_malloc (src_rect->height * rowstride);
 
-  gegl_buffer_get (src, 1.0, src_rect, format, buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src,  src_rect, 1.0, format, buf, GEGL_AUTO_ROWSTRIDE);
 
   for (i = 0; i < src_rect->height / 2; i++)
     {
@@ -776,7 +776,7 @@ gegl_affine_fast_reflect_x (GeglBuffer              *dest,
         }
     }
 
-  gegl_buffer_set (dest, dest_rect, format, buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dest, dest_rect, 0, format, buf, GEGL_AUTO_ROWSTRIDE);
   g_free (buf);
 }
 
@@ -793,7 +793,7 @@ gegl_affine_fast_reflect_y (GeglBuffer              *dest,
   gint                     i;
   guchar                  *buf = (guchar *) g_malloc (src_rect->height * rowstride);
 
-  gegl_buffer_get (src, 1.0, src_rect, format, buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, format, buf, GEGL_AUTO_ROWSTRIDE);
 
   for (i = 0; i < src_rect->height; i++)
     {
@@ -822,7 +822,7 @@ gegl_affine_fast_reflect_y (GeglBuffer              *dest,
         }
     }
 
-  gegl_buffer_set (dest, dest_rect, format, buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dest, dest_rect, 0, format, buf, GEGL_AUTO_ROWSTRIDE);
   g_free (buf);
 }
 
@@ -946,7 +946,7 @@ gegl_affine_process (GeglOperation        *operation,
 
       sampler = gegl_buffer_sampler_new (input, babl_format("RaGaBaA float"),
           gegl_sampler_type_from_string (affine->filter));
-      affine_generic (output, input, &matrix, sampler);
+      affine_generic (output, input, &matrix, sampler, context->level);
 
       g_object_unref (sampler);
 
diff --git a/operations/common/bilateral-filter.c b/operations/common/bilateral-filter.c
index 4fa002e..f0128f0 100644
--- a/operations/common/bilateral-filter.c
+++ b/operations/common/bilateral-filter.c
@@ -103,7 +103,7 @@ bilateral_filter (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset = 0;
 
@@ -158,8 +158,8 @@ bilateral_filter (GeglBuffer          *src,
           dst_buf[offset*4+u] = accumulated[u]/count;
         offset++;
       }
-  gegl_buffer_set (dst, dst_rect, babl_format ("RGBA float"), dst_buf,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RGBA float"), dst_buf,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/box-blur.c b/operations/common/box-blur.c
index 932a7dc..cfaa485 100644
--- a/operations/common/box-blur.c
+++ b/operations/common/box-blur.c
@@ -134,7 +134,7 @@ hor_blur (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RaGaBaA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RaGaBaA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset = 0;
   for (v=0; v<dst_rect->height; v++)
@@ -156,7 +156,7 @@ hor_blur (GeglBuffer          *src,
           dst_buf [offset++] = components[i];
       }
 
-  gegl_buffer_set (dst, dst_rect, babl_format ("RaGaBaA float"), dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RaGaBaA float"), dst_buf, GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
@@ -178,7 +178,7 @@ ver_blur (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RaGaBaA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RaGaBaA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset=0;
   for (v=0; v<dst_rect->height; v++)
@@ -200,7 +200,7 @@ ver_blur (GeglBuffer          *src,
           dst_buf [offset++] = components[c];
       }
 
-  gegl_buffer_set (dst, dst_rect, babl_format ("RaGaBaA float"), dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RaGaBaA float"), dst_buf, GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/c2g.c b/operations/common/c2g.c
index d0217e7..1d56c3e 100644
--- a/operations/common/c2g.c
+++ b/operations/common/c2g.c
@@ -67,7 +67,7 @@ static void c2g (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 2);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   for (y=radius; y<dst_rect->height+radius; y++)
     {
@@ -122,7 +122,7 @@ static void c2g (GeglBuffer          *src,
           }
         }
     }
-  gegl_buffer_set (dst, dst_rect, babl_format ("YA float"), dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("YA float"), dst_buf, GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/edge-laplace.c b/operations/common/edge-laplace.c
index 2cc16b9..9ed9c0e 100644
--- a/operations/common/edge-laplace.c
+++ b/operations/common/edge-laplace.c
@@ -133,7 +133,7 @@ edge_laplace (GeglBuffer          *src,
   temp_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf  = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect,
+  gegl_buffer_get (src, src_rect, 1.0,
                    babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   for (y=0; y<dst_rect->height; y++)
@@ -217,8 +217,8 @@ edge_laplace (GeglBuffer          *src,
         offset++;
       }
 
-  gegl_buffer_set (dst, dst_rect, babl_format ("RGBA float"), dst_buf,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RGBA float"), dst_buf,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (temp_buf);
   g_free (dst_buf);
diff --git a/operations/common/edge-sobel.c b/operations/common/edge-sobel.c
index 5b6831f..f8d98be 100644
--- a/operations/common/edge-sobel.c
+++ b/operations/common/edge-sobel.c
@@ -108,7 +108,7 @@ edge_sobel (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset = 0;
 
@@ -176,8 +176,8 @@ edge_sobel (GeglBuffer          *src,
         offset++;
       }
 
-  gegl_buffer_set (dst, dst_rect, babl_format ("RGBA float"), dst_buf,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RGBA float"), dst_buf,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/exp-combine.c b/operations/common/exp-combine.c
index 0f5983d..cbcbcec 100644
--- a/operations/common/exp-combine.c
+++ b/operations/common/exp-combine.c
@@ -955,7 +955,7 @@ gegl_expcombine_get_exposures (GeglOperation        *operation,
       e->pixels[PIXELS_FULL]   = g_new (gfloat, full_roi->width  *
                                                 full_roi->height *
                                                 components);
-      gegl_buffer_get (buffer, 1.0, full_roi, babl_format (PAD_FORMAT),
+      gegl_buffer_get (buffer, full_roi, 1.0, babl_format (PAD_FORMAT),
                        e->pixels[PIXELS_FULL], GEGL_AUTO_ROWSTRIDE);
 
       g_return_val_if_fail (scale <= 1.0f, NULL);
@@ -967,7 +967,7 @@ gegl_expcombine_get_exposures (GeglOperation        *operation,
                                             (scaled_roi->width  *
                                              scaled_roi->height *
                                              components));
-          gegl_buffer_get (buffer, scale, scaled_roi, babl_format (PAD_FORMAT),
+          gegl_buffer_get (buffer, scaled_roi, scale, babl_format (PAD_FORMAT),
                            e->pixels[PIXELS_SCALED], GEGL_AUTO_ROWSTRIDE);
         }
 
@@ -1199,8 +1199,8 @@ gegl_expcombine_process (GeglOperation        *operation,
 #endif
 
   /* Save the HDR components to the output buffer. */
-  gegl_buffer_set (output, full_roi, babl_format (PAD_FORMAT), hdr,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, full_roi, 0, babl_format (PAD_FORMAT), hdr,
+                   GEGL_AUTO_ROWSTRIDE);
   gegl_cache_computed (gegl_node_get_cache (operation->node), full_roi);
 
   /* Cleanup */
diff --git a/operations/common/fattal02.c b/operations/common/fattal02.c
index cbfcce3..797a248 100644
--- a/operations/common/fattal02.c
+++ b/operations/common/fattal02.c
@@ -1275,11 +1275,11 @@ fattal02_process (GeglOperation       *operation,
   lum_in  = g_new (gfloat, result->width * result->height);
   lum_out = g_new (gfloat, result->width * result->height);
 
-  gegl_buffer_get (input, 1.0, result, babl_format ("Y float"),
+  gegl_buffer_get (input, result, 1.0, babl_format ("Y float"),
                    lum_in, GEGL_AUTO_ROWSTRIDE);
 
   pix = g_new (gfloat, result->width * result->height * pix_stride);
-  gegl_buffer_get (input, 1.0, result, babl_format (OUTPUT_FORMAT),
+  gegl_buffer_get (input, result, 1.0, babl_format (OUTPUT_FORMAT),
                    pix, GEGL_AUTO_ROWSTRIDE);
 
   fattal02_tonemap (lum_in, result, lum_out, o->alpha, o->beta, noise);
@@ -1291,8 +1291,8 @@ fattal02_process (GeglOperation       *operation,
                 lum_out[i / pix_stride]);
     }
 
-  gegl_buffer_set (output, result, babl_format (OUTPUT_FORMAT), pix,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, result, 0, babl_format (OUTPUT_FORMAT), pix,
+                   GEGL_AUTO_ROWSTRIDE);
   return TRUE;
 }
 
diff --git a/operations/common/fractal-explorer.c b/operations/common/fractal-explorer.c
index 96ca1b9..6cf05cd 100644
--- a/operations/common/fractal-explorer.c
+++ b/operations/common/fractal-explorer.c
@@ -445,8 +445,8 @@ process (GeglOperation       *operation,
         }
     }
 
-  gegl_buffer_set (output, NULL, babl_format ("R'G'B' u8"), buf,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, NULL, 0, babl_format ("R'G'B' u8"), buf,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (buf);
 
   return TRUE;
diff --git a/operations/common/gaussian-blur.c b/operations/common/gaussian-blur.c
index 4e0be6a..02aff64 100644
--- a/operations/common/gaussian-blur.c
+++ b/operations/common/gaussian-blur.c
@@ -161,7 +161,7 @@ iir_young_hor_blur (GeglBuffer          *src,
   buf = g_new0 (gfloat, src_rect->height * src_rect->width * 4);
   w   = g_new0 (gfloat, src_rect->width);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RaGaBaA float"),
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RaGaBaA float"),
                    buf, GEGL_AUTO_ROWSTRIDE);
 
   w_len = src_rect->width;
@@ -179,8 +179,8 @@ iir_young_hor_blur (GeglBuffer          *src,
         }
     }
 
-  gegl_buffer_set (dst, src_rect, babl_format ("RaGaBaA float"),
-                   buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, src_rect, 0.0, babl_format ("RaGaBaA float"),
+                   buf, GEGL_AUTO_ROWSTRIDE);
   g_free (buf);
   g_free (w);
 }
@@ -203,7 +203,7 @@ iir_young_ver_blur (GeglBuffer          *src,
   buf = g_new0 (gfloat, src_rect->height * src_rect->width * 4);
   w   = g_new0 (gfloat, src_rect->height);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RaGaBaA float"),
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RaGaBaA float"),
                    buf, GEGL_AUTO_ROWSTRIDE);
 
   w_len = src_rect->height;
@@ -221,8 +221,8 @@ iir_young_ver_blur (GeglBuffer          *src,
         }
     }
 
-  gegl_buffer_set (dst, src_rect,
-                   babl_format ("RaGaBaA float"), buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, src_rect, 0,
+                   babl_format ("RaGaBaA float"), buf, GEGL_AUTO_ROWSTRIDE);
   g_free (buf);
   g_free (w);
 }
@@ -323,7 +323,7 @@ fir_hor_blur (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->height * src_rect->width * 4);
   dst_buf = g_new0 (gfloat, dst_rect->height * dst_rect->width * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RaGaBaA float"),
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RaGaBaA float"),
                    src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset = 0;
@@ -340,8 +340,8 @@ fir_hor_blur (GeglBuffer          *src,
                                                           matrix_length);
       }
 
-  gegl_buffer_set (dst, dst_rect, babl_format ("RaGaBaA float"),
-                   dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0.0, babl_format ("RaGaBaA float"),
+                   dst_buf, GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
@@ -368,7 +368,7 @@ fir_ver_blur (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RaGaBaA float"),
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RaGaBaA float"),
                    src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset=0;
@@ -385,8 +385,8 @@ fir_ver_blur (GeglBuffer          *src,
                                                           matrix_length);
       }
 
-  gegl_buffer_set (dst, dst_rect, babl_format ("RaGaBaA float"),
-                   dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RaGaBaA float"),
+                   dst_buf, GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/mantiuk06.c b/operations/common/mantiuk06.c
index 562e1c2..5d72eed 100644
--- a/operations/common/mantiuk06.c
+++ b/operations/common/mantiuk06.c
@@ -1595,19 +1595,19 @@ mantiuk06_process (GeglOperation       *operation,
 
   /* Obtain the pixel data */
   lum = g_new (gfloat, result->width * result->height),
-  gegl_buffer_get (input, 1.0, result, babl_format ("Y float"),
+  gegl_buffer_get (input, result, 1.0, babl_format ("Y float"),
                    lum, GEGL_AUTO_ROWSTRIDE);
 
   pix = g_new (gfloat, result->width * result->height * pix_stride);
-  gegl_buffer_get (input, 1.0, result, babl_format (OUTPUT_FORMAT),
+  gegl_buffer_get (input, result, 1.0, babl_format (OUTPUT_FORMAT),
                    pix, GEGL_AUTO_ROWSTRIDE);
 
   mantiuk06_contmap (result->width, result->height, pix, lum,
                      o->contrast, o->saturation, FALSE, 200, 1e-3, NULL);
 
   /* Cleanup and set the output */
-  gegl_buffer_set (output, result, babl_format (OUTPUT_FORMAT), pix,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, result, 0, babl_format (OUTPUT_FORMAT), pix,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (pix);
   g_free (lum);
 
diff --git a/operations/common/mblur.c b/operations/common/mblur.c
index 9f7742f..6464e96 100644
--- a/operations/common/mblur.c
+++ b/operations/common/mblur.c
@@ -84,8 +84,8 @@ process (GeglOperation       *operation,
         gfloat *acc = g_new (gfloat, pixels * 4);
         gfloat dampness;
         gint i;
-        gegl_buffer_get (p->acc, 1.0, result, babl_format ("RGBA float"), acc, GEGL_AUTO_ROWSTRIDE);
-        gegl_buffer_get (temp_in, 1.0, result, babl_format ("RGBA float"), buf, GEGL_AUTO_ROWSTRIDE);
+        gegl_buffer_get (p->acc, result, 1.0, babl_format ("RGBA float"), acc, GEGL_AUTO_ROWSTRIDE);
+        gegl_buffer_get (temp_in, result, 1.0, babl_format ("RGBA float"), buf, GEGL_AUTO_ROWSTRIDE);
         dampness = o->dampness;
         for (i=0;i<pixels;i++)
           {
@@ -93,8 +93,8 @@ process (GeglOperation       *operation,
             for (c=0;c<4;c++)
               acc[i*4+c]=acc[i*4+c]*dampness + buf[i*4+c]*(1.0-dampness);
           }
-        gegl_buffer_set (p->acc, result, babl_format ("RGBA float"), acc, GEGL_AUTO_ROWSTRIDE, 0);
-        gegl_buffer_set (output, result, babl_format ("RGBA float"), acc, GEGL_AUTO_ROWSTRIDE, 0);
+        gegl_buffer_set (p->acc, result, 0, babl_format ("RGBA float"), acc, GEGL_AUTO_ROWSTRIDE);
+        gegl_buffer_set (output, result, 0, babl_format ("RGBA float"), acc, GEGL_AUTO_ROWSTRIDE);
         g_free (buf);
         g_free (acc);
       }
diff --git a/operations/common/mirrors.c b/operations/common/mirrors.c
index 7f989b2..6e1a937 100644
--- a/operations/common/mirrors.c
+++ b/operations/common/mirrors.c
@@ -250,7 +250,7 @@ apply_mirror (double               mirror_angle,
     gegl_buffer_sample_cleanup(src);
 
   /* Store dst pixels. */
-  gegl_buffer_set (dst, roi, format, dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, roi, 0, format, dst_buf, GEGL_AUTO_ROWSTRIDE);
 
   gegl_buffer_flush(dst);
 
diff --git a/operations/common/mono-mixer.c b/operations/common/mono-mixer.c
index 8d25234..2973155 100644
--- a/operations/common/mono-mixer.c
+++ b/operations/common/mono-mixer.c
@@ -64,7 +64,7 @@ process (GeglOperation       *operation,
      in_buf = g_new (gfloat, 4 * num_pixels);
      out_buf = g_new (gfloat, 2 * num_pixels);
 
-     gegl_buffer_get (input, 1.0, result, babl_format ("RGBA float"), in_buf, GEGL_AUTO_ROWSTRIDE);
+     gegl_buffer_get (input, result, 1.0, babl_format ("RGBA float"), in_buf, GEGL_AUTO_ROWSTRIDE);
 
      in_pixel = in_buf;
      out_pixel = out_buf;
@@ -77,8 +77,8 @@ process (GeglOperation       *operation,
          out_pixel += 2;
      }
 
-     gegl_buffer_set (output, result, babl_format ("YA float"), out_buf,
-                      GEGL_AUTO_ROWSTRIDE, 0);
+     gegl_buffer_set (output, result, 0, babl_format ("YA float"), out_buf,
+                      GEGL_AUTO_ROWSTRIDE);
 
      g_free (in_buf);
      g_free (out_buf);
diff --git a/operations/common/motion-blur.c b/operations/common/motion-blur.c
index c315261..454d8fb 100644
--- a/operations/common/motion-blur.c
+++ b/operations/common/motion-blur.c
@@ -101,7 +101,7 @@ process (GeglOperation       *operation,
   out_buf = g_new0 (gfloat, roi->width * roi->height * 4);
   out_pixel = out_buf;
 
-  gegl_buffer_get (input, 1.0, &src_rect, babl_format ("RaGaBaA float"), in_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (input, &src_rect, 1.0, babl_format ("RaGaBaA float"), in_buf, GEGL_AUTO_ROWSTRIDE);
 
   for (y=0; y<roi->height; ++y)
     {
@@ -146,7 +146,7 @@ process (GeglOperation       *operation,
         }
     }
 
-  gegl_buffer_set (output, roi, babl_format ("RaGaBaA float"), out_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, roi, 0, babl_format ("RaGaBaA float"), out_buf, GEGL_AUTO_ROWSTRIDE);
 
   g_free (in_buf);
   g_free (out_buf);
diff --git a/operations/common/noise-reduction.c b/operations/common/noise-reduction.c
index 5ef4a52..867eab7 100644
--- a/operations/common/noise-reduction.c
+++ b/operations/common/noise-reduction.c
@@ -150,7 +150,8 @@ static gboolean
 process (GeglOperation       *operation,
          GeglBuffer          *input,
          GeglBuffer          *output,
-         const GeglRectangle *result)
+         const GeglRectangle *result,
+         gint                 level)
 {
   GeglChantO   *o = GEGL_CHANT_PROPERTIES (operation);
   int iteration;
@@ -176,7 +177,7 @@ process (GeglOperation       *operation,
     rect.y      -= o->iterations;
     rect.width  += o->iterations*2;
     rect.height += o->iterations*2;
-    gegl_buffer_get (input, 1.0, &rect, babl_format ("R'G'B'A float"),
+    gegl_buffer_get (input, &rect, 1.0, babl_format ("R'G'B'A float"),
                      src_buf, stride * 4 * 4);
   }
 
@@ -200,7 +201,7 @@ process (GeglOperation       *operation,
 #endif
     }
 
-  gegl_buffer_set (output , result, babl_format ("R'G'B'A float"),
+  gegl_buffer_set (output, result, 0, babl_format ("R'G'B'A float"),
 #ifndef INPLACE
                    src_buf,
 #else
diff --git a/operations/common/pixelise.c b/operations/common/pixelise.c
index 0907e3c..a372e84 100644
--- a/operations/common/pixelise.c
+++ b/operations/common/pixelise.c
@@ -151,11 +151,11 @@ process (GeglOperation       *operation,
 
   buf = g_new0 (gfloat, src_rect.width * src_rect.height * 4);
 
-  gegl_buffer_get (input, 1.0, &src_rect, babl_format ("RaGaBaA float"), buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (input, &src_rect, 1.0, babl_format ("RaGaBaA float"), buf, GEGL_AUTO_ROWSTRIDE);
 
   pixelise(buf, roi, o->xsize, o->ysize);
 
-  gegl_buffer_set (output, roi, babl_format ("RaGaBaA float"), buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, roi, 0, babl_format ("RaGaBaA float"), buf, GEGL_AUTO_ROWSTRIDE);
 
   g_free (buf);
 
diff --git a/operations/common/raw-load.c b/operations/common/raw-load.c
index 249dea0..34f56c5 100644
--- a/operations/common/raw-load.c
+++ b/operations/common/raw-load.c
@@ -90,6 +90,7 @@ load_buffer (GeglChantO *op_raw_load)
            fread (buf, 1, width * height * 3 * 2, pfp);
            gegl_buffer_set (GEGL_BUFFER (op_raw_load->chant_data),
                             NULL,
+                            0,
                             babl_format_new (
                                         babl_model ("RGB"),
                                         babl_type ("u16"),
@@ -98,7 +99,7 @@ load_buffer (GeglChantO *op_raw_load)
                                         babl_component ("R"),
                                         NULL),
                             buf,
-                            GEGL_AUTO_ROWSTRIDE, 0
+                            GEGL_AUTO_ROWSTRIDE
                            );
            g_free (buf);
          }
diff --git a/operations/common/reinhard05.c b/operations/common/reinhard05.c
index d4f7039..b2aefa7 100644
--- a/operations/common/reinhard05.c
+++ b/operations/common/reinhard05.c
@@ -158,11 +158,11 @@ reinhard05_process (GeglOperation       *operation,
 
   /* Obtain the pixel data */
   lum = g_new (gfloat, result->width * result->height),
-  gegl_buffer_get (input, 1.0, result, babl_format ("Y float"),
+  gegl_buffer_get (input, result, 1.0, babl_format ("Y float"),
                    lum, GEGL_AUTO_ROWSTRIDE);
 
   pix = g_new (gfloat, result->width * result->height * pix_stride);
-  gegl_buffer_get (input, 1.0, result, babl_format (OUTPUT_FORMAT),
+  gegl_buffer_get (input, result, 1.0, babl_format (OUTPUT_FORMAT),
                    pix, GEGL_AUTO_ROWSTRIDE);
 
   /* Collect the image stats, averages, etc */
@@ -241,8 +241,8 @@ reinhard05_process (GeglOperation       *operation,
     }
 
   /* Cleanup and set the output */
-  gegl_buffer_set (output, result, babl_format (OUTPUT_FORMAT), pix,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, result, 0, babl_format (OUTPUT_FORMAT), pix,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (pix);
   g_free (lum);
 
diff --git a/operations/common/snn-mean.c b/operations/common/snn-mean.c
index 7a55ecb..1f0ec88 100644
--- a/operations/common/snn-mean.c
+++ b/operations/common/snn-mean.c
@@ -123,7 +123,7 @@ snn_mean (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, gegl_buffer_get_pixel_count (src) * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, NULL, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, NULL, 1.0, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   offset = 0;
 
@@ -202,8 +202,8 @@ snn_mean (GeglBuffer          *src,
           center_pix += 4;
         }
     }
-  gegl_buffer_set (dst, dst_rect, babl_format ("RGBA float"), dst_buf,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RGBA float"), dst_buf,
+                   GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/stress.c b/operations/common/stress.c
index 3583d7e..d052ab2 100644
--- a/operations/common/stress.c
+++ b/operations/common/stress.c
@@ -79,7 +79,7 @@ static void stress (GeglBuffer          *src,
   src_buf = g_new0 (gfloat, src_rect->width * src_rect->height * 4);
   dst_buf = g_new0 (gfloat, dst_rect->width * dst_rect->height * 4);
 
-  gegl_buffer_get (src, 1.0, src_rect, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (src, src_rect, 1.0, babl_format ("RGBA float"), src_buf, GEGL_AUTO_ROWSTRIDE);
 
   for (y=radius; y<dst_rect->height+radius; y++)
     {
@@ -119,7 +119,7 @@ static void stress (GeglBuffer          *src,
           dst_offset+=4;
         }
     }
-  gegl_buffer_set (dst, dst_rect, babl_format ("RGBA float"), dst_buf, GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (dst, dst_rect, 0, babl_format ("RGBA float"), dst_buf, GEGL_AUTO_ROWSTRIDE);
   g_free (src_buf);
   g_free (dst_buf);
 }
diff --git a/operations/common/stretch-contrast.c b/operations/common/stretch-contrast.c
index 38d96d3..7383885 100644
--- a/operations/common/stretch-contrast.c
+++ b/operations/common/stretch-contrast.c
@@ -61,7 +61,7 @@ buffer_get_min_max (GeglBuffer *buffer,
 
   gfloat *buf = g_new0 (gfloat, 4 * gegl_buffer_get_pixel_count (buffer));
   gint i;
-  gegl_buffer_get (buffer, 1.0, NULL, babl_format ("RGBA float"), buf, GEGL_AUTO_ROWSTRIDE);
+  gegl_buffer_get (buffer, NULL, 1.0, babl_format ("RGBA float"), buf, GEGL_AUTO_ROWSTRIDE);
   for (i=0;i< gegl_buffer_get_pixel_count (buffer);i++)
     {
       gint component;
@@ -125,10 +125,10 @@ process (GeglOperation       *operation,
         line.width = result->width;
         line.height = chunk;
 
-        gegl_buffer_get (input, 1.0, &line, babl_format ("RGBA float"), buf, GEGL_AUTO_ROWSTRIDE);
+        gegl_buffer_get (input, &line, 1.0, babl_format ("RGBA float"), buf, GEGL_AUTO_ROWSTRIDE);
         inner_process (min, max, buf, result->width  * chunk, level);
-        gegl_buffer_set (output, &line, babl_format ("RGBA float"), buf,
-                         GEGL_AUTO_ROWSTRIDE, 0);
+        gegl_buffer_set (output, &line, 0, babl_format ("RGBA float"), buf,
+                         GEGL_AUTO_ROWSTRIDE);
         consumed+=chunk;
       }
     g_free (buf);
diff --git a/operations/external/exr-load.cpp b/operations/external/exr-load.cpp
index bd28569..44364ca 100644
--- a/operations/external/exr-load.cpp
+++ b/operations/external/exr-load.cpp
@@ -236,7 +236,7 @@ fix_saturation (GeglBuffer       *buf,
   for (y=0; y<2; y++)
     {
       gegl_rectangle_set (&rect, 0,y, gegl_buffer_get_width (buf), 1);
-      gegl_buffer_get (buf, 1.0, &rect, NULL, row[y+1], GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (buf, &rect, 1.0, NULL, row[y+1], GEGL_AUTO_ROWSTRIDE);
     }
 
   fix_saturation_row (row[1], row[1], row[2], yw, gegl_buffer_get_width (buf), nc);
@@ -246,11 +246,11 @@ fix_saturation (GeglBuffer       *buf,
       if (y>1)
         {
           gegl_rectangle_set (&rect, 0, y-2, gegl_buffer_get_width (buf), 1);
-          gegl_buffer_set (buf, &rect, NULL, row[0], GEGL_AUTO_ROWSTRIDE);
+          gegl_buffer_set (buf, &rect, 0, NULL, row[0], GEGL_AUTO_ROWSTRIDE);
         }
 
       gegl_rectangle_set (&rect, 0,y+1, gegl_buffer_get_width (buf), 1);
-      gegl_buffer_get (buf, 1.0, &rect, NULL, row[0], GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (buf, &rect, 1.0, NULL, row[0], GEGL_AUTO_ROWSTRIDE);
 
       tmp = row[0];
       row[0] = row[1];
@@ -265,7 +265,7 @@ fix_saturation (GeglBuffer       *buf,
   for (y=gegl_buffer_get_height (buf)-2; y<gegl_buffer_get_height (buf); y++)
     {
       gegl_rectangle_set (&rect, 0, y, gegl_buffer_get_width (buf), 1);
-      gegl_buffer_set (buf, &rect, NULL, row[y-gegl_buffer_get_height (buf)+2], GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_set (buf, &rect, 0, NULL, row[y-gegl_buffer_get_height (buf)+2], GEGL_AUTO_ROWSTRIDE);
     }
 
   for (y=0; y<3; y++)
@@ -331,19 +331,19 @@ reconstruct_chroma (GeglBuffer *buf,
   for (i=0; i<gegl_buffer_get_height (buf); i+=2)
     {
       gegl_rectangle_set (&rect, 0, i,  gegl_buffer_get_width (buf), 1);
-      gegl_buffer_get (buf, 1.0, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (buf, &rect, 1.0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
 
       reconstruct_chroma_row (pixels, gegl_buffer_get_width (buf), has_alpha, tmp);
-      gegl_buffer_set (buf, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_set (buf, &rect, 0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
     }
 
   for (i=0; i<gegl_buffer_get_width (buf); i++)
     {
       gegl_rectangle_set (&rect, i, 0, 1, gegl_buffer_get_height (buf));
-      gegl_buffer_get (buf, 1.0, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (buf, &rect, 1.0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
 
       reconstruct_chroma_row (pixels, gegl_buffer_get_height (buf), has_alpha, tmp);
-      gegl_buffer_set (buf, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_set (buf, &rect, 0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
     }
 
   g_free (tmp);
@@ -368,7 +368,7 @@ convert_yca_to_rgba (GeglBuffer *buf,
   for (row=0; row<gegl_buffer_get_height (buf); row++)
     {
       gegl_rectangle_set (&rect, 0, row, gegl_buffer_get_width (buf), 1);
-      gegl_buffer_get (buf, 1.0, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (buf, &rect, 1.0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
       pxl = (gfloat*) pixels;
 
       for (i=0; i<gegl_buffer_get_width (buf); i++)
@@ -388,7 +388,7 @@ convert_yca_to_rgba (GeglBuffer *buf,
           pxl += dx;
         }
 
-      gegl_buffer_set (buf, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_set (buf, &rect, 0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
     }
 
   g_free (pixels);
@@ -480,7 +480,7 @@ import_exr (GeglBuffer  *gegl_buffer,
           {
             gegl_rectangle_set (&rect, 0, i-dw.min.y,gegl_buffer_get_width (gegl_buffer), 1);
             file.readPixels (i);
-            gegl_buffer_set (gegl_buffer, &rect, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
+            gegl_buffer_set (gegl_buffer, &rect, 0, NULL, pixels, GEGL_AUTO_ROWSTRIDE);
           }
       }
 
@@ -618,7 +618,8 @@ get_bounding_box (GeglOperation *operation)
 static gboolean
 process (GeglOperation       *operation,
          GeglBuffer          *output,
-         const GeglRectangle *result)
+         const GeglRectangle *result,
+         int                  level)
 {
   GeglChantO *o = GEGL_CHANT_PROPERTIES (operation);
   gint        w,h,ff;
diff --git a/operations/external/exr-save.cc b/operations/external/exr-save.cc
index f7957f2..7da9d8b 100644
--- a/operations/external/exr-save.cc
+++ b/operations/external/exr-save.cc
@@ -174,7 +174,8 @@ exr_save_process (const float       *pixels,
 static gboolean
 gegl_exr_save_process (GeglOperation       *operation,
                        GeglBuffer          *input,
-                       const GeglRectangle *rect)
+                       const GeglRectangle *rect,
+                       gint                 level)
 {
   GeglChantO *o = GEGL_CHANT_PROPERTIES (operation);
   std::string filename (o->path);
@@ -211,7 +212,7 @@ gegl_exr_save_process (GeglOperation       *operation,
         rect->width, rect->height, depth);
       return FALSE;
     }
-  gegl_buffer_get (input, 1.0, rect, babl_format (output_format.c_str ()),
+  gegl_buffer_get (input, rect, 1.0, babl_format (output_format.c_str ()),
                    pixels, GEGL_AUTO_ROWSTRIDE);
   bool status;
   try
diff --git a/operations/external/jpg-load.c b/operations/external/jpg-load.c
index 34eb811..5d11bcf 100644
--- a/operations/external/jpg-load.c
+++ b/operations/external/jpg-load.c
@@ -125,8 +125,8 @@ gegl_jpg_load_buffer_import_jpg (GeglBuffer  *gegl_buffer,
       rect.height = 1;
 
       jpeg_read_scanlines (&cinfo, buffer, 1);
-      gegl_buffer_set (gegl_buffer, &rect, babl_format ("R'G'B' u8"), buffer[0],
-                       GEGL_AUTO_ROWSTRIDE, 0);
+      gegl_buffer_set (gegl_buffer, &rect, 0, babl_format ("R'G'B' u8"), buffer[0],
+                       GEGL_AUTO_ROWSTRIDE);
     }
   jpeg_destroy_decompress (&cinfo);
   fclose (infile);
diff --git a/operations/external/pixbuf.c b/operations/external/pixbuf.c
index 18f0f19..811f952 100644
--- a/operations/external/pixbuf.c
+++ b/operations/external/pixbuf.c
@@ -75,8 +75,8 @@ process (GeglOperation       *operation,
       extent.width = gdk_pixbuf_get_width (o->pixbuf);
       extent.height = gdk_pixbuf_get_height (o->pixbuf);
 
-      gegl_buffer_set (output, &extent, NULL, gdk_pixbuf_get_pixels (o->pixbuf),
-                       GEGL_AUTO_ROWSTRIDE, 0);
+      gegl_buffer_set (output, &extent, 0, NULL, gdk_pixbuf_get_pixels (o->pixbuf),
+                       GEGL_AUTO_ROWSTRIDE);
     }
   return TRUE;
 }
diff --git a/operations/external/png-load.c b/operations/external/png-load.c
index 03a2348..38bcb12 100644
--- a/operations/external/png-load.c
+++ b/operations/external/png-load.c
@@ -228,11 +228,11 @@ gegl_buffer_import_png (GeglBuffer  *gegl_buffer,
             gegl_rectangle_set (&rect, 0, i, width, 1);
 
             if (pass != 0)
-              gegl_buffer_get (gegl_buffer, 1.0, &rect, format, pixels, GEGL_AUTO_ROWSTRIDE);
+              gegl_buffer_get (gegl_buffer, &rect, 1.0, format, pixels, GEGL_AUTO_ROWSTRIDE);
 
             png_read_rows (load_png_ptr, &pixels, NULL, 1);
-            gegl_buffer_set (gegl_buffer, &rect, format, pixels,
-                             GEGL_AUTO_ROWSTRIDE, 0);
+            gegl_buffer_set (gegl_buffer, &rect, 0, format, pixels,
+                             GEGL_AUTO_ROWSTRIDE);
           }
       }
   }
diff --git a/operations/external/png-save.c b/operations/external/png-save.c
index adbf1a4..9ea63ae 100644
--- a/operations/external/png-save.c
+++ b/operations/external/png-save.c
@@ -160,7 +160,7 @@ gegl_buffer_export_png (GeglBuffer  *gegl_buffer,
       rect.width = width;
       rect.height = 1;
 
-      gegl_buffer_get (gegl_buffer, 1.0, &rect, babl_format (format_string), pixels, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (gegl_buffer, &rect, 1.0, babl_format (format_string), pixels, GEGL_AUTO_ROWSTRIDE);
 
       png_write_rows (png, &pixels, 1);
     }
diff --git a/operations/external/ppm-load.c b/operations/external/ppm-load.c
index 31ec1b9..32c13e1 100644
--- a/operations/external/ppm-load.c
+++ b/operations/external/ppm-load.c
@@ -238,12 +238,12 @@ process (GeglOperation       *operation,
   switch (img.bpc)
     {
     case 1:
-      gegl_buffer_get (output, 1.0, &rect, babl_format ("R'G'B' u8"), img.data,
+      gegl_buffer_get (output, &rect, 1.0, babl_format ("R'G'B' u8"), img.data,
                        GEGL_AUTO_ROWSTRIDE);
       break;
 
     case 2:
-      gegl_buffer_get (output, 1.0, &rect, babl_format ("R'G'B' u16"), img.data,
+      gegl_buffer_get (output, &rect, 1.0, babl_format ("R'G'B' u16"), img.data,
                        GEGL_AUTO_ROWSTRIDE);
       break;
 
@@ -256,13 +256,13 @@ process (GeglOperation       *operation,
   switch (img.bpc)
     {
     case 1:
-      gegl_buffer_set (output, &rect, babl_format ("R'G'B' u8"), img.data,
-                       GEGL_AUTO_ROWSTRIDE, 0);
+      gegl_buffer_set (output, &rect, 0, babl_format ("R'G'B' u8"), img.data,
+                       GEGL_AUTO_ROWSTRIDE);
       break;
 
     case 2:
-      gegl_buffer_set (output, &rect, babl_format ("R'G'B' u16"), img.data,
-                       GEGL_AUTO_ROWSTRIDE, 0);
+      gegl_buffer_set (output, &rect, 0, babl_format ("R'G'B' u16"), img.data,
+                       GEGL_AUTO_ROWSTRIDE);
       break;
 
     default:
diff --git a/operations/external/ppm-save.c b/operations/external/ppm-save.c
index 2f3779b..dc947f9 100644
--- a/operations/external/ppm-save.c
+++ b/operations/external/ppm-save.c
@@ -144,12 +144,12 @@ process (GeglOperation       *operation,
   switch (bpc)
     {
     case 1:
-      gegl_buffer_get (input, 1.0, rect, babl_format ("R'G'B' u8"), data,
+      gegl_buffer_get (input, rect, 1.0, babl_format ("R'G'B' u8"), data,
                        GEGL_AUTO_ROWSTRIDE);
       break;
 
     case 2:
-      gegl_buffer_get (input, 1.0, rect, babl_format ("R'G'B' u16"), data,
+      gegl_buffer_get (input, rect, 1.0, babl_format ("R'G'B' u16"), data,
                        GEGL_AUTO_ROWSTRIDE);
       break;
 
diff --git a/operations/external/rgbe-load.c b/operations/external/rgbe-load.c
index 026525f..6803f57 100644
--- a/operations/external/rgbe-load.c
+++ b/operations/external/rgbe-load.c
@@ -96,8 +96,8 @@ gegl_rgbe_load_process (GeglOperation       *operation,
   if (!pixels)
     goto cleanup;
 
-  gegl_buffer_set (output, result, babl_format (FORMAT), pixels,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, result, 0, babl_format (FORMAT), pixels,
+                   GEGL_AUTO_ROWSTRIDE);
   success = TRUE;
 
 cleanup:
diff --git a/operations/external/rgbe-save.c b/operations/external/rgbe-save.c
index 27234d3..c4f8771 100644
--- a/operations/external/rgbe-save.c
+++ b/operations/external/rgbe-save.c
@@ -54,7 +54,7 @@ gegl_rgbe_save_process (GeglOperation       *operation,
                      sizeof (pixels[0]) *
                      babl_format_get_n_components (babl_format (FORMAT)));
 
-  gegl_buffer_get (input, 1.0, rect, babl_format (FORMAT), pixels,
+  gegl_buffer_get (input, rect, 1.0, babl_format (FORMAT), pixels,
                    GEGL_AUTO_ROWSTRIDE);
 
   if (!rgbe_save_path (o->path, rect->width, rect->height, pixels))
diff --git a/operations/external/save-pixbuf.c b/operations/external/save-pixbuf.c
index 20848e7..4653ea8 100644
--- a/operations/external/save-pixbuf.c
+++ b/operations/external/save-pixbuf.c
@@ -67,7 +67,7 @@ process (GeglOperation       *operation,
       babl = babl_format (name);
 
       temp = g_malloc (rect->width * rect->height * bps);
-      gegl_buffer_get (input, 1.0, rect, babl, temp, GEGL_AUTO_ROWSTRIDE);
+      gegl_buffer_get (input, rect, 1.0, babl, temp, GEGL_AUTO_ROWSTRIDE);
       if (temp) {
     *pixbuf = gdk_pixbuf_new_from_data (temp,
                         GDK_COLORSPACE_RGB,
diff --git a/operations/external/sdl-display.c b/operations/external/sdl-display.c
index 0b850e3..07f31a1 100644
--- a/operations/external/sdl-display.c
+++ b/operations/external/sdl-display.c
@@ -137,8 +137,8 @@ process (GeglOperation       *operation,
    */
   source = gegl_buffer_create_sub_buffer (input, result);
   gegl_buffer_get (source,
-       1.0,
        NULL,
+       1.0,
        babl_format_new (babl_model ("RGBA"),
                         babl_type ("u8"),
                         babl_component ("B"),
diff --git a/operations/external/svg-load.c b/operations/external/svg-load.c
index 933ba47..f1c2693 100644
--- a/operations/external/svg-load.c
+++ b/operations/external/svg-load.c
@@ -96,7 +96,7 @@ instead.
       rect.height = height;
 
       pixeldata = gdk_pixbuf_get_pixels (pixbuf);
-      gegl_buffer_set (gegl_buffer, &rect, babl_format ("R'G'B'A u8"), pixeldata, GEGL_AUTO_ROWSTRIDE, 0);
+      gegl_buffer_set (gegl_buffer, &rect, 0, babl_format ("R'G'B'A u8"), pixeldata, GEGL_AUTO_ROWSTRIDE);
     }
 
     rsvg_term();
diff --git a/operations/external/text.c b/operations/external/text.c
index b8d9c40..ef58884 100644
--- a/operations/external/text.c
+++ b/operations/external/text.c
@@ -189,8 +189,8 @@ process (GeglOperation       *operation,
   cairo_translate (cr, -result->x, -result->y);
   text_layout_text (self, cr, 0, NULL, NULL);
 
-  gegl_buffer_set (output, result, babl_format ("B'aG'aR'aA u8"), data,
-                   GEGL_AUTO_ROWSTRIDE, 0);
+  gegl_buffer_set (output, result, 0, babl_format ("B'aG'aR'aA u8"), data,
+                   GEGL_AUTO_ROWSTRIDE);
 
   cairo_destroy (cr);
   cairo_surface_destroy (surface);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]