From: RĂ©mi Denis-Courmont Date: Sat, 4 Aug 2007 17:42:20 +0000 (+0000) Subject: More access functions around module_t X-Git-Tag: 0.9.0-test0~6655 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=fb3ee6abab52a2a66472b3d0bcf21a7f855f963a;p=vlc More access functions around module_t --- diff --git a/include/vlc_modules.h b/include/vlc_modules.h index 38b8eee9ed..0fb00287bc 100644 --- a/include/vlc_modules.h +++ b/include/vlc_modules.h @@ -46,6 +46,7 @@ typedef shl_t module_handle_t; /** * Module descriptor */ +#ifndef __PLUGIN__ /* FIXME: scheduled for privatization */ struct module_t { @@ -96,6 +97,7 @@ struct module_t vlc_bool_t b_builtin; /* Set to true if the module is built in */ vlc_bool_t b_loaded; /* Set to true if the dll is loaded */ }; +#endif /***************************************************************************** * Exported functions. @@ -129,4 +131,7 @@ enum vlc_module_properties VLC_MODULE_NAME }; -VLC_EXPORT( vlc_bool_t, module_IsCapable, ( const module_t *, const char *cap ) ); +VLC_EXPORT( vlc_bool_t, module_IsCapable, ( const module_t *m, const char *cap ) ); +VLC_EXPORT( const char *, module_GetObjName, ( const module_t *m ) ); +VLC_EXPORT( const char *, module_GetName, ( const module_t *m, vlc_bool_t long_name ) ); + diff --git a/src/libvlc.sym b/src/libvlc.sym index ab54cb7d8d..cbf5032a95 100644 --- a/src/libvlc.sym +++ b/src/libvlc.sym @@ -178,6 +178,8 @@ __module_Exists __module_Need __module_Unneed module_IsCapable +module_GetObjName +module_GetName __msg_Dbg __msg_Err __msg_Generic diff --git a/src/modules/modules.c b/src/modules/modules.c index fdf1236833..767b537e6c 100644 --- a/src/modules/modules.c +++ b/src/modules/modules.c @@ -391,6 +391,25 @@ vlc_bool_t module_IsCapable( const module_t *m, const char *cap ) return !strcmp( m->psz_capability, cap ); } +/***************************************************************************** + * module_GetObjName: internal name of a module. + *****************************************************************************/ +const char *module_GetObjName( const module_t *m ) +{ + return m->psz_object_name; +} + +/***************************************************************************** + * module_GetName: human-friendly name of a module. + *****************************************************************************/ +const char *module_GetName(const module_t *m, vlc_bool_t long_name ) +{ + if( long_name && ( m->psz_longname != NULL) ) + return m->psz_longname; + + return m->psz_shortname ?: m->psz_object_name; +} + /***************************************************************************** * module_Need: return the best module function, given a capability list. *****************************************************************************