00001 /* XMMS2 - X Music Multiplexer System 00002 * Copyright (C) 2003-2008 XMMS2 Team 00003 * 00004 * PLUGINS ARE NOT CONSIDERED TO BE DERIVED WORK !!! 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Lesser General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2.1 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Lesser General Public License for more details. 00015 */ 00016 00017 #ifndef __XMMS_CONFIG_H__ 00018 #define __XMMS_CONFIG_H__ 00019 00020 #include <glib.h> 00021 #include "xmms/xmms_object.h" 00022 00023 G_BEGIN_DECLS 00024 00025 typedef struct xmms_config_St xmms_config_t; 00026 typedef struct xmms_config_property_St xmms_config_property_t; 00027 00028 xmms_config_property_t *xmms_config_lookup (const gchar *path); 00029 00030 const gchar *xmms_config_property_get_string (const xmms_config_property_t *prop); 00031 gint xmms_config_property_get_int (const xmms_config_property_t *prop); 00032 gfloat xmms_config_property_get_float (const xmms_config_property_t *prop); 00033 const gchar *xmms_config_property_get_name (const xmms_config_property_t *prop); 00034 00035 xmms_config_property_t *xmms_config_property_register (const gchar *path, const gchar *default_value, xmms_object_handler_t cb, gpointer userdata); 00036 00037 void xmms_config_property_set_data (xmms_config_property_t *prop, const gchar *data); 00038 00039 void xmms_config_property_callback_set (xmms_config_property_t *prop, xmms_object_handler_t cb, gpointer userdata); 00040 void xmms_config_property_callback_remove (xmms_config_property_t *prop, xmms_object_handler_t cb, gpointer userdata); 00041 00042 G_END_DECLS 00043 00044 #endif