Clutter.Image.set_data

### Method

# Clutter Imageset_data

#### Declaration [src]

    gboolean
    clutter_image_set_data (
      ClutterImage* image,
      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 `image`.

If the image data was successfully loaded, the `image` 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:

      ClutterContent *image = clutter_image_new ();

      GdkPixbuf *pixbuf = gdk_pixbuf_new_from_file (filename, NULL);

      clutter_image_set_data (CLUTTER_IMAGE (image),
                              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

`data` | An array of `guint8`
| The image data, as an array of bytes.
| The data is owned by the caller of the function.
`pixel_format` | `CoglPixelFormat`
| The Cogl pixel format of the image data.
`width` | `guint`
| The width of the image data.
`height` | `guint`
| The height of the image data.
`row_stride` | `guint`
| The length of each row inside `data`.
`error` | `GError **`
| The return location for a `GError*`, or `NULL`.

#### Return value

Returns: | `gboolean`
| `TRUE` if the image data was successfully loaded, and `FALSE` otherwise.