Add playlist_CurrentId() to get the playlist item id from the currently playing item.
[vlc.git] / include / vlc / deprecated.h
1 /*****************************************************************************
2  * deprecated.h:  libvlc deprecated API
3  *****************************************************************************
4  * Copyright (C) 1998-2005 the VideoLAN team
5  * $Id$
6  *
7  * Authors: ClĂ©ment Stenac <zorglub@videolan.org>
8  *          Jean-Paul Saman <jpsaman _at_ m2x _dot_ nl>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
23  *****************************************************************************/
24
25 #ifndef _LIBVLC_DEPRECATED_H
26 #define _LIBVLC_DEPRECATED_H 1
27
28 # ifdef __cplusplus
29 extern "C" {
30 # endif
31
32 /**
33  * Set the default video output's parent.
34  *
35  * This setting will be used as default for all video outputs.
36  *
37  * \param p_instance libvlc instance
38  * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32)
39  * \param p_e an initialized exception pointer
40  * @deprecated Use libvlc_media_player_set_drawable
41  */
42 VLC_PUBLIC_API void libvlc_video_set_parent( libvlc_instance_t *, libvlc_drawable_t, libvlc_exception_t * );
43
44 /**
45  * Set the default video output parent.
46  *
47  * This setting will be used as default for all video outputs.
48  *
49  * \param p_instance libvlc instance
50  * \param drawable the new parent window (Drawable on X11, CGrafPort on MacOSX, HWND on Win32)
51  * \param p_e an initialized exception pointer
52  * @deprecated Use libvlc_media_player_get_drawable
53  */
54 VLC_PUBLIC_API libvlc_drawable_t libvlc_video_get_parent( libvlc_instance_t *, libvlc_exception_t * );
55
56 /*
57  * This function shall not be used at all. It may lead to crash and race condition.
58  */
59 VLC_DEPRECATED_API int libvlc_video_destroy( libvlc_media_player_t *, libvlc_exception_t *);
60
61 /*****************************************************************************
62  * Playlist (Deprecated)
63  *****************************************************************************/
64 /** \defgroup libvlc_playlist libvlc_playlist (Deprecated)
65  * \ingroup libvlc
66  * LibVLC Playlist handling (Deprecated)
67  * @deprecated Use media_list
68  * @{
69  */
70
71 /**
72  * Set the playlist's loop attribute. If set, the playlist runs continuously
73  * and wraps around when it reaches the end.
74  *
75  * \param p_instance the playlist instance
76  * \param loop the loop attribute. 1 sets looping, 0 disables it
77  * \param p_e an initialized exception pointer
78  */
79 VLC_DEPRECATED_API void libvlc_playlist_loop( libvlc_instance_t* , int,
80                                           libvlc_exception_t * );
81
82 /**
83  * Start playing.
84  *
85  * Additionnal playlist item options can be specified for addition to the
86  * item before it is played.
87  *
88  * \param p_instance the playlist instance
89  * \param i_id the item to play. If this is a negative number, the next
90  *        item will be selected. Otherwise, the item with the given ID will be
91  *        played
92  * \param i_options the number of options to add to the item
93  * \param ppsz_options the options to add to the item
94  * \param p_e an initialized exception pointer
95  */
96 VLC_DEPRECATED_API void libvlc_playlist_play( libvlc_instance_t*, int, int,
97                                           char **, libvlc_exception_t * );
98
99 /**
100  * Toggle the playlist's pause status.
101  *
102  * If the playlist was running, it is paused. If it was paused, it is resumed.
103  *
104  * \param p_instance the playlist instance to pause
105  * \param p_e an initialized exception pointer
106  */
107 VLC_DEPRECATED_API void libvlc_playlist_pause( libvlc_instance_t *,
108                                            libvlc_exception_t * );
109
110 /**
111  * Checks whether the playlist is running
112  *
113  * \param p_instance the playlist instance
114  * \param p_e an initialized exception pointer
115  * \return 0 if the playlist is stopped or paused, 1 if it is running
116  */
117 VLC_DEPRECATED_API int libvlc_playlist_isplaying( libvlc_instance_t *,
118                                               libvlc_exception_t * );
119
120 /**
121  * Get the number of items in the playlist
122  *
123  * \param p_instance the playlist instance
124  * \param p_e an initialized exception pointer
125  * \return the number of items
126  */
127 VLC_DEPRECATED_API int libvlc_playlist_items_count( libvlc_instance_t *,
128                                                 libvlc_exception_t * );
129
130 VLC_DEPRECATED_API int libvlc_playlist_get_current_index( libvlc_instance_t *,
131                                                  libvlc_exception_t *);
132 /**
133  * Lock the playlist.
134  *
135  * \param p_instance the playlist instance
136  */
137 VLC_DEPRECATED_API void libvlc_playlist_lock( libvlc_instance_t * );
138
139 /**
140  * Unlock the playlist.
141  *
142  * \param p_instance the playlist instance
143  */
144 VLC_DEPRECATED_API void libvlc_playlist_unlock( libvlc_instance_t * );
145
146 /**
147  * Stop playing.
148  *
149  * \param p_instance the playlist instance to stop
150  * \param p_e an initialized exception pointer
151  */
152 VLC_DEPRECATED_API void libvlc_playlist_stop( libvlc_instance_t *,
153                                           libvlc_exception_t * );
154
155 /**
156  * Go to the next playlist item. If the playlist was stopped, playback
157  * is started.
158  *
159  * \param p_instance the playlist instance
160  * \param p_e an initialized exception pointer
161  */
162 VLC_DEPRECATED_API void libvlc_playlist_next( libvlc_instance_t *,
163                                           libvlc_exception_t * );
164
165 /**
166  * Go to the previous playlist item. If the playlist was stopped, playback
167  * is started.
168  *
169  * \param p_instance the playlist instance
170  * \param p_e an initialized exception pointer
171  */
172 VLC_DEPRECATED_API void libvlc_playlist_prev( libvlc_instance_t *,
173                                           libvlc_exception_t * );
174
175 /**
176  * Empty a playlist. All items in the playlist are removed.
177  *
178  * \param p_instance the playlist instance
179  * \param p_e an initialized exception pointer
180  */
181 VLC_DEPRECATED_API void libvlc_playlist_clear( libvlc_instance_t *,
182                                            libvlc_exception_t * );
183
184 /**
185  * Append an item to the playlist. The item is added at the end. If more
186  * advanced options are required, \see libvlc_playlist_add_extended instead.
187  *
188  * \param p_instance the playlist instance
189  * \param psz_uri the URI to open, using VLC format
190  * \param psz_name a name that you might want to give or NULL
191  * \param p_e an initialized exception pointer
192  * \return the identifier of the new item
193  */
194 VLC_DEPRECATED_API int libvlc_playlist_add( libvlc_instance_t *, const char *,
195                                         const char *, libvlc_exception_t * );
196
197 /**
198  * Append an item to the playlist. The item is added at the end, with
199  * additional input options.
200  *
201  * \param p_instance the playlist instance
202  * \param psz_uri the URI to open, using VLC format
203  * \param psz_name a name that you might want to give or NULL
204  * \param i_options the number of options to add
205  * \param ppsz_options strings representing the options to add
206  * \param p_e an initialized exception pointer
207  * \return the identifier of the new item
208  */
209 VLC_DEPRECATED_API int libvlc_playlist_add_extended( libvlc_instance_t *, const char *,
210                                                  const char *, int, const char **,
211                                                  libvlc_exception_t * );
212
213 /**
214  * Delete the playlist item with the given ID.
215  *
216  * \param p_instance the playlist instance
217  * \param i_id the id to remove
218  * \param p_e an initialized exception pointer
219  * \return 0 in case of success, a non-zero value otherwise
220  */
221 VLC_DEPRECATED_API int libvlc_playlist_delete_item( libvlc_instance_t *, int,
222                                                 libvlc_exception_t * );
223
224 /** Get the input that is currently being played by the playlist.
225  *
226  * \param p_instance the playlist instance to use
227  * \param p_e an initialized exception pointern
228  * \return a media instance object
229  */
230 VLC_DEPRECATED_API libvlc_media_player_t * libvlc_playlist_get_media_player(
231                                 libvlc_instance_t *, libvlc_exception_t * );
232
233 /** @}*/
234
235 # ifdef __cplusplus
236 }
237 # endif
238
239 #endif /* _LIBVLC_DEPRECATED_H */