typedef struct dict_entry_t dict_entry_t;
typedef struct dict_t dict_t;
-/* Messages */
-typedef struct msg_subscription_t msg_subscription_t;
-
/* Playlist */
/* FIXME */
/* Interface */
typedef struct intf_thread_t intf_thread_t;
typedef struct intf_sys_t intf_sys_t;
-typedef struct intf_console_t intf_console_t;
typedef struct intf_msg_t intf_msg_t;
-typedef struct interaction_t interaction_t;
-typedef struct interaction_dialog_t interaction_dialog_t;
typedef struct user_widget_t user_widget_t;
/* Input */
typedef struct counter_sample_t counter_sample_t;
typedef struct stats_handler_t stats_handler_t;
typedef struct input_stats_t input_stats_t;
-typedef struct global_stats_t global_stats_t;
/* Update */
typedef struct update_t update_t;
* these members are common for all vlc objects \
*/ \
/**@{*/ \
- int i_object_type; \
const char *psz_object_type; \
char *psz_object_name; \
\
else return a;
}
-/* Malloc with automatic error */
-#define MALLOC_VOID( var, type ) do { var = (type*)malloc( sizeof( type) ); \
- if( !var ) return; } while(0)
-#define MALLOC_NULL( var, type ) do { var = (type*)malloc( sizeof( type) ); \
- if( !var ) return NULL; } while(0)
-#define MALLOC_ERR( var, type ) do { var = (type*)malloc( sizeof( type) ); \
- if( !var ) return VLC_ENOMEM; } while(0)
-#define MALLOC_GOTOERR( var, type ) do { var = (type*)malloc( sizeof( type) ); \
- if( !var ) goto error; } while(0)
-#define DECMALLOC_VOID( var, type ) type* var = (type*)malloc( sizeof(type) );\
- if( !var ) return;
-#define DECMALLOC_ERR( var, type ) type* var = (type*)malloc( sizeof(type) );\
- if( !var ) return VLC_ENOMEM;
-#define DECMALLOC_NULL( var, type ) type* var = (type*)malloc( sizeof(type) );\
- if( !var ) return NULL;
-
+/* Free and set set the variable to NULL */
#define FREENULL(a) do { free( a ); a = NULL; } while(0)
#define EMPTY_STR(str) (!str || !*str)
#define VLC_UNUSED(x) (void)(x)
/* Stuff defined in src/extras/libc.c */
-VLC_EXPORT( size_t, vlc_strlcpy, ( char *, const char *, size_t ) );
-VLC_EXPORT( long long, vlc_strtoll, ( const char *nptr, char **endptr, int base ) LIBVLC_USED );
-
-VLC_EXPORT( char *, vlc_strcasestr, ( const char *s1, const char *s2 ) LIBVLC_USED );
-char *vlc_strsep( char **, const char * );
#if defined(WIN32) || defined(UNDER_CE)
/* win32, cl and icl support */
# ifndef alloca
# define alloca _alloca
-# endif
-
- /* These two are not defined in mingw32 (bug?) */
-# ifndef snprintf
-# define snprintf _snprintf
-# endif
-# ifndef vsnprintf
-# define vsnprintf _vsnprintf
# endif
# include <tchar.h>
VLC_EXPORT( bool, vlc_ureduce, ( unsigned *, unsigned *, uint64_t, uint64_t, uint64_t ) );
-/* vlc_wraptext (defined in src/extras/libc.c) */
-#define wraptext vlc_wraptext
-VLC_EXPORT( char *, vlc_wraptext, ( const char *, int ) LIBVLC_USED );
-
/* iconv wrappers (defined in src/extras/libc.c) */
typedef void *vlc_iconv_t;
VLC_EXPORT( vlc_iconv_t, vlc_iconv_open, ( const char *, const char * ) LIBVLC_USED );
*****************************************************************************/
VLC_EXPORT( char *, vlc_gettext, ( const char *msgid ) LIBVLC_USED );
+static inline const char *vlc_pgettext( const char *ctx, const char *id )
+{
+ const char *tr = vlc_gettext( id );
+ return (tr == ctx) ? id : tr;
+}
+
/*****************************************************************************
* libvlc features
*****************************************************************************/
VLC_EXPORT( const char *, VLC_CompileDomain, ( void ) LIBVLC_USED );
VLC_EXPORT( const char *, VLC_Compiler, ( void ) LIBVLC_USED );
VLC_EXPORT( const char *, VLC_Error, ( int ) LIBVLC_USED );
-VLC_EXPORT( const char *, VLC_Changeset, ( void ) LIBVLC_USED );
/*****************************************************************************
* Additional vlc stuff