## Plugins

Plugins — Plugins for cache conversion.

## Functions

void | media_art_plugin_init ()
void | media_art_plugin_shutdown ()
gboolean | media_art_file_to_jpeg ()
gboolean | media_art_buffer_to_jpeg ()

## Includes

    #include <libmediaart/mediaart.h>

## Description

Plugins are provided to allow different systems to make use of existing file format conversion APIs. By default, a GdkPixbuf and Qt implementation are provided. This API allows new implementations to be provided.

## Functions

### media_art_plugin_init ()

    void
    media_art_plugin_init (gint max_width);

This function facilitates a plugin's need to create any internal caches before anything else is done. This function must exist in each plugin and is called immediately after the plugin is loaded. Conversely, `media_art_plugin_shutdown()` is called before tear down of the plugin system or plugin itself.

#### Parameters

max_width | The maximum width that an image is allowed to be |

Since: 0.1.0

### media_art_plugin_shutdown ()

    void
    media_art_plugin_shutdown (void);

This function facilitates a plugin's need to clean up any internal caches. This function must exist in each plugin and is called immediately after the plugin is loaded. Conversely, `media_art_plugin_init()` is called after the plugin is loaded.

Since: 0.1.0

### media_art_file_to_jpeg ()

    gboolean
    media_art_file_to_jpeg (const gchar *filename,
                            const gchar *target,
                            GError **error);

Save `filename` to `target` as JPEG format. The `filename` may not be a JPEG in the first place.

#### Parameters

filename | Original file name (not URI) to convert |
target | Output file name (not URI) to save converted content to |
error | A GError to use upon failure, or `NULL` |

#### Returns

`TRUE` if conversion was successful, otherwise `FALSE` is returned if `error` is set.

Since: 0.1.0

### media_art_buffer_to_jpeg ()

    gboolean
    media_art_buffer_to_jpeg (const unsigned char *buffer,
                              size_t len,
                              const gchar *buffer_mime,
                              const gchar *target,
                              GError **error);

This function performs the same operation as `media_art_file_to_jpeg()` with the exception that a raw `buffer` can be used instead providing `len` and the `buffer_mime` too.

#### Parameters

buffer | Raw buffer representing content to save. | [array length=len]
len | Length of `buffer` to use |
buffer_mime | MIME type for `buffer` |
target | Output file name (not URI) to save converted content to |
error | A GError to use upon failure, or `NULL` |

#### Returns

`TRUE` if conversion was successful, otherwise `FALSE` is returned if `error` is set.

Since: 0.1.0