]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
libvlc_free: wrapper around free() when the C run-time is not known
[vlc] / src / libvlc.h
index 2b4aa5c5d36ccab29144492aec280267e68f30b1..20eea3a837eb6660fcaf8a122838aa9c888637f5 100644 (file)
@@ -42,6 +42,15 @@ void system_Init      ( libvlc_int_t *, int *, const char *[] );
 void system_Configure ( libvlc_int_t *, int *, const char *[] );
 void system_End       ( libvlc_int_t * );
 
+/*
+ * Legacy object stuff that is still used within libvlccore (only)
+ */
+#define vlc_object_signal_unlocked( obj )
+
+vlc_list_t *vlc_list_find( vlc_object_t *, int, int );
+#define VLC_OBJECT_INTF        (-4)
+#define VLC_OBJECT_PACKETIZER  (-13)
+
 /*
  * Threads subsystem
  */
@@ -49,11 +58,6 @@ void system_End       ( libvlc_int_t * );
 /* Hopefully, no need to export this. There is a new thread API instead. */
 void vlc_thread_cancel (vlc_object_t *);
 int vlc_object_waitpipe (vlc_object_t *obj);
-void __vlc_object_signal_unlocked (vlc_object_t *);
-#define vlc_object_signal_unlocked( obj ) \
-    __vlc_object_signal_unlocked( VLC_OBJECT( obj ) )
-
-vlc_list_t *vlc_list_find( vlc_object_t *, int, int ); /* legacy */
 
 void vlc_trace (const char *fn, const char *file, unsigned line);
 #define vlc_backtrace() vlc_trace(__func__, __FILE__, __LINE__)
@@ -140,8 +144,9 @@ extern char *psz_vlcpath;
 /* 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. */
-VLC_EXPORT(char **, module_GetModulesNamesForCapability,
-                    ( const char * psz_capability, char ***psz_longname ) );
+char **module_GetModulesNamesForCapability (const char * psz_capability,
+                                            char ***psz_longname);
+module_t *module_find_by_shortcut (const char *psz_shortcut);
 
 /**
  * Private LibVLC data for each object.
@@ -162,7 +167,6 @@ typedef struct vlc_object_internals_t
 
     /* Objects thread synchronization */
     vlc_mutex_t     lock;
-    vlc_cond_t      wait;
     int             pipes[2];
 
     /* Objects management */
@@ -192,6 +196,7 @@ typedef struct sap_handler_t sap_handler_t;
 typedef struct libvlc_priv_t
 {
     libvlc_int_t       public_data;
+    vlc_cond_t         exiting; ///< signaled when VLC wants to exit
 
     /* Configuration */
     vlc_mutex_t        config_lock; ///< config file lock