-struct update_iterator_t
-{
- update_t *p_u; //< Pointer to VLC update object
-
- int i_r; //< Position in the releases list
- int i_f; //< Position in the release's files list
- int i_m; //< Position in the mirrors list
-
- int i_t; //< File type bitmask
- int i_rs; //< Release status bitmask
- int i_rt; //< Release type bitmask
-
- struct
- {
- int i_type; //< Type
- char* psz_md5; //< MD5 hash
- long int l_size; //< Size in bytes
- char* psz_url; //< Absolute URL
- char* psz_description; //< Description
- } file; //< Local 'copy' of the current file's information
- struct
- {
- char *psz_version; //< Version string
- char *psz_svn_revision; //< SVN revision
- int i_status; //< Status
- int i_type; //< Type
- } release; //< Local 'copy' of the current release's information
- struct
- {
- char *psz_name; //< Name
- char *psz_location; //< Geographical location
- char *psz_type; //< Type (HTTP, FTP, ...)
- } mirror; //< Local 'copy' of the current mirror's information
-};
-
-#define update_New( a ) __update_New( VLC_OBJECT( a ) )
-
-VLC_EXPORT( update_t *, __update_New, ( vlc_object_t * ) );
-VLC_EXPORT( void, update_Delete, (update_t * ) );
-VLC_EXPORT( void, update_Check, ( update_t *, vlc_bool_t ) );
-
-VLC_EXPORT( update_iterator_t *, update_iterator_New, ( update_t * ) );
-VLC_EXPORT( void, update_iterator_Delete, ( update_iterator_t * ) );
-VLC_EXPORT( unsigned int, update_iterator_Action, ( update_iterator_t *, int ) );
-VLC_EXPORT( unsigned int, update_iterator_ChooseMirrorAndFile, ( update_iterator_t *, int, int, int ) );
-VLC_EXPORT( void, update_download, ( update_iterator_t *, char * ) );