/**@} */
-/*****************************************************************************
- * Tree
- *****************************************************************************/
-/** defgroup libvlc_tree Tree
- * \ingroup libvlc
- * LibVLC Tree
- * @{
- */
-
-typedef void (*libvlc_retain_function)(void *);
-typedef void (*libvlc_release_function)(void *);
-
-typedef struct libvlc_tree_t libvlc_tree_t;
-
-/**@} */
-
/*****************************************************************************
* Tag
*****************************************************************************/
typedef struct libvlc_media_instance_t libvlc_media_instance_t;
+typedef enum libvlc_state_t
+{
+ libvlc_Stopped,
+ libvlc_Opening,
+ libvlc_Buffering,
+ libvlc_Ended,
+ libvlc_Error,
+ libvlc_Playing,
+ libvlc_Paused
+} 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;
/**@} */
* LibVLC Video handling
* @{
*/
-
+
/**
* Downcast to this general type as placeholder for a platform specific one, such as:
* Drawable on X11,
* LibVLC Event Callbacks
* @{
*/
-
+
/**
* Available events: (XXX: being reworked)
* - libvlc_MediaInstanceReachedEnd
typedef enum libvlc_event_type_t {
libvlc_MediaDescriptorMetaChanged,
libvlc_MediaDescriptorSubItemAdded,
+ libvlc_MediaDescriptorDurationChanged,
+ libvlc_MediaDescriptorPreparsedChanged,
+ libvlc_MediaDescriptorFreed,
libvlc_MediaInstancePlayed,
libvlc_MediaInstancePaused,
libvlc_MediaInstanceReachedEnd,
libvlc_MediaInstancePositionChanged,
-
+
libvlc_MediaListItemAdded,
+ libvlc_MediaListWillAddItem,
libvlc_MediaListItemDeleted,
- libvlc_MediaListItemChanged,
+ libvlc_MediaListWillDeleteItem,
+
+ libvlc_MediaListViewItemAdded,
+ libvlc_MediaListViewWillAddItem,
+ libvlc_MediaListViewItemDeleted,
+ libvlc_MediaListViewWillDeleteItem,
libvlc_MediaListPlayerPlayed,
libvlc_MediaListPlayerNextItemSet,
libvlc_MediaListPlayerStopped,
- libvlc_TreeSubtreeAdded,
- libvlc_TreeSubtreeDeleted,
- libvlc_TreeItemValueChanged,
-
} libvlc_event_type_t;
/**
{
libvlc_media_descriptor_t * new_child;
} media_descriptor_subitem_added;
-
+ struct
+ {
+ vlc_int64_t new_duration;
+ } media_descriptor_duration_changed;
+ struct
+ {
+ int new_status;
+ } media_descriptor_preparsed_changed;
+ struct
+ {
+ libvlc_media_descriptor_t * md;
+ } media_descriptor_freed;
+
/* media instance */
struct
{
int index;
} media_list_item_added;
struct
+ {
+ libvlc_media_descriptor_t * item;
+ int index;
+ } media_list_will_add_item;
+ struct
{
libvlc_media_descriptor_t * item;
int index;
{
libvlc_media_descriptor_t * item;
int index;
- } media_list_item_changed;
+ } media_list_will_delete_item;
- /* Tree */
+ /* media list view */
struct
{
- libvlc_tree_t * subtree;
+ libvlc_media_descriptor_t * item;
int index;
- } tree_subtree_added;
+ } media_list_view_item_added;
struct
{
- libvlc_tree_t * subtree;
+ libvlc_media_descriptor_t * item;
int index;
- } tree_subtree_deleted;
+ } media_list_view_will_add_item;
struct
{
- void * new_value;
- } tree_item_value_changed;
-
+ libvlc_media_descriptor_t * item;
+ int index;
+ } media_list_view_item_deleted;
+ struct
+ {
+ libvlc_media_descriptor_t * item;
+ int index;
+ } media_list_view_will_delete_item;
} u;
} libvlc_event_t;