VLC  3.0.15
libvlc_media_library.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * libvlc_media_library.h: libvlc external API
3  *****************************************************************************
4  * Copyright (C) 1998-2009 VLC authors and VideoLAN
5  * $Id: facbf813aa16140461c6e72f166d2985c52b1d6f $
6  *
7  * Authors: ClĂ©ment Stenac <zorglub@videolan.org>
8  * Jean-Paul Saman <jpsaman@videolan.org>
9  * Pierre d'Herbemont <pdherbemont@videolan.org>
10  *
11  * This program is free software; you can redistribute it and/or modify it
12  * under the terms of the GNU Lesser General Public License as published by
13  * the Free Software Foundation; either version 2.1 of the License, or
14  * (at your option) any later version.
15  *
16  * This program is distributed in the hope that it will be useful,
17  * but WITHOUT ANY WARRANTY; without even the implied warranty of
18  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19  * GNU Lesser General Public License for more details.
20  *
21  * You should have received a copy of the GNU Lesser General Public License
22  * along with this program; if not, write to the Free Software Foundation,
23  * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
24  *****************************************************************************/
25 
26 #ifndef VLC_LIBVLC_MEDIA_LIBRARY_H
27 #define VLC_LIBVLC_MEDIA_LIBRARY_H 1
28 
29 # ifdef __cplusplus
30 extern "C" {
31 # endif
32 
33 /** \defgroup libvlc_media_library LibVLC media library
34  * \ingroup libvlc
35  * @{
36  * \file
37  * LibVLC media library external API
38  */
39 
41 
42 /**
43  * Create an new Media Library object
44  *
45  * \param p_instance the libvlc instance
46  * \return a new object or NULL on error
47  */
50 
51 /**
52  * Release media library object. This functions decrements the
53  * reference count of the media library object. If it reaches 0,
54  * then the object will be released.
55  *
56  * \param p_mlib media library object
57  */
58 LIBVLC_API void
60 
61 /**
62  * Retain a reference to a media library object. This function will
63  * increment the reference counting for this object. Use
64  * libvlc_media_library_release() to decrement the reference count.
65  *
66  * \param p_mlib media library object
67  */
68 LIBVLC_API void
70 
71 /**
72  * Load media library.
73  *
74  * \param p_mlib media library object
75  * \return 0 on success, -1 on error
76  */
77 LIBVLC_API int
79 
80 /**
81  * Get media library subitems.
82  *
83  * \param p_mlib media library object
84  * \return media list subitems
85  */
88 
89 
90 /** @} */
91 
92 # ifdef __cplusplus
93 }
94 # endif
95 
96 #endif /* VLC_LIBVLC_MEDIA_LIBRARY_H */
libvlc_media_library_load
LIBVLC_API int libvlc_media_library_load(libvlc_media_library_t *p_mlib)
Load media library.
libvlc_media_library_media_list
LIBVLC_API libvlc_media_list_t * libvlc_media_library_media_list(libvlc_media_library_t *p_mlib)
Get media library subitems.
libvlc_media_library_release
LIBVLC_API void libvlc_media_library_release(libvlc_media_library_t *p_mlib)
Release media library object.
libvlc_media_list_t
struct libvlc_media_list_t libvlc_media_list_t
Definition: libvlc_media_list.h:38
LIBVLC_API
#define LIBVLC_API
Definition: libvlc.h:42
libvlc_media_library_retain
LIBVLC_API void libvlc_media_library_retain(libvlc_media_library_t *p_mlib)
Retain a reference to a media library object.
libvlc_instance_t
struct libvlc_instance_t libvlc_instance_t
This structure is opaque.
Definition: libvlc.h:76
libvlc_media_library_new
LIBVLC_API libvlc_media_library_t * libvlc_media_library_new(libvlc_instance_t *p_instance)
Create an new Media Library object.
libvlc_media_library_t
struct libvlc_media_library_t libvlc_media_library_t
Definition: libvlc_media_library.h:39