]> git.sesse.net Git - vlc/blobdiff - include/vlc_modules.h
contribs: make goom2k4 compile for win32 host when aclocal-1.9 isn't installed
[vlc] / include / vlc_modules.h
index 3388b7a7d1d6d4fb81d992df2f5fcc63520370c7..ccecc3f8e560d536ea5d2e6bf813c6d13ef686af 100644 (file)
@@ -46,7 +46,7 @@ typedef shl_t module_handle_t;
 /**
  * Module descriptor
  */
-#ifndef __PLUGIN__FIXME
+#ifndef __PLUGIN__FIXME___
 /* FIXME: scheduled for privatization */
 struct module_t
 {
@@ -109,6 +109,18 @@ VLC_EXPORT( void, __module_Unneed, ( vlc_object_t *, module_t * ) );
 #define module_Exists(a,b) __module_Exists(VLC_OBJECT(a),b)
 VLC_EXPORT( vlc_bool_t,  __module_Exists, ( vlc_object_t *, const char * ) );
 
+/* Use only if you know what you're doing... */
+#define module_FindName(a,b) __module_FindName(VLC_OBJECT(a),b)
+VLC_EXPORT( module_t *, __module_FindName, ( vlc_object_t *, const char * ) );
+
+/* Return a NULL terminated array with the names of the modules that have a
+ * certain capability.
+ * Free after uses both the string and the table. */
+ #define module_GetModulesNamesForCapability(a,b) \
+                    __module_GetModulesNamesForCapability(VLC_OBJECT(a),b)
+VLC_EXPORT(char **, __module_GetModulesNamesForCapability,
+                    ( vlc_object_t *p_this, const char * psz_capability ) );
+
 VLC_EXPORT( module_t *, vlc_module_create, ( vlc_object_t * ) );
 VLC_EXPORT( module_t *, vlc_submodule_create, ( module_t * ) );
 VLC_EXPORT( int, vlc_module_set, (module_t *module, int propid, void *value) );