xine-lib  1.2.10
xine_module.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2018 the xine project
3  *
4  * This file is part of xine, a free video player.
5  *
6  * xine is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation; either version 2 of the License, or
9  * (at your option) any later version.
10  *
11  * xine 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
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with this program; if not, write to the Free Software
18  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA
19  */
20 
21 #ifndef XINE_MODULE_H
22 #define XINE_MODULE_H
23 
24 #define XINE_MODULE_IFACE_VERSION 1
25 
28 
30 
31  /*
32  * create a new instance of this plugin class
33  * - may return NULL
34  */
35  xine_module_t *(*get_instance)(xine_module_class_t *, const void *params);
36 
40  const char *identifier;
41 
47  const char *description;
48 
52  const char *text_domain;
53 
54  /*
55  * free all class-related resources
56  * - optional, may be NULL
57  */
58 
60 };
61 
62 struct xine_module_s {
63 
71 
72  /*
73  * close down, free all resources
74  */
75  void (*dispose)(xine_module_t *);
76 };
77 
78 #endif /* XINE_MODULE_H_ */
xine_module_s
Definition: xine_module.h:62
xine_module_class_s::text_domain
const char * text_domain
Optional non-standard catalog to use with dgettext() for description.
Definition: xine_module.h:52
xine_module_class_s::dispose
void(* dispose)(xine_module_class_t *)
Definition: xine_module.h:59
xine_module_class_s
Definition: xine_module.h:29
xine_module_s::node
struct plugin_node_s * node
Pointer to the loaded plugin node.
Definition: xine_module.h:70
xine_module_s::dispose
void(* dispose)(xine_module_t *)
Definition: xine_module.h:75
xine_module_class_s::description
const char * description
human readable (verbose = 1 line) description for this plugin class
Definition: xine_module.h:47
xine_module_class_s::identifier
const char * identifier
short human readable identifier for this plugin class
Definition: xine_module.h:40
plugin_node_s
Definition: plugin_catalog.h:44