]> git.sesse.net Git - vlc/blobdiff - include/vlc/libvlc_structures.h
lua/intf: Fix a memleak.
[vlc] / include / vlc / libvlc_structures.h
index 1fefda599991b1d39e49ae55ecfd17bc26210beb..f2eebd9c6390cb21cd709e9911549d3eb8f62f49 100644 (file)
@@ -24,6 +24,8 @@
 #ifndef _LIBVLC_STRUCTURES_H
 #define _LIBVLC_STRUCTURES_H 1
 
+#include <stdint.h>
+
 # ifdef __cplusplus
 extern "C" {
 # endif
@@ -35,8 +37,8 @@ typedef struct libvlc_instance_t libvlc_instance_t;
  * Exceptions
  *****************************************************************************/
 
-/** defgroup libvlc_exception Exceptions
- * \ingroup libvlc
+/** \defgroup libvlc_exception libvlc_exception
+ * \ingroup libvlc_core
  * LibVLC Exceptions handling
  * @{
  */
@@ -53,28 +55,28 @@ typedef struct libvlc_exception_t
 /*****************************************************************************
  * Time
  *****************************************************************************/
-/** defgroup libvlc_time Time
- * \ingroup libvlc
+/** \defgroup libvlc_time libvlc_time
+ * \ingroup libvlc_core
  * LibVLC Time support in libvlc
  * @{
  */
 
-typedef vlc_int64_t libvlc_time_t;
+typedef int64_t libvlc_time_t;
 
 /**@} */
 
 /*****************************************************************************
  * Media Descriptor
  *****************************************************************************/
-/** defgroup libvlc_media_descriptor MediaDescriptor
+/** \defgroup libvlc_media libvlc_media
  * \ingroup libvlc
  * LibVLC Media Descriptor handling
  * @{
  */
 
 /* Meta Handling */
-/** defgroup libvlc_meta Meta
- * \ingroup libvlc_media_descriptor
+/** defgroup libvlc_meta libvlc_meta
+ * \ingroup libvlc_media
  * LibVLC Media Meta
  * @{
  */
@@ -101,7 +103,7 @@ typedef enum libvlc_meta_t {
 
 /**@} */
 
-typedef struct libvlc_media_descriptor_t libvlc_media_descriptor_t;
+typedef struct libvlc_media_t libvlc_media_t;
 
 /**@} */
 
@@ -109,24 +111,34 @@ typedef struct libvlc_media_descriptor_t libvlc_media_descriptor_t;
 /*****************************************************************************
  * Media Instance
  *****************************************************************************/
-/** defgroup libvlc_media_instance MediaInstance
+/** \defgroup libvlc_media_player libvlc_media_player
  * \ingroup libvlc
  * LibVLC Media Instance handling
  * @{
  */
 
-typedef struct libvlc_media_instance_t libvlc_media_instance_t;
+typedef struct libvlc_media_player_t libvlc_media_player_t;
 
+/**
+ * Note the order of libvlc_state_t enum must match exactly the order of
+ * @see mediacontrol_PlayerStatus and @see input_state_e enums.
+ *
+ * Expected states by web plugins are:
+ * IDLE/CLOSE=0, OPENING=1, BUFFERING=2, PLAYING=3, PAUSED=4,
+ * STOPPING=5, FORWARD=6, BACKWARD=7, ENDED=8, ERROR=9
+ */
 typedef enum libvlc_state_t
 {
-    libvlc_NothingSpecial,
-    libvlc_Stopped,
+    libvlc_NothingSpecial=0,
     libvlc_Opening,
     libvlc_Buffering,
-    libvlc_Ended,
-    libvlc_Error,
     libvlc_Playing,
-    libvlc_Paused
+    libvlc_Paused,
+    libvlc_Stopped,
+    libvlc_Forward,
+    libvlc_Backward,
+    libvlc_Ended,
+    libvlc_Error
 } libvlc_state_t;
 
 /**@} */
@@ -134,7 +146,7 @@ typedef enum libvlc_state_t
 /*****************************************************************************
  * Media List
  *****************************************************************************/
-/** defgroup libvlc_media_list MediaList
+/** \defgroup libvlc_media_list libvlc_media_list
  * \ingroup libvlc
  * LibVLC Media List handling
  * @{
@@ -143,25 +155,26 @@ typedef enum libvlc_state_t
 typedef struct libvlc_media_list_t libvlc_media_list_t;
 typedef struct libvlc_media_list_view_t libvlc_media_list_view_t;
 
-/**@} */
 
 /*****************************************************************************
  * Media List Player
  *****************************************************************************/
-/** defgroup libvlc_media_list_player MediaListPlayer
- * \ingroup libvlc
+/** \defgroup libvlc_media_list_player libvlc_media_list_player
+ * \ingroup libvlc_media_list
  * LibVLC Media List Player handling
  * @{
  */
 
 typedef struct libvlc_media_list_player_t libvlc_media_list_player_t;
 
-/**@} */
+/**@} libvlc_media_list_player */
+
+/**@} libvlc_media_list */
 
 /*****************************************************************************
  * Media Library
  *****************************************************************************/
-/** defgroup libvlc_media_library Media Library
+/** \defgroup libvlc_media_library libvlc_media_library
  * \ingroup libvlc
  * LibVLC Media Library
  * @{
@@ -174,9 +187,10 @@ typedef struct libvlc_media_library_t libvlc_media_library_t;
 /*****************************************************************************
  * Playlist
  *****************************************************************************/
-/** defgroup libvlc_playlist Playlist
+/** \defgroup libvlc_playlist libvlc_playlist (Deprecated)
  * \ingroup libvlc
- * LibVLC Playlist handling
+ * LibVLC Playlist handling (Deprecated)
+ * @deprecated Use media_list
  * @{
  */
 
@@ -194,8 +208,8 @@ typedef struct libvlc_playlist_item_t
 /*****************************************************************************
  * Video
  *****************************************************************************/
-/** defgroup libvlc_video Video
- * \ingroup libvlc
+/** \defgroup libvlc_video libvlc_video
+ * \ingroup libvlc_media_player
  * LibVLC Video handling
  * @{
  */
@@ -224,7 +238,7 @@ libvlc_rectangle_t;
 /*****************************************************************************
  * Services/Media Discovery
  *****************************************************************************/
-/** defgroup libvlc_media_discoverer Media Discoverer
+/** \defgroup libvlc_media_discoverer libvlc_media_discoverer
  * \ingroup libvlc
  * LibVLC Media Discoverer
  * @{
@@ -238,8 +252,8 @@ typedef struct libvlc_media_discoverer_t libvlc_media_discoverer_t;
  * Message log handling
  *****************************************************************************/
 
-/** defgroup libvlc_log Log
- * \ingroup libvlc
+/** \defgroup libvlc_log libvlc_log
+ * \ingroup libvlc_core
  * LibVLC Message Logging
  * @{
  */