VLC_EXPORT( module_t *, __module_Need, ( vlc_object_t *, const char *, const char *, vlc_bool_t ) );
#define module_Unneed(a,b) __module_Unneed(VLC_OBJECT(a),b)
VLC_EXPORT( void, __module_Unneed, ( vlc_object_t *, module_t * ) );
+#define module_Exist(a,b) __module_Exists(VLC_OBJECT(a),b)
+VLC_EXPORT( vlc_bool_t, __module_Exists, ( vlc_object_t *, const char * ) );
return;
}
+/*****************************************************************************
+ * module_Exists: tell if a module exists.
+ *****************************************************************************
+ * This function is a boolean function that tells if a module exist or not.
+ *****************************************************************************/
+
+vlc_bool_t __module_Exists( vlc_object_t *p_this, const char * psz_name )
+{
+ vlc_list_t *p_list;
+ int i;
+ p_list = vlc_list_find( p_this, VLC_OBJECT_MODULE, FIND_ANYWHERE );
+ for( i = 0 ; i < p_list->i_count; i++)
+ {
+ if (!strcmp(
+ ((module_t *) p_list->p_values[i].p_object)->psz_shortname ,
+ psz_name ) )
+ {
+ /* We can release the list, and return yes */
+ vlc_list_release( p_list ); return VLC_TRUE;
+ }
+ }
+ vlc_list_release( p_list ); return VLC_FALSE;
+}
+
+
/*****************************************************************************
* Following functions are local.
*****************************************************************************/