Method
StImageContentset_data
Declaration [src]
gboolean
st_image_content_set_data (
StImageContent* content,
CoglContext* cogl_context,
const guint8* data,
CoglPixelFormat pixel_format,
guint width,
guint height,
guint row_stride,
GError** error
)
Description [src]
Sets the image data to be displayed by content.
If the image data was successfully loaded, the content will be invalidated.
In case of error, the error value will be set, and this function will return FALSE.
The image data is copied in texture memory.
The image data is expected to be a linear array of RGBA or RGB pixel data; how to retrieve that data is left to platform specific image loaders. For instance, if you use the GdkPixbuf library:
StImageContent *content =
st_image_content_new_with_preferred_size ();
GdkPixbuf *pixbuf = gdk_pixbuf_new_from_file (filename, NULL);
st_image_content_set_data (content,
gdk_pixbuf_get_pixels (pixbuf),
gdk_pixbuf_get_has_alpha (pixbuf)
? COGL_PIXEL_FORMAT_RGBA_8888
: COGL_PIXEL_FORMAT_RGB_888,
gdk_pixbuf_get_width (pixbuf),
gdk_pixbuf_get_height (pixbuf),
gdk_pixbuf_get_rowstride (pixbuf),
&error);
g_object_unref (pixbuf);
Parameters
cogl_context-
Type:
CoglContextThe context to use.
The data is owned by the caller of the method. data-
Type: An array of
guint8The image data, as an array of bytes.
The data is owned by the caller of the method. pixel_format-
Type:
CoglPixelFormatThe Cogl pixel format of the image data.
width-
Type:
guintThe width of the image data.
height-
Type:
guintThe height of the image data.
row_stride-
Type:
guintThe length of each row inside
data. error-
Type:
GError **The return location for a recoverable error.
The argument can be NULL.If the return location is not NULL, then you must initialize it to aNULLGError*.The argument will be left initialized to NULLby the method if there are no errors.In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.