]> git.sesse.net Git - vlc/blobdiff - src/libvlc.h
Add key-action variable - automatically mapped action from key-pressed
[vlc] / src / libvlc.h
index 4c1178b22cd8205e5eb0d5f48e776f453e8b5315..30a2137d77ff716242efdde9d7d1567a16d90946 100644 (file)
 
 extern const char vlc_usage[];
 
+/* Hotkey stuff */
 extern const struct hotkey libvlc_hotkeys[];
 extern const size_t libvlc_hotkeys_size;
-
+extern int vlc_key_to_action (vlc_object_t *, const char *,
+                              vlc_value_t, vlc_value_t, void *);
 
 /*
  * OS-specific initialization
@@ -71,6 +73,20 @@ uint32_t CPUCapabilities( void );
  * LibVLC objects stuff
  */
 
+/**
+ * Creates a VLC object.
+ *
+ * Note that because the object name pointer must remain valid, potentially
+ * even after the destruction of the object (through the message queues), this
+ * function CANNOT be exported to plugins as is. In this case, the old
+ * vlc_object_create() must be used instead.
+ *
+ * @param p_this an existing VLC object
+ * @param i_size byte size of the object structure
+ * @param i_type object type, usually VLC_OBJECT_CUSTOM
+ * @param psz_type object type name
+ * @return the created object, or NULL.
+ */
 extern vlc_object_t *
 vlc_custom_create (vlc_object_t *p_this, size_t i_size, int i_type,
                    const char *psz_type);
@@ -133,8 +149,9 @@ struct vlc_object_internals_t
     vlc_spinlock_t  spin;
 
     /* Objects management */
-    unsigned        i_refcount;
-    vlc_bool_t      b_attached;
+    unsigned         i_refcount;
+    vlc_destructor_t pf_destructor;
+    vlc_bool_t       b_attached;
 };
 
 #define ZOOM_SECTION N_("Zoom")
@@ -154,6 +171,6 @@ extern const size_t libvlc_config_count;
 /*
  * Variables stuff
  */
-void var_OptionParse (vlc_object_t *, const char *);
+void var_OptionParse (vlc_object_t *, const char *, bool trusted);
 
 #endif