]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
programs is a string, which is a string, which is not a list
[vlc] / src / libvlc.h
index 4af6d82ea4ab069cacb8626058eb8310f6be82b0..873b73cd9d63af7d906a3ad1b194f9e063f7647b 100644 (file)
@@ -93,6 +93,20 @@ const char* msg_StackMsg ( void );
  */
 char *vlc_fix_readdir (const char *);
 
+/*
+ * LibVLC exit event handling
+ */
+typedef struct vlc_exit
+{
+    vlc_mutex_t lock;
+    void (*handler) (void *);
+    void *opaque;
+    bool killed;
+} vlc_exit_t;
+
+void vlc_ExitInit( vlc_exit_t * );
+void vlc_ExitDestroy( vlc_exit_t * );
+
 /*
  * LibVLC objects stuff
  */
@@ -161,7 +175,6 @@ struct vlc_object_internals
     vlc_object_internals_t *next;  /* next sibling */
     vlc_object_internals_t *prev;  /* previous sibling */
     vlc_object_internals_t *first; /* first child */
-    vlc_object_t   *old_parent;
 };
 
 #define ZOOM_SECTION N_("Zoom")
@@ -211,6 +224,9 @@ typedef struct libvlc_priv_t
 
     /* Objects tree */
     vlc_mutex_t        structure_lock;
+
+    /* Exit callback */
+    vlc_exit_t       exit;
 } libvlc_priv_t;
 
 static inline libvlc_priv_t *libvlc_priv (libvlc_int_t *libvlc)