XMMS2
Data Structures | Macros | Typedefs | Enumerations | Functions
xmms_xformplugin.h File Reference
#include <xmmsc/xmmsc_compiler.h>
#include <glib.h>
#include <string.h>
#include <xmms/xmms_error.h>
#include <xmms/xmms_plugin.h>
#include <xmms/xmms_sample.h>
#include <xmms/xmms_streamtype.h>
#include <xmms/xmms_config.h>
#include <xmms/xmms_medialib.h>

Data Structures

struct  xmms_xform_metadata_basic_mapping_St
 Mapping between format specific and internal metadata naming. More...
 
struct  xmms_xform_metadata_mapping_St
 
struct  xmms_xform_methods_St
 Methods provided by an xform plugin. More...
 

Macros

#define XMMS_XFORM_API_VERSION   7
 
#define XMMS_XFORM_PLUGIN_DEFINE(shname, name, ver, desc, setupfunc)   XMMS_PLUGIN_DEFINE(XMMS_PLUGIN_TYPE_XFORM, XMMS_XFORM_API_VERSION, shname, name, ver, desc, (gboolean (*)(gpointer))setupfunc)
 Declare an xform plugin. More...
 
#define XMMS_XFORM_METHODS_INIT(m)   memset (&m, 0, sizeof (xmms_xform_methods_t))
 
#define xmms_xform_auxdata_get_int   xmms_xform_auxdata_get_int32
 
#define XMMS_XFORM_BROWSE_FLAG_DIR   (1 << 0)
 
#define XMMS_XFORM_MAX_LINE_SIZE   1024
 

Typedefs

typedef struct xmms_xform_plugin_St xmms_xform_plugin_t
 Xform plugin. More...
 
typedef struct xmms_xform_St xmms_xform_t
 
typedef struct
xmms_xform_metadata_basic_mapping_St 
xmms_xform_metadata_basic_mapping_t
 Mapping between format specific and internal metadata naming. More...
 
typedef gboolean(* xmms_xform_metadata_mapper_func_t )(xmms_xform_t *xform, const gchar *key, const gchar *value, gsize length)
 Mapping function that recieves a metadata key and value pair. More...
 
typedef struct
xmms_xform_metadata_mapping_St 
xmms_xform_metadata_mapping_t
 
typedef enum xmms_xform_seek_mode_E xmms_xform_seek_mode_t
 Seek direction argument. More...
 
typedef struct
xmms_xform_methods_St 
xmms_xform_methods_t
 Methods provided by an xform plugin. More...
 

Enumerations

enum  xmms_xform_seek_mode_E { XMMS_XFORM_SEEK_CUR = 1, XMMS_XFORM_SEEK_SET = 2, XMMS_XFORM_SEEK_END = 3 }
 Seek direction argument. More...
 

Functions

void xmms_xform_plugin_methods_set (xmms_xform_plugin_t *plugin, xmms_xform_methods_t *methods)
 Should be called once from the plugin's setupfunc. More...
 
void xmms_xform_plugin_metadata_basic_mapper_init (xmms_xform_plugin_t *xform_plugin, const xmms_xform_metadata_basic_mapping_t *mappings, gint count)
 Configure automatic metadata mapping. More...
 
void xmms_xform_plugin_metadata_mapper_init (xmms_xform_plugin_t *xform_plugin, const xmms_xform_metadata_basic_mapping_t *basic_mappings, gint basic_count, const xmms_xform_metadata_mapping_t *mappings, gint count)
 Configure automatic metadata mapping. More...
 
void xmms_xform_plugin_indata_add (xmms_xform_plugin_t *plugin,...)
 Add a valid input type to the plugin. More...
 
void xmms_xform_plugin_set_out_stream_type (xmms_xform_plugin_t *plugin,...)
 Set a static output type to the plugin. More...
 
gpointer xmms_xform_private_data_get (xmms_xform_t *xform)
 Get private data for this xform. More...
 
void xmms_xform_private_data_set (xmms_xform_t *xform, gpointer data)
 Set private data for this xform. More...
 
void xmms_xform_outdata_type_add (xmms_xform_t *xform,...)
 
void xmms_xform_outdata_type_copy (xmms_xform_t *xform)
 
gboolean xmms_xform_metadata_set_int (xmms_xform_t *xform, const gchar *key, int val)
 Set numeric metadata for the media transformed by this xform. More...
 
gboolean xmms_xform_metadata_set_str (xmms_xform_t *xform, const gchar *key, const char *val)
 Set string metadata for the media transformed by this xform. More...
 
gboolean xmms_xform_metadata_has_val (xmms_xform_t *xform, const gchar *key)
 
gboolean xmms_xform_metadata_get_int (xmms_xform_t *xform, const gchar *key, gint *val)
 
gboolean xmms_xform_metadata_get_str (xmms_xform_t *xform, const gchar *key, const gchar **val)
 
gboolean xmms_xform_metadata_parse_number (xmms_xform_t *xform, const gchar *key, const gchar *value, gsize length)
 Set numeric metadata for the media by parsing a string value. More...
 
gboolean xmms_xform_metadata_parse_compilation (xmms_xform_t *xform, const gchar *key, const gchar *value, gsize length)
 Set compliation status by performing a number of probes on a value. More...
 
gboolean xmms_xform_metadata_parse_replay_gain (xmms_xform_t *xform, const gchar *key, const gchar *value, gsize length)
 Set string metadata represesting replay gain for the media by parsing a string value. More...
 
gboolean xmms_xform_metadata_mapper_match (xmms_xform_t *xform, const gchar *key, const gchar *value, gsize length)
 Attempt to automatically set a metadata property. More...
 
void xmms_xform_auxdata_barrier (xmms_xform_t *xform)
 
void xmms_xform_auxdata_set_int (xmms_xform_t *xform, const gchar *key, gint64 val)
 
void xmms_xform_auxdata_set_str (xmms_xform_t *xform, const gchar *key, const gchar *val)
 
void xmms_xform_auxdata_set_bin (xmms_xform_t *xform, const gchar *key, gpointer data, gssize len)
 
gboolean xmms_xform_auxdata_has_val (xmms_xform_t *xform, const gchar *key)
 
gboolean xmms_xform_auxdata_get_int32 (xmms_xform_t *xform, const gchar *key, gint32 *val)
 
gboolean xmms_xform_auxdata_get_int64 (xmms_xform_t *xform, const gchar *key, gint64 *val)
 
gboolean xmms_xform_auxdata_get_str (xmms_xform_t *xform, const gchar *key, const gchar **val)
 
gboolean xmms_xform_auxdata_get_bin (xmms_xform_t *xform, const gchar *key, const guchar **data, gsize *datalen)
 
const char * xmms_xform_indata_get_str (xmms_xform_t *xform, xmms_stream_type_key_t key)
 
gint xmms_xform_indata_get_int (xmms_xform_t *xform, xmms_stream_type_key_t key)
 
gint xmms_xform_peek (xmms_xform_t *xform, gpointer buf, gint siz, xmms_error_t *err)
 Preview data from previous xform. More...
 
gchar * xmms_xform_read_line (xmms_xform_t *xform, gchar *buf, xmms_error_t *err)
 Read one line from previous xform. More...
 
gint xmms_xform_read (xmms_xform_t *xform, gpointer buf, gint siz, xmms_error_t *err)
 Read data from previous xform. More...
 
gint64 xmms_xform_seek (xmms_xform_t *xform, gint64 offset, xmms_xform_seek_mode_t whence, xmms_error_t *err)
 Change offset in stream. More...
 
gboolean xmms_xform_iseos (xmms_xform_t *xform)
 
gboolean xmms_magic_add (const gchar *desc, const gchar *mime,...)
 
gboolean xmms_magic_extension_add (const gchar *mime, const gchar *ext)
 
xmms_config_property_txmms_xform_plugin_config_property_register (xmms_xform_plugin_t *xform_plugin, const gchar *name, const gchar *default_value, xmms_object_handler_t cb, gpointer userdata)
 
xmms_config_property_txmms_xform_plugin_config_lookup (xmms_xform_plugin_t *xform_plugin, const gchar *path)
 
xmms_config_property_txmms_xform_config_lookup (xmms_xform_t *xform, const gchar *path)
 
xmms_medialib_entry_t xmms_xform_entry_get (xmms_xform_t *xform)
 Get the medialib entry played by this xform. More...
 
const gchar * xmms_xform_get_url (xmms_xform_t *xform)
 
void xmms_xform_browse_add_entry (xmms_xform_t *xform, const gchar *path, guint32 flags)
 
void xmms_xform_browse_add_entry_property (xmms_xform_t *xform, const gchar *key, xmmsv_t *val)
 
void xmms_xform_browse_add_entry_property_str (xmms_xform_t *xform, const gchar *key, const gchar *value)
 
void xmms_xform_browse_add_entry_property_int (xmms_xform_t *xform, const gchar *key, gint value)
 
void xmms_xform_browse_add_symlink (xmms_xform_t *xform, const gchar *basename, const gchar *url)
 
void xmms_xform_browse_add_symlink_args (xmms_xform_t *xform, const gchar *basename, const gchar *url, gint nargs, char **args)