XMMS2
xmms_plugin.h
Go to the documentation of this file.
1 /* XMMS2 - X Music Multiplexer System
2  * Copyright (C) 2003-2011 XMMS2 Team
3  *
4  * PLUGINS ARE NOT CONSIDERED TO BE DERIVED WORK !!!
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Lesser General Public License for more details.
15  */
16 
17 
18 
19 
20 #ifndef __XMMS_PLUGIN_H__
21 #define __XMMS_PLUGIN_H__
22 
23 #include <glib.h>
24 #include <xmmsc/xmmsc_idnumbers.h>
25 #include "xmms_configuration.h"
26 
27 #define XMMS_PLUGIN_SHORTNAME_MAX_LEN 32
28 
29 G_BEGIN_DECLS
30 
31 typedef struct xmms_plugin_desc_St {
35  const gchar *name;
36  const gchar *version;
37  const gchar *description;
38  gboolean (*setup_func)(gpointer);
40 
41 #define XMMS_PLUGIN(type, api_ver, shname, name, ver, desc, setupfunc) \
42  xmms_plugin_desc_t XMMS_PLUGIN_DESC = { \
43  type, \
44  api_ver, \
45  shname, \
46  name, \
47  ver, \
48  desc, \
49  setupfunc \
50  };
51 
52 G_END_DECLS
53 
54 #endif /* __XMMS_PLUGIN_H__ */
xmms_plugin_type_t type
Definition: xmms_plugin.h:32
xmms_plugin_type_t
const gchar * description
Definition: xmms_plugin.h:37
G_BEGIN_DECLS struct xmms_plugin_desc_St xmms_plugin_desc_t
#define XMMS_PLUGIN_SHORTNAME_MAX_LEN
Definition: xmms_plugin.h:27
const gchar * name
Definition: xmms_plugin.h:35
const gchar * version
Definition: xmms_plugin.h:36
gboolean(* setup_func)(gpointer)
Definition: xmms_plugin.h:38
gchar shortname[XMMS_PLUGIN_SHORTNAME_MAX_LEN]
Definition: xmms_plugin.h:34