blob: 5f8065eb656b6b313bf9109f41c4d59b3594f6d1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
/*
* xine_input_vdr.h:
*
* See the main source file 'xineliboutput.c' for copyright information and
* how to reach the author.
*
* $Id: xine_input_vdr.h,v 1.9 2008-11-12 00:42:48 phintuka Exp $
*
*/
#ifndef __XINE_INPUT_VDR_H_
#define __XINE_INPUT_VDR_H_
#if defined __cplusplus
extern "C" {
#endif
#include <xine/input_plugin.h>
#include "xine_input_vdr_mrl.h"
struct input_plugin_s;
struct vdr_input_plugin_if_s;
struct osd_command_s;
struct frontend_s;
typedef struct vdr_input_plugin_funcs_s {
/* VDR --> input plugin (only local mode) */
int (*push_input_write) (struct vdr_input_plugin_if_s *, const char *, int);
int (*push_input_control)(struct vdr_input_plugin_if_s *, const char *);
int (*push_input_osd) (struct vdr_input_plugin_if_s *, struct osd_command_s *);
/* input plugin --> frontend (only local mode) */
void (*xine_input_event) (const char *, const char *);
/* input plugin --> frontend (remote mode) */
int (*intercept_osd) (struct frontend_s *, struct osd_command_s *);
/* input plugin --> frontend */
void *(*fe_control) (struct frontend_s *, const char *);
struct frontend_s *fe_handle;
/* frontend --> input plugin (remote mode) */
int (*input_control) (struct vdr_input_plugin_if_s *, const char *, const char *, int, int);
} vdr_input_plugin_funcs_t;
typedef struct vdr_input_plugin_if_s {
input_plugin_t input_plugin;
vdr_input_plugin_funcs_t f;
} vdr_input_plugin_if_t;
#define CONTROL_OK 0
#define CONTROL_UNKNOWN -1
#define CONTROL_PARAM_ERROR -2
#define CONTROL_DISCONNECTED -3
typedef struct grab_data_s {
size_t size;
char *data;
} grab_data_t;
#if defined __cplusplus
}
#endif
#endif /*__XINE_INPUT_VDR_H_*/
|