### Method

# GUPnP DeviceInfo get_icon_url

#### Declaration [src]

    char*
    gupnp_device_info_get_icon_url (
      GUPnPDeviceInfo* info,
      const char* requested_mime_type,
      int requested_depth,
      int requested_width,
      int requested_height,
      gboolean prefer_bigger,
      char** mime_type,
      int* depth,
      int* width,
      int* height
    )

#### Description [src]

Get an URL pointing to the icon most closely matching the given criteria, or `NULL`.

If `requested_mime_type` is set, only icons with this mime type will be returned. If `requested_depth` is set, only icons with this or lower depth will be returned. If `requested_width` and/or `requested_height` are set, only icons that are this size or smaller are returned, unless `prefer_bigger` is set, in which case the next biggest icon will be returned. The returned strings should be freed.

#### Parameters

`requested_mime_type` | `const char*`
| The requested file format, or `NULL` for any.
| The argument can be `NULL`.
| The data is owned by the caller of the function.
| The value is a NUL terminated UTF-8 string.
`requested_depth` | `int`
| The requested color depth, or -1 for any.
`requested_width` | `int`
| The requested width, or -1 for any.
`requested_height` | `int`
| The requested height, or -1 for any.
`prefer_bigger` | `gboolean`
| `TRUE` if a bigger, rather than a smaller icon should be returned if no exact match could be found.
`mime_type` | `char**`
| The location where to store the the format of the returned icon, or `NULL`. The returned string should be freed after use.
| The argument will be set by the function.
| The argument can be `NULL`.
| The instance takes ownership of the data, and is responsible for freeing it.
| The value is a NUL terminated UTF-8 string.
`depth` | `int*`
| The location where to store the depth of the returned icon, or `NULL`.
| The argument will be set by the function.
| The argument can be `NULL`.
`width` | `int*`
| The location where to store the width of the returned icon, or `NULL`.
| The argument will be set by the function.
| The argument can be `NULL`.
`height` | `int*`
| The location where to store the height of the returned icon, or `NULL`.
| The argument will be set by the function.
| The argument can be `NULL`.

#### Return value

Returns: | `char*`
| A string, or `NULL`. `g_free()` after use.
| The caller of the method takes ownership of the data, and is responsible for freeing it.
| The return value can be `NULL`.
| The value is a NUL terminated UTF-8 string.