/*
		     Endeavour Devices File IO
 */

#ifndef EDVDEVICESFIO_H
#define EDVDEVICESFIO_H

#include <glib.h>
#include "edvtypes.h"
#include "edvdevices.h"


extern void EDVDevicesListLoadFromSystem(
	edv_device_struct ***list, gint *total,
	gint (*progress_cb)(gpointer, gulong, gulong),
	gpointer client_data
);
extern void EDVDevicesListUpdateMountStatesFromSystem(
	edv_device_struct **list, gint total
);
extern void EDVDevicesListLoadFromFile(
	const gchar *filename,
	edv_device_struct ***list, gint *total,
	gint (*progress_cb)(gpointer, gulong, gulong),
	gpointer client_data
);
extern void EDVDeviceListSaveToFile(
	const gchar *filename,
	edv_device_struct **list, gint total,
	gint (*progress_cb)(gpointer, gulong, gulong),
	gpointer client_data
);


#endif	/* EDVDEVICESFIO_H */
