xine-lib  1.2.9
real_common.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2000-2009 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  * Common function for the thin layer to use Real binary-only codecs in xine
21  */
22 
23 #ifndef __REAL_COMMON_H__
24 #define __REAL_COMMON_H__
25 
26 #include <xine/xine_internal.h>
27 
28 /*
29  * some fake functions to make real codecs happy
30  * These are, on current date (20070316) needed only for Alpha
31  * codecs.
32  * As they are far from being proper replacements, define them only there
33  * until new codecs are available there too.
34  */
35 #ifdef __alpha__
36 
37 void *__builtin_new(size_t size);
38 void __builtin_delete (void *foo);
39 void *__builtin_vec_new(size_t size) EXPORTED;
40 void __builtin_vec_delete(void *mem) EXPORTED;
41 void __pure_virtual(void) EXPORTED;
42 
43 #endif
44 
45 #ifndef HAVE___ENVIRON
46 # ifdef HAVE__ENVIRON
47  char **__environ __attribute__((weak, alias("_environ")));
48 # elif defined(HAVE_ENVIRON)
49  char **__environ __attribute__((weak, alias("environ")));
50 # else
51  char **fake__environ = { NULL };
52  char **__environ __attribute__((weak, alias("fake__environ")));
53 # endif
54 #endif
55 
56 #ifndef HAVE_STDERR
57 # ifdef HAVE___STDERRP
58 # undef stderr
59 FILE *stderr __attribute__((weak, alias("__stderrp")));
60 # else
61 # error Your stderr alias is not supported, please report to xine developers.
62 # endif
63 #endif
64 
65 #ifndef HAVE____BRK_ADDR
66 void ___brk_addr(void) EXPORTED;
67 #endif
68 
69 #ifndef HAVE___CTYPE_B
70 void __ctype_b(void) EXPORTED;
71 #endif
72 
73 void _x_real_codecs_init(xine_t *const xine);
74 void *_x_real_codec_open(xine_stream_t *const stream, const char *const path,
75  const char *const codec_name,
76  const char *const codec_alternate);
77 
79 void *init_realvdec (xine_t *xine, void *data);
80 
82 void *init_realadec (xine_t *xine, void *data);
83 
84 #endif
void ___brk_addr(void) EXPORTED
Definition: real_common.c:64
void * _x_real_codec_open(xine_stream_t *const stream, const char *const path, const char *const codec_name, const char *const codec_alternate)
Definition: real_common.c:158
void * init_realvdec(xine_t *xine, void *data)
Definition: xine_real_video_decoder.c:538
NULL
Definition: xine_plugin.c:91
void __ctype_b(void) EXPORTED
Definition: real_common.c:68
const decoder_info_t dec_info_realaudio
Definition: real_common.h:81
Definition: xine_internal.h:210
#define EXPORTED
Definition: configure.h:68
Definition: xine_plugin.h:74
void * init_realadec(xine_t *xine, void *data)
Definition: xine_real_audio_decoder.c:510
Definition: xine_internal.h:81
char ** fake__environ
Definition: real_common.h:51
char **__environ __attribute__((weak, alias("fake__environ")))
const decoder_info_t dec_info_realvideo
Definition: real_common.h:78
void _x_real_codecs_init(xine_t *const xine)
Definition: real_common.c:71