*
* viking is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
*
* viking is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by the
guint8 (* get_uniq_id) (VikMapSource * self);
const gchar * (* get_label) (VikMapSource * self);
guint16 (* get_tilesize_x) (VikMapSource * self);
guint16 (* get_tilesize_y) (VikMapSource * self);
VikViewportDrawMode (* get_drawmode) (VikMapSource * self);
guint8 (* get_uniq_id) (VikMapSource * self);
const gchar * (* get_label) (VikMapSource * self);
guint16 (* get_tilesize_x) (VikMapSource * self);
guint16 (* get_tilesize_y) (VikMapSource * self);
VikViewportDrawMode (* get_drawmode) (VikMapSource * self);
gboolean (* coord_to_mapcoord) (VikMapSource * self, const VikCoord * src, gdouble xzoom, gdouble yzoom, MapCoord * dest);
void (* mapcoord_to_center_coord) (VikMapSource * self, MapCoord * src, VikCoord * dest);
gboolean (* coord_to_mapcoord) (VikMapSource * self, const VikCoord * src, gdouble xzoom, gdouble yzoom, MapCoord * dest);
void (* mapcoord_to_center_coord) (VikMapSource * self, MapCoord * src, VikCoord * dest);
- int (* download) (VikMapSource * self, MapCoord * src, const gchar * dest_fn);
+ int (* download) (VikMapSource * self, MapCoord * src, const gchar * dest_fn, void * handle);
+ void * (* download_handle_init) (VikMapSource * self);
+ void (* download_handle_cleanup) (VikMapSource * self, void * handle);
guint8 vik_map_source_get_uniq_id (VikMapSource * self);
const gchar *vik_map_source_get_label (VikMapSource * self);
guint16 vik_map_source_get_tilesize_x (VikMapSource * self);
guint16 vik_map_source_get_tilesize_y (VikMapSource * self);
VikViewportDrawMode vik_map_source_get_drawmode (VikMapSource * self);
guint8 vik_map_source_get_uniq_id (VikMapSource * self);
const gchar *vik_map_source_get_label (VikMapSource * self);
guint16 vik_map_source_get_tilesize_x (VikMapSource * self);
guint16 vik_map_source_get_tilesize_y (VikMapSource * self);
VikViewportDrawMode vik_map_source_get_drawmode (VikMapSource * self);
gboolean vik_map_source_coord_to_mapcoord (VikMapSource * self, const VikCoord *src, gdouble xzoom, gdouble yzoom, MapCoord *dest );
void vik_map_source_mapcoord_to_center_coord (VikMapSource * self, MapCoord *src, VikCoord *dest);
gboolean vik_map_source_coord_to_mapcoord (VikMapSource * self, const VikCoord *src, gdouble xzoom, gdouble yzoom, MapCoord *dest );
void vik_map_source_mapcoord_to_center_coord (VikMapSource * self, MapCoord *src, VikCoord *dest);
-int vik_map_source_download (VikMapSource * self, MapCoord * src, const gchar * dest_fn);
+int vik_map_source_download (VikMapSource * self, MapCoord * src, const gchar * dest_fn, void * handle);
+void * vik_map_source_download_handle_init (VikMapSource * self);
+void vik_map_source_download_handle_cleanup (VikMapSource * self, void * handle);