libvlc_media_list
[libvlc]

Collaboration diagram for libvlc_media_list:
LibVLC Media List, a media list holds multiple media descriptors. More...

Typedefs

typedef struct libvlc_media_list_t libvlc_media_list_t
typedef struct
libvlc_media_list_view_t 
libvlc_media_list_view_t

Functions

VLC_PUBLIC_API
libvlc_media_list_t
libvlc_media_list_new (libvlc_instance_t *, libvlc_exception_t *)
 Create an empty media list.
VLC_PUBLIC_API void libvlc_media_list_release (libvlc_media_list_t *)
 Release media list created with libvlc_media_list_new().
VLC_PUBLIC_API void libvlc_media_list_retain (libvlc_media_list_t *)
 Retain reference to a media list.
VLC_DEPRECATED_API void libvlc_media_list_add_file_content (libvlc_media_list_t *p_mlist, const char *psz_uri, libvlc_exception_t *p_e)
VLC_PUBLIC_API void libvlc_media_list_set_media (libvlc_media_list_t *, libvlc_media_t *, libvlc_exception_t *)
 Associate media instance with this media list instance.
VLC_PUBLIC_API libvlc_media_tlibvlc_media_list_media (libvlc_media_list_t *, libvlc_exception_t *)
 Get media instance from this media list instance.
VLC_PUBLIC_API void libvlc_media_list_add_media (libvlc_media_list_t *, libvlc_media_t *, libvlc_exception_t *)
 Add media instance to media list The libvlc_media_list_lock should be held upon entering this function.
VLC_PUBLIC_API void libvlc_media_list_insert_media (libvlc_media_list_t *, libvlc_media_t *, int, libvlc_exception_t *)
 Insert media instance in media list on a position The libvlc_media_list_lock should be held upon entering this function.
VLC_PUBLIC_API void libvlc_media_list_remove_index (libvlc_media_list_t *, int, libvlc_exception_t *)
 Remove media instance from media list on a position The libvlc_media_list_lock should be held upon entering this function.
VLC_PUBLIC_API int libvlc_media_list_count (libvlc_media_list_t *p_mlist, libvlc_exception_t *p_e)
 Get count on media list items The libvlc_media_list_lock should be held upon entering this function.
VLC_PUBLIC_API libvlc_media_tlibvlc_media_list_item_at_index (libvlc_media_list_t *, int, libvlc_exception_t *)
 List media instance in media list at a position The libvlc_media_list_lock should be held upon entering this function.
VLC_PUBLIC_API int libvlc_media_list_index_of_item (libvlc_media_list_t *, libvlc_media_t *, libvlc_exception_t *)
 Find index position of List media instance in media list.
VLC_PUBLIC_API int libvlc_media_list_is_readonly (libvlc_media_list_t *p_mlist)
 This indicates if this media list is read-only from a user point of view.
VLC_PUBLIC_API void libvlc_media_list_lock (libvlc_media_list_t *)
 Get lock on media list items.
VLC_PUBLIC_API void libvlc_media_list_unlock (libvlc_media_list_t *)
 Release lock on media list items The libvlc_media_list_lock should be held upon entering this function.
VLC_PUBLIC_API
libvlc_media_list_view_t
libvlc_media_list_flat_view (libvlc_media_list_t *, libvlc_exception_t *)
 Get a flat media list view of media list items.
VLC_PUBLIC_API
libvlc_media_list_view_t
libvlc_media_list_hierarchical_view (libvlc_media_list_t *, libvlc_exception_t *)
 Get a hierarchical media list view of media list items.
VLC_PUBLIC_API
libvlc_media_list_view_t
libvlc_media_list_hierarchical_node_view (libvlc_media_list_t *p_ml, libvlc_exception_t *p_ex)
VLC_PUBLIC_API
libvlc_event_manager_t
libvlc_media_list_event_manager (libvlc_media_list_t *, libvlc_exception_t *)
 Get libvlc_event_manager from this media list instance.

Detailed Description

LibVLC Media List, a media list holds multiple media descriptors.


Typedef Documentation


Function Documentation

VLC_DEPRECATED_API void libvlc_media_list_add_file_content ( libvlc_media_list_t p_mlist,
const char *  psz_uri,
libvlc_exception_t p_e 
)

VLC_PUBLIC_API void libvlc_media_list_add_media ( libvlc_media_list_t ,
libvlc_media_t ,
libvlc_exception_t  
)

Add media instance to media list The libvlc_media_list_lock should be held upon entering this function.

Parameters:
p_ml a media list instance
p_mi a media instance
p_e initialized exception object

References _libvlc_media_list_add_media(), and mlist_is_writable().

Referenced by input_item_subitem_added(), and libvlc_media_list_add_file_content().

VLC_PUBLIC_API int libvlc_media_list_count ( libvlc_media_list_t p_mlist,
libvlc_exception_t p_e 
)

VLC_PUBLIC_API libvlc_event_manager_t* libvlc_media_list_event_manager ( libvlc_media_list_t ,
libvlc_exception_t  
)

Get libvlc_event_manager from this media list instance.

The p_event_manager is immutable, so you don't have to hold the lock

Parameters:
p_ml a media list instance
p_ex an excpetion instance
Returns:
libvlc_event_manager

References libvlc_media_list_t::p_event_manager, and VLC_UNUSED.

Referenced by mlist_em().

VLC_PUBLIC_API libvlc_media_list_view_t* libvlc_media_list_flat_view ( libvlc_media_list_t ,
libvlc_exception_t  
)

VLC_PUBLIC_API libvlc_media_list_view_t* libvlc_media_list_hierarchical_node_view ( libvlc_media_list_t p_ml,
libvlc_exception_t p_ex 
)

VLC_PUBLIC_API libvlc_media_list_view_t* libvlc_media_list_hierarchical_view ( libvlc_media_list_t ,
libvlc_exception_t  
)

VLC_PUBLIC_API int libvlc_media_list_index_of_item ( libvlc_media_list_t ,
libvlc_media_t ,
libvlc_exception_t  
)

Find index position of List media instance in media list.

Warning: the function will return the first matched position. The libvlc_media_list_lock should be held upon entering this function.

Parameters:
p_ml a media list instance
p_mi media list instance
p_e initialized exception object
Returns:
position of media instance

References i, libvlc_media_list_t::items, vlc_array_count(), vlc_array_item_at_index(), and VLC_UNUSED.

VLC_PUBLIC_API void libvlc_media_list_insert_media ( libvlc_media_list_t ,
libvlc_media_t ,
int  ,
libvlc_exception_t  
)

Insert media instance in media list on a position The libvlc_media_list_lock should be held upon entering this function.

Parameters:
p_ml a media list instance
p_mi a media instance
i_pos position in array where to insert
p_e initialized exception object

References _libvlc_media_list_insert_media(), and mlist_is_writable().

VLC_PUBLIC_API int libvlc_media_list_is_readonly ( libvlc_media_list_t p_mlist  ) 

This indicates if this media list is read-only from a user point of view.

Parameters:
p_ml media list instance
Returns:
0 on readonly, 1 on readwrite

References libvlc_media_list_t::b_read_only.

VLC_PUBLIC_API libvlc_media_t* libvlc_media_list_item_at_index ( libvlc_media_list_t ,
int  ,
libvlc_exception_t  
)

List media instance in media list at a position The libvlc_media_list_lock should be held upon entering this function.

Parameters:
p_ml a media list instance
i_pos position in array where to insert
p_e initialized exception object
Returns:
media instance at position i_pos and libvlc_media_retain() has been called to increase the refcount on this object.

References libvlc_media_list_t::items, libvlc_exception_raise(), libvlc_media_retain(), libvlc_printerr(), vlc_array_count(), and vlc_array_item_at_index().

Referenced by get_path_rec(), hierarch_media_list_view_children_at_index(), hierarch_media_list_view_item_at_index(), hierarch_node_media_list_view_count(), hierarch_node_media_list_view_item_at_index(), import_mlist_rec(), index_of_item(), install_md_listener(), libvlc_media_list_item_at_path(), libvlc_media_list_parentlist_at_path(), libvlc_media_list_view_release(), libvlc_media_list_view_set_ml_notification_callback(), services_discovery_item_removed(), and uninstall_md_listener().

VLC_PUBLIC_API void libvlc_media_list_lock ( libvlc_media_list_t  ) 

VLC_PUBLIC_API libvlc_media_t* libvlc_media_list_media ( libvlc_media_list_t ,
libvlc_exception_t  
)

Get media instance from this media list instance.

This action will increase the refcount on the media instance. The libvlc_media_list_lock should NOT be held upon entering this function.

Parameters:
p_ml a media list instance
p_e initialized exception object
Returns:
media instance

References libvlc_media_retain(), libvlc_media_list_t::object_lock, libvlc_media_list_t::p_md, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_UNUSED.

VLC_PUBLIC_API libvlc_media_list_t* libvlc_media_list_new ( libvlc_instance_t ,
libvlc_exception_t  
)

VLC_PUBLIC_API void libvlc_media_list_release ( libvlc_media_list_t  ) 

VLC_PUBLIC_API void libvlc_media_list_remove_index ( libvlc_media_list_t ,
int  ,
libvlc_exception_t  
)

Remove media instance from media list on a position The libvlc_media_list_lock should be held upon entering this function.

Parameters:
p_ml a media list instance
i_pos position in array where to insert
p_e initialized exception object

References _libvlc_media_list_remove_index(), and mlist_is_writable().

VLC_PUBLIC_API void libvlc_media_list_retain ( libvlc_media_list_t  ) 

VLC_PUBLIC_API void libvlc_media_list_set_media ( libvlc_media_list_t ,
libvlc_media_t ,
libvlc_exception_t  
)

Associate media instance with this media list instance.

If another media instance was present it will be released. The libvlc_media_list_lock should NOT be held upon entering this function.

Parameters:
p_ml a media list instance
p_mi media instance to add
p_e initialized exception object

References libvlc_media_release(), libvlc_media_retain(), libvlc_media_list_t::object_lock, libvlc_media_list_t::p_md, vlc_mutex_lock(), vlc_mutex_unlock(), and VLC_UNUSED.

Referenced by input_item_subitem_added().

VLC_PUBLIC_API void libvlc_media_list_unlock ( libvlc_media_list_t  ) 


Generated on Sat Nov 21 08:06:02 2009 for VLC by  doxygen 1.5.6