]> git.street.me.uk Git - andy/viking.git/blobdiff - src/file.h
Add OSM GPS Tiles in default data config
[andy/viking.git] / src / file.h
index 57c5005756e7b15aa880e5182faa0693e7ce1f19..a0b50d4f63f6019fce00ab4c09c97a79b8141772 100644 (file)
@@ -2,6 +2,7 @@
  * viking -- GPS Data and Topo Analyzer, Explorer, and Manager
  *
  * Copyright (C) 2003-2005, Evan Battaglia <gtoevan@gmx.net>
+ * Copyright (C) 2012, Guilhem Bonnefille <guilhem.bonnefille@gmail.com>
  *
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 #include "viktrwlayer.h"
 #include "vikviewport.h"
 
+G_BEGIN_DECLS
+
 typedef enum {
 FILE_TYPE_GPSPOINT=1,
 FILE_TYPE_GPSMAPPER=2,
 FILE_TYPE_GPX=3,
 FILE_TYPE_KML=4,
+FILE_TYPE_GEOJSON=5,
 } VikFileType_t;
 
-const gchar *a_file_basename ( const gchar *filename );
-gboolean check_file_ext ( const gchar *filename, const gchar *fileext );
+gboolean a_file_check_ext ( const gchar *filename, const gchar *fileext );
 
 /*
  * Function to determine if a filename is a 'viking' type file
@@ -46,18 +49,30 @@ gboolean check_file_magic_vik ( const gchar *filename );
 typedef enum {
   LOAD_TYPE_READ_FAILURE,
   LOAD_TYPE_GPSBABEL_FAILURE,
+  LOAD_TYPE_GPX_FAILURE,
   LOAD_TYPE_UNSUPPORTED_FAILURE,
+  LOAD_TYPE_VIK_FAILURE_NON_FATAL,
   LOAD_TYPE_VIK_SUCCESS,
   LOAD_TYPE_OTHER_SUCCESS,
 } VikLoadType_t;
 
-VikLoadType_t a_file_load ( VikAggregateLayer *top, VikViewport *vp, const gchar *filename );
+gchar *append_file_ext ( const gchar *filename, VikFileType_t type );
+
+VikLoadType_t a_file_load ( VikAggregateLayer *top, VikViewport *vp, VikTrwLayer *vtl, const gchar *filename );
 gboolean a_file_save ( VikAggregateLayer *top, gpointer vp, const gchar *filename );
-/* Only need to define VikTrack and trackname if the file type is FILE_TYPE_GPX_TRACK */
-gboolean a_file_export ( VikTrwLayer *vtl, const gchar *filename, VikFileType_t file_type, const gchar *trackname );
-const gchar *a_get_viking_dir();
+/* Only need to define VikTrack if the file type is FILE_TYPE_GPX_TRACK */
+gboolean a_file_export ( VikTrwLayer *vtl, const gchar *filename, VikFileType_t file_type, VikTrack *trk, gboolean write_hidden );
+gboolean a_file_export_babel ( VikTrwLayer *vtl, const gchar *filename, const gchar *format,
+    gboolean tracks, gboolean routes, gboolean waypoints );
+
+void file_write_layer_param ( FILE *f, const gchar *name, VikLayerParamType type, VikLayerParamData data );
+
+char *file_realpath ( const char *path, char *real );
+
+char *file_realpath_dup ( const char *path );
 
-void file_write_layer_param ( FILE *f, const gchar *name, guint8 type, VikLayerParamData data );
+const gchar *file_GetRelativeFilename ( gchar *currentDirectory, gchar *absoluteFilename );
 
+G_END_DECLS
 
 #endif