X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=include%2Fvlc_common.h;h=abecaea0092f23685e52423533581ea0f53260c1;hb=5e3678278662d5acd1557b98f224e15bdcb7fecc;hp=158122b282d98c316d5351f9a80dcd5a67bbb28b;hpb=2c1edcf1f486e4f968e8fa499508c4b7b620e12e;p=vlc diff --git a/include/vlc_common.h b/include/vlc_common.h index 158122b282..abecaea009 100644 --- a/include/vlc_common.h +++ b/include/vlc_common.h @@ -378,7 +378,10 @@ typedef struct httpd_message_t httpd_message_t; typedef int (*httpd_callback_t)( httpd_callback_sys_t *, httpd_client_t *, httpd_message_t *answer, httpd_message_t *query ); typedef struct httpd_file_t httpd_file_t; typedef struct httpd_file_sys_t httpd_file_sys_t; -typedef int (*httpd_file_callback_t)( httpd_file_sys_t*, httpd_file_t *, uint8_t *psz_request, uint8_t **pp_data, int *pi_data ); +typedef int (*httpd_file_callback_t)( httpd_file_sys_t *, httpd_file_t *, uint8_t *psz_request, uint8_t **pp_data, int *pi_data ); +typedef struct httpd_handler_t httpd_handler_t; +typedef struct httpd_handler_sys_t httpd_handler_sys_t; +typedef int (*httpd_handler_callback_t)( httpd_handler_sys_t *, httpd_handler_t *, uint8_t *psz_url, uint8_t *psz_request, int i_type, uint8_t *p_in, int i_in, char *psz_remote_addr, char *psz_remote_host, uint8_t **pp_data, int *pi_data ); typedef struct httpd_redirect_t httpd_redirect_t; typedef struct httpd_stream_t httpd_stream_t; @@ -405,6 +408,13 @@ typedef struct vod_media_t vod_media_t; typedef struct opengl_t opengl_t; typedef struct opengl_sys_t opengl_sys_t; +/* osdmenu */ +typedef struct osd_menu_t osd_menu_t; +typedef struct osd_state_t osd_state_t; +typedef struct osd_event_t osd_event_t; +typedef struct osd_button_t osd_button_t; +typedef struct osd_menu_state_t osd_menu_state_t; + /* VLM */ typedef struct vlm_t vlm_t; typedef struct vlm_message_t vlm_message_t; @@ -536,7 +546,7 @@ static int64_t GCD( int64_t a, int64_t b ) } /* Dynamic array handling: realloc array, move data, increment position */ -#if defined( _MSC_VER ) && _MSC_VER < 1300 +#if defined( _MSC_VER ) && _MSC_VER < 1300 && !defined( UNDER_CE ) # define VLCCVP (void**) /* Work-around for broken compiler */ #else # define VLCCVP @@ -838,6 +848,17 @@ static inline void _SetQWBE( uint8_t *p, uint64_t i_qw ) # define vlc_strtoll NULL #endif +#ifndef HAVE_SCANDIR +# define scandir vlc_scandir +# define alphasort vlc_alphasort + struct dirent; + VLC_EXPORT( int, vlc_scandir, ( const char *name, struct dirent ***namelist, int (*filter) ( const struct dirent * ), int (*compar) ( const struct dirent **, const struct dirent ** ) ) ); + VLC_EXPORT( int, vlc_alphasort, ( const struct dirent **a, const struct dirent **b ) ); +#elif !defined(__PLUGIN__) +# define vlc_scandir NULL +# define vlc_alphasort NULL +#endif + #ifndef HAVE_GETENV # define getenv vlc_getenv VLC_EXPORT( char *, vlc_getenv, ( const char *name ) ); @@ -905,12 +926,19 @@ static inline void _SetQWBE( uint8_t *p, uint64_t i_qw ) VLC_EXPORT( void *, vlc_opendir, ( const char * ) ); VLC_EXPORT( void *, vlc_readdir, ( void * ) ); VLC_EXPORT( int, vlc_closedir, ( void * ) ); -#elif !defined(__PLUGIN__) -# define vlc_opendir NULL -# define vlc_readdir NULL -# define vlc_closedir NULL +#else + struct dirent; /* forward declaration for vlc_symbols.h */ +# if !defined(__PLUGIN__) +# define vlc_opendir NULL +# define vlc_readdir NULL +# define vlc_closedir NULL +# endif #endif + VLC_EXPORT( void *, vlc_opendir_wrapper, ( const char * ) ); + VLC_EXPORT( struct dirent *, vlc_readdir_wrapper, ( void * ) ); + VLC_EXPORT( int, vlc_closedir_wrapper, ( void * ) ); + /* Format type specifiers for 64 bits numbers */ #if defined(__CYGWIN32__) || (!defined(WIN32) && !defined(UNDER_CE)) # if defined(__WORDSIZE) && __WORDSIZE == 64 @@ -966,8 +994,8 @@ static inline void _SetQWBE( uint8_t *p, uint64_t i_qw ) /* several type definitions */ # if defined( __MINGW32__ ) # if !defined( _OFF_T_ ) -typedef long long _off_t; -typedef _off_t off_t; + typedef long long _off_t; + typedef _off_t off_t; # define _OFF_T_ # else # ifdef off_t @@ -977,17 +1005,15 @@ typedef _off_t off_t; # endif # endif -/* -# if (defined( _MSC_VER ) && (!defined(__WXMSW__))) +# if defined( _MSC_VER ) && !defined( __WXMSW__ ) # if !defined( _OFF_T_DEFINED ) -typedef __int64 off_t; + typedef __int64 off_t; # define _OFF_T_DEFINED # else + /* for wx compatibility typedef long off_t; */ # define off_t __int64 - // for wx compatibility typedef long off_t; # endif # endif -*/ # if defined( __BORLANDC__ ) # undef off_t @@ -1026,6 +1052,10 @@ VLC_EXPORT( vlc_iconv_t, vlc_iconv_open, ( const char *, const char * ) ); VLC_EXPORT( size_t, vlc_iconv, ( vlc_iconv_t, char **, size_t *, char **, size_t * ) ); VLC_EXPORT( int, vlc_iconv_close, ( vlc_iconv_t ) ); +/* execve wrapper (defined in src/extras/libc.c) */ +VLC_EXPORT( int, __vlc_execve, ( vlc_object_t *p_object, int i_argc, char **pp_argv, char **pp_env, char *psz_cwd, char *p_in, int i_in, char **pp_data, int *pi_data ) ); +#define vlc_execve(a,b,c,d,e,f,g,h,i) __vlc_execve(VLC_OBJECT(a),b,c,d,e,f,g,h,i) + /***************************************************************************** * CPU capabilities *****************************************************************************/ @@ -1065,6 +1095,17 @@ VLC_EXPORT( char *, vlc_dgettext, ( const char *package, const char *msgid ) ); # define N_(String) ((char*)(String)) #endif +/***************************************************************************** + * libvlc features + *****************************************************************************/ +VLC_EXPORT( const char *, VLC_Version, ( void ) ); +VLC_EXPORT( const char *, VLC_CompileBy, ( void ) ); +VLC_EXPORT( const char *, VLC_CompileHost, ( void ) ); +VLC_EXPORT( const char *, VLC_CompileDomain, ( void ) ); +VLC_EXPORT( const char *, VLC_Compiler, ( void ) ); +VLC_EXPORT( const char *, VLC_Changeset, ( void ) ); +VLC_EXPORT( const char *, VLC_Error, ( int ) ); + /***************************************************************************** * Additional vlc stuff *****************************************************************************/