1 /***************************************************************************** 2 * vlc_update.h: VLC update download 3 ***************************************************************************** 4 * Copyright © 2005-2007 VLC authors and VideoLAN 5 * $Id: 8482b4f23de81f9b7937edde8795ceb8105a0a3d $ 6 * 7 * Authors: Antoine Cellerier <dionoea -at- videolan -dot- org> 8 * Rafaël Carré <funman@videolanorg> 9 * 10 * This program is free software; you can redistribute it and/or modify it 11 * under the terms of the GNU Lesser General Public License as published by 12 * the Free Software Foundation; either release 2 of the License, or 13 * (at your option) any later release. 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 Lesser General Public License for more details. 19 * 20 * You should have received a copy of the GNU Lesser General Public License 21 * along with this program; if not, write to the Free Software Foundation, 22 * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. 23 *****************************************************************************/ 24 25 #ifndef VLC_UPDATE_H 26 #define VLC_UPDATE_H 27 28 /** 29 * \defgroup update Software updates 30 * \ingroup interface 31 * Over-the-air VLC software updates 32 * @{ 33 * \file 34 *VLC software update interface 35 */ 36 37 /** 38 * Describes an update VLC release number 39 */ 40 struct update_release_t 41 { 42 int i_major; ///< Version major 43 int i_minor; ///< Version minor 44 int i_revision; ///< Version revision 45 int i_extra; ///< Version extra 46 char* psz_url; ///< Download URL 47 char* psz_desc; ///< Release description 48 }; 49 50 typedef struct update_release_t update_release_t; 51 52 VLC_API update_t * update_New( vlc_object_t * ); 53 #define update_New( a ) update_New( VLC_OBJECT( a ) ) 54 VLC_API void update_Delete( update_t * ); 55 VLC_API void update_Check( update_t *, void (*callback)( void*, bool ), void * ); 56 VLC_API bool update_NeedUpgrade( update_t * ); 57 VLC_API void update_Download( update_t *, const char* ); 58 VLC_API update_release_t* update_GetRelease( update_t * ); 59 60 /** 61 * @} 62 */ 63 64 #endif /* _VLC_UPDATE_H */ 65