Function
Gimpcairo_surface_get_buffer
unstable since: 3.2
Declaration [src]
GeglBuffer*
gimp_cairo_surface_get_buffer (
cairo_surface_t* surface,
const Babl* format,
gboolean sync_back
)
Description [src]
This function returns a GeglBuffer containing surface‘s
pixels. It must only be called on image surfaces, calling it on other
surface types is an error.
If format is set, the returned buffer will use it. It has to map with surface Cairo format. If unset, the buffer format will be
determined from surface. The main difference is that automatically
determined format has sRGB space and TRC by default.
If you want the changes to the returned buffer to be synced back to
surface data, set sync_back to TRUE. If you don’t need this and
only want a copy of surface at a given time, FALSE will be less costly.
When sync_back is TRUE, gegl_buffer_freeze_changed() and
gegl_buffer_thaw_changed() may be useful to block intermediate syncing.
Available since: 3.2
Parameters
surface-
Type:
cairo_surface_tA Cairo surface.
The data is owned by the caller of the function. format-
Type:
BablA Babl format.
The data is owned by the caller of the function. sync_back-
Type:
gbooleanWhether changes on the returned buffer should be synced back to
surface.
Return value
Type: GeglBuffer
A GeglBuffer.
| The caller of the function takes ownership of the data, and is responsible for freeing it. |