Buffer
Object Hierarchy:
Gegl.Buffer
Gegl.Buffer
Gegl.Buffer
Gegl.TileHandler
Gegl.TileHandler
Gegl.TileHandler->Gegl.Buffer
Gegl.TileSource
Gegl.TileSource
Gegl.TileSource->Gegl.TileHandler
GLib.Object
GLib.Object
GLib.Object->Gegl.TileSource
Description:
[
CCode ( type_id =
"gegl_buffer_get_type ()" ) ]
public class Buffer :
TileHandler
Content:
Properties:
public int abyss_height { get ; construct ; }
public int abyss_width { get ; construct ; }
public int abyss_x { get ; construct ; }
public int abyss_y { get ; construct ; }
public TileBackend backend { owned get ; construct ; }
public void * format { get ; set construct ; }
public int height { get ; set construct ; }
public string path { owned get ; construct ; }
public int pixels { get ; }
public int px_size { get ; }
public int shift_x { get ; construct ; }
public int shift_y { get ; construct ; }
public int tile_height { get ; construct ; }
public int tile_width { get ; construct ; }
public int width { get ; set construct ; }
public int x { get ; set construct ; }
public int y { get ; set construct ; }
Static methods:
public static Buffer load (string path)
Loads an existing GeglBuffer from disk, if it has previously been
saved with gegl_buffer_save it should be possible to open through any GIO transport, buffers that have been used as swap needs random
access to be opened.
public static Buffer open (string path)
Open an existing on-disk GeglBuffer, this buffer is opened in a
monitored state so multiple instances of gegl can share the same buffer.
Creation methods:
protected Buffer ()
Create a new GeglBuffer of a given format with a given extent.
public Buffer.for_backend (Rectangle extent, TileBackend backend)
Create a new GeglBuffer from a backend, if NULL is passed in the
extent of the buffer will be inherited from the extent of the backend.
public Buffer.introspectable_new (string format_name, int x, int y, int width, int height)
Create a new GeglBuffer with the given format and dimensions.
Methods:
public void add_handler (void * handler)
Add a new tile handler in the existing chain of tile handler of a
GeglBuffer.
public void clear (Rectangle roi)
Clears the provided rectangular region by setting all the associated
memory to 0.
public void copy (Rectangle src_rect, AbyssPolicy repeat_mode, Buffer dst, Rectangle dst_rect)
Copy a region from source buffer to destination buffer.
public Buffer create_sub_buffer (Rectangle extent)
Create a new sub GeglBuffer, that is a view on a larger buffer.
public Buffer dup ()
Duplicate a buffer (internally uses gegl_buffer_copy).
public void flush ()
Flushes all unsaved data to disk, this is not necessary for shared
geglbuffers opened with gegl_buffer_open since they auto-sync on writes.
public unowned Rectangle get_abyss ()
Return the abyss extent of a buffer, this expands out to the parents
extent in subbuffers.
public unowned Rectangle get_extent ()
Returns a pointer to a GeglRectangle structure defining the geometry
of a specific GeglBuffer, this is also the default width/height of buffers passed in to gegl_buffer_set and gegl_buffer_get (with a
scale of 1.0 at least).
public uint8 [] introspectable_get (Rectangle rect, double scale, string ? format_name, AbyssPolicy repeat_mode)
Fetch a rectangular linear buffer of pixel data from the GeglBuffer.
public void introspectable_set (Rectangle rect, string format_name, uint8 [] src)
Store a linear raster buffer into the GeglBuffer.
public void linear_close (void * linear)
This function makes sure GeglBuffer and underlying code is aware of
changes being made to the linear buffer.
public void remove_handler (void * handler)
Remove the provided tile handler in the existing chain of tile handler
of a GeglBuffer.
public void sample_cleanup ()
Clean up resources used by sampling framework of buffer (will be freed
automatically later when the buffer is destroyed, for long lived buffers cleaning up the sampling infrastructure when it has been
used for its purpose will sometimes be more efficient).
public void save (string path, Rectangle roi)
Write a GeglBuffer to a file.
public bool set_abyss (Rectangle abyss)
Changes the size and position of the abyss rectangle of a buffer.
public void set_color (Rectangle rect, Color color)
Sets the region covered by rect to the specified color.
public bool set_extent (Rectangle extent)
Changes the size and position that is considered active in a buffer,
this operation is valid on any buffer, reads on subbuffers outside the master buffer's extent are at the moment undefined.
public void set_pattern (Rectangle rect, Buffer pattern, int x_offset, int y_offset)
Fill a region with a repeating pattern.
public long signal_connect (string detailed_signal, Callback c_handler)
This function should be used instead of g_signal_connect when
connecting to the GeglBuffer:GeglBuffer:changed
signal handler, GeglBuffer contains additional machinery to avoid the
overhead of changes when no signal handler have been connected, if regular g_signal_connect is used; then no signals will be emitted.
Signals:
Inherited Members:
All known members inherited from class Gegl.TileHandler
All known members inherited from class Gegl.TileSource
All known members inherited from class GLib.Object
@get
@new
@ref
@set
add_toggle_ref
add_weak_pointer
bind_property
connect
constructed
disconnect
dispose
dup_data
dup_qdata
force_floating
freeze_notify
get_class
get_data
get_property
get_qdata
get_type
getv
interface_find_property
interface_install_property
interface_list_properties
is_floating
new_valist
new_with_properties
newv
notify
notify_property
ref_count
ref_sink
remove_toggle_ref
remove_weak_pointer
replace_data
replace_qdata
set_data
set_data_full
set_property
set_qdata
set_qdata_full
set_valist
setv
steal_data
steal_qdata
thaw_notify
unref
watch_closure
weak_ref
weak_unref