Pacifier for isoburn_read_image()

This commit is contained in:
2008-02-06 21:45:31 +00:00
parent b012f2033e
commit 1e2cf64922
6 changed files with 79 additions and 4 deletions

View File

@ -618,6 +618,23 @@ int isoburn_read_image(struct burn_drive *d,
struct isoburn_read_opts *read_opts,
IsoImage **image);
/* @since 0.1.0 */
/** Set a callback function for producing pacifier messages during the lengthy
process of image reading. The callback function and the application handle
are stored until they are needed for the underlying call to libisofs.
Other than with libisofs the handle is managed entirely by the application.
An idle .free() function is exposed to libisofs. The handle has to stay
valid until isoburn_read_image() is done. It has to be detached by
isoburn_set_read_pacifier(drive, NULL, NULL);
before it may be removed from memory.
@param drive The drive which will be used with isoburn_read_image()
@param read_pacifier The callback function
@param app_handle The app handle which the callback function can obtain
via iso_image_get_attached_data() from its IsoImage*
*/
int isoburn_set_read_pacifier(struct burn_drive *drive,
int (*read_pacifier)(IsoImage*, IsoFileSource*),
void *app_handle);
/** Set the IsoImage to be used with a drive. This eventually releases
the reference to the old IsoImage attached to the drive.