avltree.h | avltree.h | |||
---|---|---|---|---|
skipping to change at line 69 | skipping to change at line 69 | |||
#define AVLTREE_NON_CASE_SENSITIVE 2 | #define AVLTREE_NON_CASE_SENSITIVE 2 | |||
#define AVLTREE_STATIC_KEYS 128 | #define AVLTREE_STATIC_KEYS 128 | |||
#define AVLTREE_PARANOIAC 256 /* STOP on "duplicate key" ( insert) or on "not found" (delete) */ | #define AVLTREE_PARANOIAC 256 /* STOP on "duplicate key" ( insert) or on "not found" (delete) */ | |||
/* Allocate and initialize an AVL Tree */ | /* Allocate and initialize an AVL Tree */ | |||
avltree_t *avltree_init(const int options, const char *module); | avltree_t *avltree_init(const int options, const char *module); | |||
/* Destroy an AVL Tree */ | /* Destroy an AVL Tree */ | |||
void avltree_done(avltree_t *tree); | void avltree_done(avltree_t *tree); | |||
/* Delete all items of tree [tree]; returns number of deleted items */ | ||||
int avltree_clear(avltree_t *tree); | ||||
/* Get number of items in tree */ | /* Get number of items in tree */ | |||
int avltree_count(const avltree_t *tree); | int avltree_count(const avltree_t *tree); | |||
/* Delete item with key [key] */ | /* Delete item with key [key] */ | |||
int avltree_delete(avltree_t *tree, const char *key); | int avltree_delete(avltree_t *tree, const char *key); | |||
/* Duplicate an existing tree */ | /* Duplicate an existing tree */ | |||
avltree_t *avltree_dupe(const avltree_t *tree, const char *module); | avltree_t *avltree_dupe(const avltree_t *tree, const char *module); | |||
/* Find key [key] in tree */ | /* Find key [key] in tree */ | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 3 lines changed or added | |||
cet.h | cet.h | |||
---|---|---|---|---|
/* | /* | |||
Character encoding transformation - basics header | Character encoding transformation - basics header | |||
Copyright (C) 2005 Olaf Klein, o.b.klein@gpsbabel.org | Copyright (C) 2005-2008 Olaf Klein, o.b.klein@gpsbabel.org | |||
This program is free software; you can redistribute it and/or modify | 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 | it under the terms of the GNU General Public License as published by | |||
the Free Software Foundation; either version 2 of the License, or | the Free Software Foundation; either version 2 of the License, or | |||
(at your option) any later version. | (at your option) any later version. | |||
This program is distributed in the hope that it will be useful, | This program is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
GNU General Public License for more details. | GNU General Public License for more details. | |||
skipping to change at line 71 | skipping to change at line 71 | |||
short cet_utf8_to_char(const char *str, const cet_cs_vec_t *vecint, int *by tes, int *value); | short cet_utf8_to_char(const char *str, const cet_cs_vec_t *vecint, int *by tes, int *value); | |||
short cet_ucs4_to_char(const int value, const cet_cs_vec_t *vec); | short cet_ucs4_to_char(const int value, const cet_cs_vec_t *vec); | |||
/* string to string - vector based */ | /* string to string - vector based */ | |||
char *cet_str_utf8_to_any(const char *src, const cet_cs_vec_t *vec); | char *cet_str_utf8_to_any(const char *src, const cet_cs_vec_t *vec); | |||
char *cet_str_any_to_utf8(const char *src, const cet_cs_vec_t *vec); | char *cet_str_any_to_utf8(const char *src, const cet_cs_vec_t *vec); | |||
char *cet_str_uni_to_utf8(const short *src, const int length); | char *cet_str_uni_to_utf8(const short *src, const int length); | |||
/* UTF-8 string manipulation functions */ | ||||
unsigned int cet_utf8_strlen(const char *str); | ||||
char *cet_utf8_strdup(const char *str); | ||||
char *cet_utf8_strndup(const char *str, const int maxlen); | ||||
/* unicode functions */ | ||||
short *cet_str_any_to_uni(const char *src, const cet_cs_vec_t *vec, int *le | ||||
ngth); | ||||
#endif | #endif | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 12 lines changed or added | |||
cet_util.h | cet_util.h | |||
---|---|---|---|---|
/* | /* | |||
Character encoding transformation - utilities header | Character encoding transformation - utilities header | |||
Copyright (C) 2005 Olaf Klein, o.b.klein@gpsbabel.org | Copyright (C) 2005-2008 Olaf Klein, o.b.klein@gpsbabel.org | |||
This program is free software; you can redistribute it and/or modify | 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 | it under the terms of the GNU General Public License as published by | |||
the Free Software Foundation; either version 2 of the License, or | the Free Software Foundation; either version 2 of the License, or | |||
(at your option) any later version. | (at your option) any later version. | |||
This program is distributed in the hope that it will be useful, | This program is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
GNU General Public License for more details. | GNU General Public License for more details. | |||
skipping to change at line 59 | skipping to change at line 59 | |||
extern cet_cs_vec_t cet_cs_vec_iso8859_1; | extern cet_cs_vec_t cet_cs_vec_iso8859_1; | |||
char *cet_str_iso8859_15_to_utf8(const char *src); | char *cet_str_iso8859_15_to_utf8(const char *src); | |||
char *cet_str_utf8_to_iso8859_15(const char *src); | char *cet_str_utf8_to_iso8859_15(const char *src); | |||
extern const cet_cs_vec_t cet_cs_vec_iso8859_15; | extern const cet_cs_vec_t cet_cs_vec_iso8859_15; | |||
char *cet_str_utf8_to_us_ascii(const char *src); | char *cet_str_utf8_to_us_ascii(const char *src); | |||
char *cet_str_us_ascii_to_utf8(const char *src); | char *cet_str_us_ascii_to_utf8(const char *src); | |||
extern cet_cs_vec_t cet_cs_vec_ansi_x3_4_1968; | extern cet_cs_vec_t cet_cs_vec_ansi_x3_4_1968; | |||
short *cet_str_utf8_to_uni(const char *src, int *length); | ||||
extern cet_cs_vec_t cet_cs_vec_utf8; | extern cet_cs_vec_t cet_cs_vec_utf8; | |||
/* Missing defines in older expat libraries | CET-REVIEW */ | /* Missing defines in older expat libraries | CET-REVIEW */ | |||
/* Taken from expat_external.h (Expat 1.95.7) */ | /* Taken from expat_external.h (Expat 1.95.7) */ | |||
#ifndef XML_STATUS_OK | #ifndef XML_STATUS_OK | |||
# define XML_STATUS_OK 1 | # define XML_STATUS_OK 1 | |||
#endif | #endif | |||
#ifndef XML_STATUS_ERROR | #ifndef XML_STATUS_ERROR | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 3 lines changed or added | |||
config.h | config.h | |||
---|---|---|---|---|
skipping to change at line 53 | skipping to change at line 53 | |||
/* Define to the address where bug reports for this package should be sent. */ | /* Define to the address where bug reports for this package should be sent. */ | |||
#define PACKAGE_BUGREPORT "BUG-REPORT-ADDRESS" | #define PACKAGE_BUGREPORT "BUG-REPORT-ADDRESS" | |||
/* Define to the full name of this package. */ | /* Define to the full name of this package. */ | |||
#define PACKAGE_NAME "GPSBabel" | #define PACKAGE_NAME "GPSBabel" | |||
/* Define to the release name of this package. */ | /* Define to the release name of this package. */ | |||
#define PACKAGE_RELEASE "" | #define PACKAGE_RELEASE "" | |||
/* Define to the full name and version of this package. */ | /* Define to the full name and version of this package. */ | |||
#define PACKAGE_STRING "GPSBabel 1.3.5" | #define PACKAGE_STRING "GPSBabel 1.3.6" | |||
/* Define to the one symbol short name of this package. */ | /* Define to the one symbol short name of this package. */ | |||
#define PACKAGE_TARNAME "gpsbabel" | #define PACKAGE_TARNAME "gpsbabel" | |||
/* Define to the version of this package. */ | /* Define to the version of this package. */ | |||
#define PACKAGE_VERSION "1.3.5" | #define PACKAGE_VERSION "1.3.6" | |||
/* 1 to enable Palm PDB support */ | /* 1 to enable Palm PDB support */ | |||
#define PDBFMTS_ENABLED 1 | #define PDBFMTS_ENABLED 1 | |||
/* 1 to enable shapefile support */ | /* 1 to enable shapefile support */ | |||
#define SHAPELIB_ENABLED 1 | #define SHAPELIB_ENABLED 1 | |||
/* Define to 1 if your processor stores words with the most significant byt e | /* Define to 1 if your processor stores words with the most significant byt e | |||
first (like Motorola and SPARC, unlike Intel and VAX). */ | first (like Motorola and SPARC, unlike Intel and VAX). */ | |||
/* #undef WORDS_BIGENDIAN */ | /* #undef WORDS_BIGENDIAN */ | |||
End of changes. 2 change blocks. | ||||
2 lines changed or deleted | 2 lines changed or added | |||
defs.h | defs.h | |||
---|---|---|---|---|
skipping to change at line 40 | skipping to change at line 40 | |||
#include "gbtypes.h" | #include "gbtypes.h" | |||
#if HAVE_LIBZ | #if HAVE_LIBZ | |||
#include <zlib.h> | #include <zlib.h> | |||
#elif !ZLIB_INHIBITED | #elif !ZLIB_INHIBITED | |||
#include "zlib/zlib.h" | #include "zlib/zlib.h" | |||
#endif | #endif | |||
#include "gbfile.h" | #include "gbfile.h" | |||
#include "cet.h" | #include "cet.h" | |||
#include "cet_util.h" | #include "cet_util.h" | |||
#include "inifile.h" | #include "inifile.h" | |||
#include "session.h" | ||||
// Turn on Unicode in expat? | // Turn on Unicode in expat? | |||
#ifdef _UNICODE | #ifdef _UNICODE | |||
# define XML_UNICODE | # define XML_UNICODE | |||
#endif | #endif | |||
/* | /* | |||
* Amazingly, this constant is not specified in the standard... | * Amazingly, this constant is not specified in the standard... | |||
*/ | */ | |||
#ifndef M_PI | #ifndef M_PI | |||
# define M_PI 3.14159265358979323846 | # define M_PI 3.14159265358979323846 | |||
#endif | #endif | |||
#ifndef FALSE | ||||
# define FALSE 0 | ||||
#endif | ||||
#ifndef TRUE | ||||
# define TRUE !FALSE | ||||
#endif | ||||
#define FEET_TO_METERS(feetsies) ((feetsies) * 0.3048) | #define FEET_TO_METERS(feetsies) ((feetsies) * 0.3048) | |||
#define METERS_TO_FEET(meetsies) ((meetsies) * 3.2808399) | #define METERS_TO_FEET(meetsies) ((meetsies) * 3.2808399) | |||
#define NMILES_TO_METERS(a) ((a) * 1852.0) /* nautical miles */ | #define NMILES_TO_METERS(a) ((a) * 1852.0) /* nautical miles */ | |||
#define MILES_TO_METERS(a) ((a) * 1609.344) | #define MILES_TO_METERS(a) ((a) * 1609.344) | |||
#define METERS_TO_MILES(a) ((a) / 1609.344) | #define METERS_TO_MILES(a) ((a) / 1609.344) | |||
#define FATHOMS_TO_METERS(a) ((a) * 1.8288) | #define FATHOMS_TO_METERS(a) ((a) * 1.8288) | |||
#define CELSIUS_TO_FAHRENHEIT(a) (((a) * 1.8) + 32) | #define CELSIUS_TO_FAHRENHEIT(a) (((a) * 1.8) + 32) | |||
#define FAHRENHEIT_TO_CELSIUS(a) (((a) - 32) / 1.8) | #define FAHRENHEIT_TO_CELSIUS(a) (((a) - 32) / 1.8) | |||
skipping to change at line 291 | skipping to change at line 300 | |||
typedef struct format_specific_data { | typedef struct format_specific_data { | |||
long type; | long type; | |||
struct format_specific_data *next; | struct format_specific_data *next; | |||
fs_destroy destroy; | fs_destroy destroy; | |||
fs_copy copy; | fs_copy copy; | |||
fs_convert convert; | fs_convert convert; | |||
} format_specific_data; | } format_specific_data; | |||
typedef struct { | ||||
int bbggrr; // 32 bit color: Blue/Green/Red. < 0 == unknown. | ||||
unsigned char opacity; // 0 == transparent. 255 == opaque. | ||||
} gb_color; | ||||
format_specific_data *fs_chain_copy( format_specific_data *source ); | format_specific_data *fs_chain_copy( format_specific_data *source ); | |||
void fs_chain_destroy( format_specific_data *chain ); | void fs_chain_destroy( format_specific_data *chain ); | |||
format_specific_data *fs_chain_find( format_specific_data *chain, long type ); | format_specific_data *fs_chain_find( format_specific_data *chain, long type ); | |||
void fs_chain_add( format_specific_data **chain, format_specific_data *data ); | void fs_chain_add( format_specific_data **chain, format_specific_data *data ); | |||
typedef struct fs_xml { | typedef struct fs_xml { | |||
format_specific_data fs; | format_specific_data fs; | |||
xml_tag *tag; | xml_tag *tag; | |||
} fs_xml; | } fs_xml; | |||
skipping to change at line 337 | skipping to change at line 351 | |||
/* "flagged fields" */ | /* "flagged fields" */ | |||
unsigned int temperature:1; /* temperature field is set */ | unsigned int temperature:1; /* temperature field is set */ | |||
unsigned int proximity:1; /* proximity field is set */ | unsigned int proximity:1; /* proximity field is set */ | |||
unsigned int course:1; /* course field is set */ | unsigned int course:1; /* course field is set */ | |||
unsigned int speed:1; /* speed field is set */ | unsigned int speed:1; /* speed field is set */ | |||
unsigned int depth:1; /* depth field is set */ | unsigned int depth:1; /* depth field is set */ | |||
/* !ToDo! | /* !ToDo! | |||
unsigned int altitude:1; /+ altitude field is set +/ | unsigned int altitude:1; /+ altitude field is set +/ | |||
... and others | ... and others | |||
*/ | */ | |||
unsigned int is_split:1; /* the waypoint represents a split */ | ||||
} wp_flags; | } wp_flags; | |||
#define WAYPT_SET(wpt,member,val) { wpt->member = (val); wpt->wpt_flags.mem ber = 1; } | #define WAYPT_SET(wpt,member,val) { wpt->member = (val); wpt->wpt_flags.mem ber = 1; } | |||
#define WAYPT_GET(wpt,member,def) ((wpt->wpt_flags.member) ? (wpt->member) : (def)) | #define WAYPT_GET(wpt,member,def) ((wpt->wpt_flags.member) ? (wpt->member) : (def)) | |||
#define WAYPT_UNSET(wpt,member) wpt->wpt_flags.member = 0 | #define WAYPT_UNSET(wpt,member) wpt->wpt_flags.member = 0 | |||
#define WAYPT_HAS(wpt,member) (wpt->wpt_flags.member) | #define WAYPT_HAS(wpt,member) (wpt->wpt_flags.member) | |||
/* | /* | |||
* This is a waypoint, as stored in the GPSR. It tries to not | * This is a waypoint, as stored in the GPSR. It tries to not | |||
* cater to any specific model or protocol. Anything that needs to | * cater to any specific model or protocol. Anything that needs to | |||
skipping to change at line 436 | skipping to change at line 451 | |||
float vdop; | float vdop; | |||
float pdop; | float pdop; | |||
float course; /* Optional: degrees true */ | float course; /* Optional: degrees true */ | |||
float speed; /* Optional: meters per second. */ | float speed; /* Optional: meters per second. */ | |||
fix_type fix; /* Optional: 3d, 2d, etc. */ | fix_type fix; /* Optional: 3d, 2d, etc. */ | |||
int sat; /* Optional: number of sats used for fix */ | int sat; /* Optional: number of sats used for fix */ | |||
unsigned char heartrate; /* Beats/min. likely to get moved to fs. */ | unsigned char heartrate; /* Beats/min. likely to get moved to fs. */ | |||
unsigned char cadence; /* revolutions per minute */ | unsigned char cadence; /* revolutions per minute */ | |||
float temperature; /* Degrees celsius */ | float temperature; /* Degrees celsius */ | |||
geocache_data gc_data; | const geocache_data *gc_data; | |||
format_specific_data *fs; | format_specific_data *fs; | |||
session_t *session; /* pointer to a session struct */ | ||||
void *extra_data; /* Extra data added by, say, a filter. */ | void *extra_data; /* Extra data added by, say, a filter. */ | |||
} waypoint; | } waypoint; | |||
typedef struct { | typedef struct { | |||
queue Q; /* Link onto parent list. */ | queue Q; /* Link onto parent list. */ | |||
queue waypoint_list; /* List of child waypoints */ | queue waypoint_list; /* List of child waypoints */ | |||
char *rte_name; | char *rte_name; | |||
char *rte_desc; | char *rte_desc; | |||
char *rte_url; | char *rte_url; | |||
int rte_num; | int rte_num; | |||
int rte_waypt_ct; /* # waypoints in waypoint list */ | int rte_waypt_ct; /* # waypoints in waypoint list */ | |||
format_specific_data *fs; | format_specific_data *fs; | |||
unsigned short cet_converted; /* strings are converted to UTF8; in teresting only for input */ | unsigned short cet_converted; /* strings are converted to UTF8; in teresting only for input */ | |||
gb_color line_color; /* Optional line color for rendering * | ||||
/ | ||||
int line_width; /* in pixels (sigh). < 0 is unknown. */ | ||||
session_t *session; /* pointer to a session struct */ | ||||
} route_head; | } route_head; | |||
/* | /* | |||
* Structure of recomputed track/roue data. | * Structure of recomputed track/roue data. | |||
*/ | */ | |||
typedef struct { | typedef struct { | |||
double distance_meters; | double distance_meters; | |||
double max_alt; | double max_alt; | |||
double min_alt; | double min_alt; | |||
double max_spd; /* Meters/sec */ | double max_spd; /* Meters/sec */ | |||
skipping to change at line 519 | skipping to change at line 538 | |||
typedef void (*waypt_cb) (const waypoint *); | typedef void (*waypt_cb) (const waypoint *); | |||
typedef void (*route_hdr)(const route_head *); | typedef void (*route_hdr)(const route_head *); | |||
typedef void (*route_trl)(const route_head *); | typedef void (*route_trl)(const route_head *); | |||
void waypt_add (waypoint *); | void waypt_add (waypoint *); | |||
waypoint * waypt_dupe (const waypoint *); | waypoint * waypt_dupe (const waypoint *); | |||
waypoint * waypt_new(void); | waypoint * waypt_new(void); | |||
void waypt_del (waypoint *); | void waypt_del (waypoint *); | |||
void waypt_free (waypoint *); | void waypt_free (waypoint *); | |||
void waypt_disp_all(waypt_cb); | void waypt_disp_all(waypt_cb); | |||
void waypt_disp_session(const session_t *se, waypt_cb cb); | ||||
void waypt_init_bounds(bounds *bounds); | void waypt_init_bounds(bounds *bounds); | |||
int waypt_bounds_valid(bounds *bounds); | int waypt_bounds_valid(bounds *bounds); | |||
void waypt_add_to_bounds(bounds *bounds, const waypoint *waypointp); | void waypt_add_to_bounds(bounds *bounds, const waypoint *waypointp); | |||
void waypt_compute_bounds(bounds *); | void waypt_compute_bounds(bounds *); | |||
void waypt_flush(queue *); | void waypt_flush(queue *); | |||
void waypt_flush_all(void); | void waypt_flush_all(void); | |||
unsigned int waypt_count(void); | unsigned int waypt_count(void); | |||
void set_waypt_count(unsigned int nc); | void set_waypt_count(unsigned int nc); | |||
void waypt_add_url(waypoint *wpt, char *link, char *url_link_text); | void waypt_add_url(waypoint *wpt, char *link, char *url_link_text); | |||
void free_gpx_extras (xml_tag * tag); | void free_gpx_extras (xml_tag * tag); | |||
void xcsv_setup_internal_style(const char *style_buf); | void xcsv_setup_internal_style(const char *style_buf); | |||
void xcsv_read_internal_style(const char *style_buf); | void xcsv_read_internal_style(const char *style_buf); | |||
waypoint * find_waypt_by_name(const char *name); | waypoint * find_waypt_by_name(const char *name); | |||
void waypt_backup(signed int *count, queue **head_bak); | void waypt_backup(signed int *count, queue **head_bak); | |||
void waypt_restore(signed int count, queue *head_bak); | void waypt_restore(signed int count, queue *head_bak); | |||
geocache_data *waypt_alloc_gc_data(waypoint *wpt); | ||||
int waypt_empty_gc_data(const waypoint *wpt); | ||||
geocache_type gs_mktype(const char *t); | ||||
geocache_container gs_mkcont(const char *t); | ||||
route_head *route_head_alloc(void); | route_head *route_head_alloc(void); | |||
void route_add (waypoint *); | void route_add (waypoint *); | |||
void route_add_wpt(route_head *rte, waypoint *wpt); | void route_add_wpt(route_head *rte, waypoint *wpt); | |||
void route_del_wpt(route_head *rte, waypoint *wpt); | void route_del_wpt(route_head *rte, waypoint *wpt); | |||
void track_add_wpt(route_head *rte, waypoint *wpt); | void track_add_wpt(route_head *rte, waypoint *wpt); | |||
void track_del_wpt(route_head *rte, waypoint *wpt); | void track_del_wpt(route_head *rte, waypoint *wpt); | |||
void route_add_head(route_head *rte); | void route_add_head(route_head *rte); | |||
void route_del_head(route_head *rte); | void route_del_head(route_head *rte); | |||
void route_reverse(const route_head *rte_hd); | void route_reverse(const route_head *rte_hd); | |||
waypoint * route_find_waypt_by_name(route_head *rh, const char *name); | waypoint * route_find_waypt_by_name(route_head *rh, const char *name); | |||
void track_add_head(route_head *rte); | void track_add_head(route_head *rte); | |||
void track_del_head(route_head *rte); | void track_del_head(route_head *rte); | |||
void route_disp(const route_head *rte, waypt_cb); | void route_disp(const route_head *rte, waypt_cb); | |||
void route_disp_all(route_hdr, route_trl, waypt_cb); | void route_disp_all(route_hdr, route_trl, waypt_cb); | |||
void track_disp_all(route_hdr, route_trl, waypt_cb); | void track_disp_all(route_hdr, route_trl, waypt_cb); | |||
void route_disp_session(const session_t *se, route_hdr rh, route_trl rt, wa | ||||
ypt_cb wc); | ||||
void track_disp_session(const session_t *se, route_hdr rh, route_trl rt, wa | ||||
ypt_cb wc); | ||||
void route_flush( queue *); | void route_flush( queue *); | |||
void route_flush_all(void); | void route_flush_all(void); | |||
void route_flush_all_routes(void); | void route_flush_all_routes(void); | |||
void route_flush_all_tracks(void); | void route_flush_all_tracks(void); | |||
route_head * route_find_route_by_name(const char *name); | route_head * route_find_route_by_name(const char *name); | |||
route_head * route_find_track_by_name(const char *name); | route_head * route_find_track_by_name(const char *name); | |||
unsigned int route_waypt_count(void); | unsigned int route_waypt_count(void); | |||
unsigned int route_count(void); | unsigned int route_count(void); | |||
unsigned int track_waypt_count(void); | unsigned int track_waypt_count(void); | |||
unsigned int track_count(void); | unsigned int track_count(void); | |||
skipping to change at line 594 | skipping to change at line 621 | |||
char *mkshort_from_wpt(short_handle h, const waypoint *wpt); | char *mkshort_from_wpt(short_handle h, const waypoint *wpt); | |||
void mkshort_del_handle(short_handle *h); | void mkshort_del_handle(short_handle *h); | |||
void setshort_length(short_handle, int n); | void setshort_length(short_handle, int n); | |||
void setshort_badchars(short_handle, const char *); | void setshort_badchars(short_handle, const char *); | |||
void setshort_goodchars(short_handle, const char *); | void setshort_goodchars(short_handle, const char *); | |||
void setshort_mustupper(short_handle, int n); | void setshort_mustupper(short_handle, int n); | |||
void setshort_mustuniq(short_handle, int n); | void setshort_mustuniq(short_handle, int n); | |||
void setshort_whitespace_ok(short_handle, int n); | void setshort_whitespace_ok(short_handle, int n); | |||
void setshort_repeating_whitespace_ok(short_handle, int n); | void setshort_repeating_whitespace_ok(short_handle, int n); | |||
void setshort_defname(short_handle, const char *s); | void setshort_defname(short_handle, const char *s); | |||
void setshort_is_utf8(short_handle h, const int is_utf8); | ||||
/* | /* | |||
* Vmem flags values. | * Vmem flags values. | |||
*/ | */ | |||
#define VMFL_NOZERO (1 << 0) | #define VMFL_NOZERO (1 << 0) | |||
typedef struct vmem { | typedef struct vmem { | |||
void *mem; /* visible memory object */ | void *mem; /* visible memory object */ | |||
size_t size; /* allocated size of object */ | size_t size; /* allocated size of object */ | |||
} vmem_t; | } vmem_t; | |||
vmem_t vmem_alloc(size_t, int flags); | vmem_t vmem_alloc(size_t, int flags); | |||
skipping to change at line 645 | skipping to change at line 673 | |||
#define ARGTYPE_BEGIN_REQ 0x04000000 | #define ARGTYPE_BEGIN_REQ 0x04000000 | |||
#define ARGTYPE_END_REQ 0x02000000 | #define ARGTYPE_END_REQ 0x02000000 | |||
#define ARGTYPE_TYPEMASK 0x00000fff | #define ARGTYPE_TYPEMASK 0x00000fff | |||
#define ARGTYPE_FLAGMASK 0xfffff000 | #define ARGTYPE_FLAGMASK 0xfffff000 | |||
#define ARG_NOMINMAX NULL, NULL | #define ARG_NOMINMAX NULL, NULL | |||
#define ARG_TERMINATOR {0, 0, 0, 0, 0, ARG_NOMINMAX} | #define ARG_TERMINATOR {0, 0, 0, 0, 0, ARG_NOMINMAX} | |||
typedef struct arglist { | typedef struct arglist { | |||
char *argstring; | const char *argstring; | |||
char **argval; | char **argval; | |||
char *helpstring; | const char *helpstring; | |||
char *defaultvalue; | const char *defaultvalue; | |||
gbuint32 argtype; | const gbuint32 argtype; | |||
char *minvalue; /* minimum value for numeric options */ | const char *minvalue; /* minimum value for numeric options | |||
char *maxvalue; /* maximum value for numeric options */ | */ | |||
const char *maxvalue; /* maximum value for numeric options | ||||
*/ | ||||
char *argvalptr; /* !!! internal helper. Not used in definiti | ||||
ons !!! */ | ||||
} arglist_t; | } arglist_t; | |||
typedef enum { | typedef enum { | |||
ff_type_file = 1, /* normal format: useful to a GUI. */ | ff_type_file = 1, /* normal format: useful to a GUI. */ | |||
ff_type_internal, /* fmt not useful with default options */ | ff_type_internal, /* fmt not useful with default options */ | |||
ff_type_serial /* format describes a serial protocol (GUI c an display port names) */ | ff_type_serial /* format describes a serial protocol (GUI c an display port names) */ | |||
} ff_type; | } ff_type; | |||
typedef enum { | typedef enum { | |||
ff_cap_rw_wpt, | ff_cap_rw_wpt, | |||
skipping to change at line 705 | skipping to change at line 734 | |||
ff_type type; | ff_type type; | |||
ff_cap cap[3]; | ff_cap cap[3]; | |||
ff_init rd_init; | ff_init rd_init; | |||
ff_init wr_init; | ff_init wr_init; | |||
ff_deinit rd_deinit; | ff_deinit rd_deinit; | |||
ff_deinit wr_deinit; | ff_deinit wr_deinit; | |||
ff_read read; | ff_read read; | |||
ff_write write; | ff_write write; | |||
ff_exit exit; | ff_exit exit; | |||
arglist_t *args; | arglist_t *args; | |||
char *encode; | const char *encode; | |||
int fixed_encode; | int fixed_encode; | |||
position_ops_t position_ops; | position_ops_t position_ops; | |||
const char *name; /* dyn. initialized by find_vec */ | ||||
} ff_vecs_t; | } ff_vecs_t; | |||
typedef struct style_vecs { | typedef struct style_vecs { | |||
const char *name; | const char *name; | |||
const char *style_buf; | const char *style_buf; | |||
} style_vecs_t; | } style_vecs_t; | |||
extern style_vecs_t style_list[]; | extern style_vecs_t style_list[]; | |||
void waypt_init(void); | void waypt_init(void); | |||
void route_init(void); | void route_init(void); | |||
skipping to change at line 736 | skipping to change at line 766 | |||
NORETURN fatal(const char *, ...) PRINTFLIKE(1, 2); | NORETURN fatal(const char *, ...) PRINTFLIKE(1, 2); | |||
void is_fatal(const int condition, const char *, ...) PRINTFLIKE(2, 3); | void is_fatal(const int condition, const char *, ...) PRINTFLIKE(2, 3); | |||
void warning(const char *, ...) PRINTFLIKE(1, 2); | void warning(const char *, ...) PRINTFLIKE(1, 2); | |||
ff_vecs_t *find_vec(char * const, char **); | ff_vecs_t *find_vec(char * const, char **); | |||
void assign_option(const char *vecname, arglist_t *ap, const char *val); | void assign_option(const char *vecname, arglist_t *ap, const char *val); | |||
void disp_vec_options(const char *vecname, arglist_t *ap); | void disp_vec_options(const char *vecname, arglist_t *ap); | |||
void disp_vecs(void); | void disp_vecs(void); | |||
void disp_vec( const char *vecname ); | void disp_vec( const char *vecname ); | |||
void init_vecs(void); | ||||
void exit_vecs(void); | void exit_vecs(void); | |||
void disp_formats(int version); | void disp_formats(int version); | |||
const char * name_option(long type); | const char * name_option(long type); | |||
void printposn(const double c, int is_lat); | void printposn(const double c, int is_lat); | |||
#ifndef DEBUG_MEM | #ifndef DEBUG_MEM | |||
void *xcalloc(size_t nmemb, size_t size); | void *xcalloc(size_t nmemb, size_t size); | |||
void *xmalloc(size_t size); | void *xmalloc(size_t size); | |||
void *xrealloc(void *p, size_t s); | void *xrealloc(void *p, size_t s); | |||
void xfree(void *mem); | void xfree(void *mem); | |||
skipping to change at line 818 | skipping to change at line 849 | |||
signed int month_lookup(const char *m); | signed int month_lookup(const char *m); | |||
const char *get_cache_icon(const waypoint *waypointp); | const char *get_cache_icon(const waypoint *waypointp); | |||
const char *gs_get_cachetype(geocache_type t); | const char *gs_get_cachetype(geocache_type t); | |||
const char *gs_get_container(geocache_container t); | const char *gs_get_container(geocache_container t); | |||
char * xml_entitize(const char * str); | char * xml_entitize(const char * str); | |||
char * html_entitize(const char * str); | char * html_entitize(const char * str); | |||
char * strip_html(const utf_string*); | char * strip_html(const utf_string*); | |||
char * strip_nastyhtml(const char * in); | char * strip_nastyhtml(const char * in); | |||
char * convert_human_date_format(const char *human_datef); /* "MM,YYYY, DD" -> "%m,%Y,%d" */ | char * convert_human_date_format(const char *human_datef); /* "MM,YYYY, DD" -> "%m,%Y,%d" */ | |||
char * convert_human_time_format(const char *human_timef); /* "HH+mm+ss " -> "%H+%M+%S" */ | char * convert_human_time_format(const char *human_timef); /* "HH+mm+ss " -> "%H+%M+%S" */ | |||
char * pretty_deg_format(double lat, double lon, char fmt, char *sep, int h tml); /* decimal -> dd.dddd or dd mm.mmm or dd mm ss */ | char * pretty_deg_format(double lat, double lon, char fmt, const char *sep, int html); /* decimal -> dd.dddd or dd mm.mmm or dd mm ss */ | |||
char * get_filename(const char *fname); /* e xtract the filename portion */ | char * get_filename(const char *fname); /* e xtract the filename portion */ | |||
/* | /* | |||
* Character encoding transformations. | * Character encoding transformations. | |||
*/ | */ | |||
#define CET_NOT_CONVERTABLE_DEFAULT '$' | #define CET_NOT_CONVERTABLE_DEFAULT '$' | |||
#define CET_CHARSET_ASCII "US-ASCII" | #define CET_CHARSET_ASCII "US-ASCII" | |||
#define CET_CHARSET_UTF8 "UTF-8" | #define CET_CHARSET_UTF8 "UTF-8" | |||
skipping to change at line 841 | skipping to change at line 872 | |||
#define str_utf8_to_cp1252(str) cet_str_utf8_to_cp1252((str)) | #define str_utf8_to_cp1252(str) cet_str_utf8_to_cp1252((str)) | |||
#define str_cp1252_to_utf8(str) cet_str_cp1252_to_utf8((str)) | #define str_cp1252_to_utf8(str) cet_str_cp1252_to_utf8((str)) | |||
#define str_utf8_to_iso8859_1(str) cet_str_utf8_to_iso8859_1((str)) | #define str_utf8_to_iso8859_1(str) cet_str_utf8_to_iso8859_1((str)) | |||
#define str_iso8859_1_to_utf8(str) cet_str_iso8859_1_to_utf8((str)) | #define str_iso8859_1_to_utf8(str) cet_str_iso8859_1_to_utf8((str)) | |||
/* this lives in gpx.c */ | /* this lives in gpx.c */ | |||
time_t xml_parse_time( const char *cdatastr, int * microsecs ); | time_t xml_parse_time( const char *cdatastr, int * microsecs ); | |||
xml_tag *xml_findfirst( xml_tag *root, char *tagname ); | xml_tag *xml_findfirst( xml_tag *root, const char *tagname ); | |||
xml_tag *xml_findnext( xml_tag *root, xml_tag *cur, char *tagname ); | xml_tag *xml_findnext( xml_tag *root, xml_tag *cur, const char *tagname ); | |||
char *xml_attribute( xml_tag *tag, char *attrname ); | char *xml_attribute( xml_tag *tag, const char *attrname ); | |||
char * rot13( const char *str ); | char * rot13( const char *str ); | |||
/* | /* | |||
* PalmOS records like fixed-point numbers, which should be rounded | * PalmOS records like fixed-point numbers, which should be rounded | |||
* to deal with possible floating-point representation errors. | * to deal with possible floating-point representation errors. | |||
*/ | */ | |||
signed int si_round( double d ); | signed int si_round( double d ); | |||
skipping to change at line 932 | skipping to change at line 963 | |||
grid_utm = 4, | grid_utm = 4, | |||
grid_swiss = 5 | grid_swiss = 5 | |||
} grid_type; | } grid_type; | |||
#define GRID_INDEX_MIN grid_lat_lon_ddd | #define GRID_INDEX_MIN grid_lat_lon_ddd | |||
#define GRID_INDEX_MAX grid_swiss | #define GRID_INDEX_MAX grid_swiss | |||
#define DATUM_OSGB36 86 | #define DATUM_OSGB36 86 | |||
#define DATUM_WGS84 118 | #define DATUM_WGS84 118 | |||
/* bit manipulation functions (util.c) */ | ||||
char gb_getbit(const void *buf, const gbuint32 nr); | ||||
void gb_setbit(void *buf, const gbuint32 nr); | ||||
void *gb_int2ptr(const int i); | ||||
int gb_ptr2int(const void *p); | ||||
/* | /* | |||
* From parse.c | * From parse.c | |||
*/ | */ | |||
int parse_coordinates(const char *str, int datum, const grid_type grid, | int parse_coordinates(const char *str, int datum, const grid_type grid, | |||
double *latitude, double *longitude, const char *module); | double *latitude, double *longitude, const char *module); | |||
int parse_distance(const char *str, double *val, double scale, const char * module); | int parse_distance(const char *str, double *val, double scale, const char * module); | |||
int parse_speed(const char *str, double *val, const double scale, const cha r *module); | int parse_speed(const char *str, double *val, const double scale, const cha r *module); | |||
time_t parse_date(const char *str, const char *format, const char *module); | ||||
/* | /* | |||
* From util_crc.c | * From util_crc.c | |||
*/ | */ | |||
unsigned long get_crc32(const void * data, int datalen); | unsigned long get_crc32(const void * data, int datalen); | |||
unsigned long get_crc32_s(const void * data); | unsigned long get_crc32_s(const void * data); | |||
/* | /* | |||
* From units.c | * From units.c | |||
*/ | */ | |||
skipping to change at line 979 | skipping to change at line 1019 | |||
/* | /* | |||
* Color helpers. | * Color helpers. | |||
*/ | */ | |||
int color_to_bbggrr(char *cname); | int color_to_bbggrr(char *cname); | |||
/* | /* | |||
* A constant for unknown altitude. It's tempting to just use zero | * A constant for unknown altitude. It's tempting to just use zero | |||
* but that's not very nice for the folks near sea level. | * but that's not very nice for the folks near sea level. | |||
*/ | */ | |||
#define unknown_alt -99999999.0 | #define unknown_alt -99999999.0 | |||
#define unknown_color -1 | ||||
#endif /* gpsbabel_defs_h_included */ | #endif /* gpsbabel_defs_h_included */ | |||
End of changes. 21 change blocks. | ||||
12 lines changed or deleted | 59 lines changed or added | |||
filterdefs.h | filterdefs.h | |||
---|---|---|---|---|
skipping to change at line 43 | skipping to change at line 43 | |||
filter_exit f_exit; | filter_exit f_exit; | |||
arglist_t *args; | arglist_t *args; | |||
} filter_vecs_t; | } filter_vecs_t; | |||
filter_vecs_t * find_filter_vec(char * const, char **); | filter_vecs_t * find_filter_vec(char * const, char **); | |||
void free_filter_vec(filter_vecs_t *); | void free_filter_vec(filter_vecs_t *); | |||
void disp_filters(int version); | void disp_filters(int version); | |||
void disp_filter( const char *vecname ); | void disp_filter( const char *vecname ); | |||
void disp_filter_vec( const char *vecname ); | void disp_filter_vec( const char *vecname ); | |||
void disp_filter_vecs(void); | void disp_filter_vecs(void); | |||
void init_filter_vecs(void); | ||||
void exit_filter_vecs(void); | void exit_filter_vecs(void); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
garmin_fs.h | garmin_fs.h | |||
---|---|---|---|---|
skipping to change at line 80 | skipping to change at line 80 | |||
unsigned int display:1; | unsigned int display:1; | |||
unsigned int category:1; | unsigned int category:1; | |||
unsigned int city:1; | unsigned int city:1; | |||
unsigned int state:1; | unsigned int state:1; | |||
unsigned int facility:1; | unsigned int facility:1; | |||
unsigned int cc:1; | unsigned int cc:1; | |||
unsigned int cross_road:1; | unsigned int cross_road:1; | |||
unsigned int addr:1; | unsigned int addr:1; | |||
unsigned int country:1; | unsigned int country:1; | |||
unsigned int phone_nr:1; | unsigned int phone_nr:1; | |||
unsigned int phone_nr2:1; | ||||
unsigned int fax_nr:1; | ||||
unsigned int postal_code:1; | unsigned int postal_code:1; | |||
unsigned int email:1; | ||||
#ifdef GMSD_EXPERIMENTAL | #ifdef GMSD_EXPERIMENTAL | |||
unsigned int subclass:1; | unsigned int subclass:1; | |||
#endif | #endif | |||
} garmin_fs_flags_t; | } garmin_fs_flags_t; | |||
typedef struct garmin_fs_s | typedef struct garmin_fs_s | |||
{ | { | |||
format_specific_data fs; | format_specific_data fs; | |||
garmin_fs_flags_t flags; | garmin_fs_flags_t flags; | |||
skipping to change at line 105 | skipping to change at line 108 | |||
gbint32 display; | gbint32 display; | |||
gbint16 category; | gbint16 category; | |||
char *city; /* city name */ | char *city; /* city name */ | |||
char *facility; /* facility name */ | char *facility; /* facility name */ | |||
char *state; /* state */ | char *state; /* state */ | |||
char *cc; /* country code */ | char *cc; /* country code */ | |||
char *cross_road; /* Intersection road label */ | char *cross_road; /* Intersection road label */ | |||
char *addr; /* address + number */ | char *addr; /* address + number */ | |||
char *country; /* country */ | char *country; /* country */ | |||
char *phone_nr; /* phone number */ | char *phone_nr; /* phone number */ | |||
char *phone_nr2; /* phone number (2) */ | ||||
char *fax_nr; /* fax number */ | ||||
char *postal_code; /* postal code */ | char *postal_code; /* postal code */ | |||
char *email; /* email address */ | ||||
garmin_ilink_t *ilinks; | garmin_ilink_t *ilinks; | |||
#ifdef GMSD_EXPERIMENTAL | #ifdef GMSD_EXPERIMENTAL | |||
char subclass[22]; | char subclass[22]; | |||
#endif | #endif | |||
} garmin_fs_t, *garmin_fs_p; | } garmin_fs_t, *garmin_fs_p; | |||
garmin_fs_t *garmin_fs_alloc(const int protocol); | garmin_fs_t *garmin_fs_alloc(const int protocol); | |||
void garmin_fs_destroy(void *fs); | void garmin_fs_destroy(void *fs); | |||
void garmin_fs_copy(garmin_fs_t **dest, garmin_fs_t *src); | void garmin_fs_copy(garmin_fs_t **dest, garmin_fs_t *src); | |||
void garmin_fs_convert(void *fs); | void garmin_fs_convert(void *fs); | |||
End of changes. 4 change blocks. | ||||
0 lines changed or deleted | 6 lines changed or added | |||
garmin_tables.h | garmin_tables.h | |||
---|---|---|---|---|
skipping to change at line 64 | skipping to change at line 64 | |||
gt_waypt_class_map_area, | gt_waypt_class_map_area, | |||
gt_waypt_class_map_intersection, | gt_waypt_class_map_intersection, | |||
gt_waypt_class_map_address, | gt_waypt_class_map_address, | |||
gt_waypt_class_map_line | gt_waypt_class_map_line | |||
} gt_waypt_classes_e; | } gt_waypt_classes_e; | |||
extern char *gt_waypt_class_names[]; | extern char *gt_waypt_class_names[]; | |||
typedef struct gt_country_code_s | typedef struct gt_country_code_s | |||
{ | { | |||
char *cc; | const char *cc; | |||
char *country; | const char *country; | |||
} gt_country_code_t; | } gt_country_code_t; | |||
extern gt_country_code_t gt_country_codes[]; | extern gt_country_code_t gt_country_codes[]; | |||
char *gt_get_icao_country(const char *cc); | const char *gt_get_icao_country(const char *cc); | |||
char *gt_get_icao_cc(const char *country, const char *shortname); | const char *gt_get_icao_cc(const char *country, const char *shortname); | |||
/* this order is used by most devices */ | /* this order is used by most devices */ | |||
typedef enum { | typedef enum { | |||
gt_display_mode_symbol_and_name = 0, | gt_display_mode_symbol_and_name = 0, | |||
gt_display_mode_symbol, | gt_display_mode_symbol, | |||
gt_display_mode_symbol_and_comment | gt_display_mode_symbol_and_comment | |||
} gt_display_modes_e; | } gt_display_modes_e; | |||
extern char *gt_display_mode_names[]; | extern char *gt_display_mode_names[]; | |||
skipping to change at line 96 | skipping to change at line 96 | |||
gt_gdb_display_mode_symbol = 0, | gt_gdb_display_mode_symbol = 0, | |||
gt_gdb_display_mode_symbol_and_name, | gt_gdb_display_mode_symbol_and_name, | |||
gt_gdb_display_mode_symbol_and_comment | gt_gdb_display_mode_symbol_and_comment | |||
} gt_gdb_display_modes_e; | } gt_gdb_display_modes_e; | |||
unsigned char gt_convert_category(const char *name, int *category); | unsigned char gt_convert_category(const char *name, int *category); | |||
unsigned char gt_switch_display_mode_value(const unsigned char display_mode , const int protoid, const char device); | unsigned char gt_switch_display_mode_value(const unsigned char display_mode , const int protoid, const char device); | |||
grid_type gt_lookup_grid_type(const char *grid_name, const char *module); | grid_type gt_lookup_grid_type(const char *grid_name, const char *module); | |||
char *gt_get_mps_grid_longname(const grid_type grid, const char *module); | const char *gt_get_mps_grid_longname(const grid_type grid, const char *modu le); | |||
int gt_lookup_datum_index(const char *datum_str, const char *module); | int gt_lookup_datum_index(const char *datum_str, const char *module); | |||
char *gt_get_mps_datum_name(const int datum_index); | const char *gt_get_mps_datum_name(const int datum_index); | |||
gbuint32 gt_color_value(const int garmin_index); | ||||
gbuint32 gt_color_value_by_name(const char *name); | ||||
int gt_color_index_by_name(const char *name); | ||||
int gt_color_index_by_rgb(const int rgb); | ||||
const char *gt_color_name(const int garmin_index); | ||||
#endif | #endif | |||
End of changes. 4 change blocks. | ||||
6 lines changed or deleted | 11 lines changed or added | |||
gbfile.h | gbfile.h | |||
---|---|---|---|---|
/* | /* | |||
Common GPSBabel file I/O API | Common GPSBabel file I/O API | |||
Copyright (C) 2006 Olaf Klein | Copyright (C) 2006,2007,2008 Olaf Klein, o.b.klein@gpsbabel.org | |||
This program is free software; you can redistribute it and/or modify | 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 | it under the terms of the GNU General Public License as published by | |||
the Free Software Foundation; either version 2 of the License, or | the Free Software Foundation; either version 2 of the License, or | |||
(at your option) any later version. | (at your option) any later version. | |||
This program is distributed in the hope that it will be useful, | This program is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
GNU General Public License for more details. | GNU General Public License for more details. | |||
You should have received a copy of the GNU General Public License | You should have received a copy of the GNU General Public License | |||
along with this program; if not, write to the Free Software | along with this program; if not, write to the Free Software | |||
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA | Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA | |||
*/ | */ | |||
#ifndef GBFILE_H | #ifndef GBFILE_H | |||
#define GBFILE_H | #define GBFILE_H | |||
#include <ctype.h> | ||||
#include <stdarg.h> | ||||
#include <string.h> | ||||
#include "config.h" | #include "config.h" | |||
#include "defs.h" | #include "defs.h" | |||
#include <stdarg.h> | #include "cet.h" | |||
struct gbfile_s; | ||||
typedef struct gbfile_s gbfile; | ||||
typedef void (*gbfclearerr_cb) (gbfile *self); | ||||
typedef int (*gbfclose_cb) (gbfile *self); | ||||
typedef int (*gbfeof_cb) (gbfile *self); | ||||
typedef int (*gbferror_cb) (gbfile *self); | ||||
typedef int (*gbfflush_cb) (gbfile *self); | ||||
typedef gbfile* (*gbfopen_cb) (gbfile *self, const char *mode); | ||||
typedef gbsize_t (*gbfread_cb) (void *buf, const gbsize_t size, const gbsiz | ||||
e_t members, gbfile *self); | ||||
typedef int (*gbfseek_cb) (gbfile *self, gbint32 offset, int whence); | ||||
typedef gbsize_t (*gbftell_cb) (gbfile *self); | ||||
typedef gbsize_t (*gbfwrite_cb) (const void *buf, const gbsize_t size, cons | ||||
t gbsize_t members, gbfile *self); | ||||
typedef int (*gbfungetc_cb) (const int c, gbfile *self); | ||||
typedef struct gbfile_s { | typedef struct gbfile_s { | |||
#ifdef DEBUG_MEM | #ifdef DEBUG_MEM | |||
void *dummy; /* ZERO pointer for stdio oop's */ | void *dummy; /* ZERO pointer for stdio oop's */ | |||
#endif | #endif | |||
union { | union { | |||
FILE *std; | FILE *std; | |||
unsigned char *mem; | ||||
#if !ZLIB_INHIBITED | #if !ZLIB_INHIBITED | |||
gzFile *gz; | gzFile *gz; | |||
#endif | #endif | |||
} handle; | } handle; | |||
char *name; | char *name; | |||
char *module; | char *module; | |||
char *line; | ||||
int linesz; | ||||
char *buff; /* static growing buffer, primary used by gbprintf * / | char *buff; /* static growing buffer, primary used by gbprintf * / | |||
int buffsz; | int buffsz; | |||
char mode; | char mode; | |||
int back; | int back; | |||
gbsize_t mempos; /* curr. position in memory */ | ||||
gbsize_t memlen; /* max. number of written bytes to memory */ | ||||
gbsize_t memsz; /* curr. size of allocated memory */ | ||||
unsigned char big_endian:1; | unsigned char big_endian:1; | |||
unsigned char binary:1; | unsigned char binary:1; | |||
unsigned char gzapi:1; | unsigned char gzapi:1; | |||
} gbfile; | unsigned char memapi:1; | |||
unsigned char unicode:1; | ||||
unsigned char unicode_checked:1; | ||||
unsigned char is_pipe:1; | ||||
gbfclearerr_cb fileclearerr; | ||||
gbfclose_cb fileclose; | ||||
gbfeof_cb fileeof; | ||||
gbferror_cb fileerror; | ||||
gbfflush_cb fileflush; | ||||
gbfopen_cb fileopen; | ||||
gbfread_cb fileread; | ||||
gbfseek_cb fileseek; | ||||
gbftell_cb filetell; | ||||
gbfungetc_cb fileungetc; | ||||
gbfwrite_cb filewrite; | ||||
} gbfile_t; | ||||
gbfile *gbfopen(const char *filename, const char *mode, const char *module) ; | gbfile *gbfopen(const char *filename, const char *mode, const char *module) ; | |||
gbfile *gbfopen_be(const char *filename, const char *mode, const char *modu le); | gbfile *gbfopen_be(const char *filename, const char *mode, const char *modu le); | |||
#define gbfopen_le gbfopen | #define gbfopen_le gbfopen | |||
void gbfclose(gbfile *file); | void gbfclose(gbfile *file); | |||
gbsize_t gbfread(void *buf, const gbsize_t size, const gbsize_t members, gb file *file); | gbsize_t gbfread(void *buf, const gbsize_t size, const gbsize_t members, gb file *file); | |||
int gbfgetc(gbfile *file); | int gbfgetc(gbfile *file); | |||
char *gbfgets(char *buf, int len, gbfile *file); | char *gbfgets(char *buf, int len, gbfile *file); | |||
skipping to change at line 97 | skipping to change at line 132 | |||
int gbfputint16(const gbint16 i, gbfile *file); | int gbfputint16(const gbint16 i, gbfile *file); | |||
#define gbfputuint16(a,b) gbfputint16((gbuint16)(a),(b)) | #define gbfputuint16(a,b) gbfputint16((gbuint16)(a),(b)) | |||
int gbfputint32(const gbint32 i, gbfile *file); | int gbfputint32(const gbint32 i, gbfile *file); | |||
#define gbfputuint32(a,b) gbfputint32((gbuint32)(a),(b)) | #define gbfputuint32(a,b) gbfputint32((gbuint32)(a),(b)) | |||
int gbfputdbl(const double d, gbfile *file); // write a double value | int gbfputdbl(const double d, gbfile *file); // write a double value | |||
int gbfputflt(const float f, gbfile *file); // write a float value | int gbfputflt(const float f, gbfile *file); // write a float value | |||
int gbfputcstr(const char *s, gbfile *file); // write string including '\ 0' | int gbfputcstr(const char *s, gbfile *file); // write string including '\ 0' | |||
int gbfputpstr(const char *s, gbfile *file); // write as pascal string | int gbfputpstr(const char *s, gbfile *file); // write as pascal string | |||
gbsize_t gbfcopyfrom(gbfile *file, gbfile *src, gbsize_t count); | ||||
#endif | #endif | |||
End of changes. 8 change blocks. | ||||
5 lines changed or deleted | 44 lines changed or added | |||
gbversion.h | gbversion.h | |||
---|---|---|---|---|
/* | /* | |||
* gbversion.h is generated from gbversion.h.in which uses autoconf voodoo | * gbversion.h is generated from gbversion.h.in which uses autoconf voodoo | |||
* to get the version number from configure.in. | * to get the version number from configure.in. | |||
* | * | |||
* Isn't simplification via automation grand? | * Isn't simplification via automation grand? | |||
*/ | */ | |||
#define VERSION "1.3.5" | #define VERSION "1.3.6" | |||
#define WEB_DOC_DIR "http://www.gpsbabel.org/htmldoc-1.3.5" | #define WEB_DOC_DIR "http://www.gpsbabel.org/htmldoc-1.3.6" | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 0 lines changed or added | |||
gpsmath.h | gpsmath.h | |||
---|---|---|---|---|
skipping to change at line 119 | skipping to change at line 119 | |||
int32 GPS_Math_UTM_EN_To_WGS84(double *lat, double *lon, double E, | int32 GPS_Math_UTM_EN_To_WGS84(double *lat, double *lon, double E, | |||
double N, int32 zone, char zc); | double N, int32 zone, char zc); | |||
int32 GPS_Math_UTM_EN_To_NAD83(double *lat, double *lon, double E, | int32 GPS_Math_UTM_EN_To_NAD83(double *lat, double *lon, double E, | |||
double N, int32 zone, char zc); | double N, int32 zone, char zc); | |||
int32 GPS_Math_Known_Datum_To_UTM_EN(double lat, double lon, double *E, | int32 GPS_Math_Known_Datum_To_UTM_EN(double lat, double lon, double *E, | |||
double *N, int32 *zone, char *zc, const int n ); | double *N, int32 *zone, char *zc, const int n ); | |||
int32 GPS_Math_UTM_EN_To_Known_Datum(double *lat, double *lon, double E, | int32 GPS_Math_UTM_EN_To_Known_Datum(double *lat, double *lon, double E, | |||
double N, int32 zone, char zc, const int n); | double N, int32 zone, char zc, const int n); | |||
int32 GPS_Math_WGS84_To_CH1903_NGEN(double phi, double lambda, double *E, d | void GPS_Math_Swiss_LatLon_To_EN(double phi, double lambda, double *E, | |||
ouble *N); | double *N,double phi0,double lambda0, | |||
void GPS_Math_CH1903_NGEN_To_WGS84(double E, double N, double *lat, double | double E0, double N0, double a, double b); | |||
*lon); | void GPS_Math_Swiss_EN_To_LatLon(double E, double N, double *phi, | |||
double *lambda, double phi0, double lambda0 | ||||
int32 GPS_Math_LatLon_To_OM_EN(double phi, double lambda, double *E, double | , | |||
*N, | double E0, double N0, double a, double b); | |||
double phiC, double lambdaC, double azmC, dou | ||||
ble gammaC, | int32 GPS_Math_WGS84_To_Swiss_EN(double phi, double lambda, double *E, doub | |||
const double kC, const double FE, const doubl | le *N); | |||
e FN, | void GPS_Math_Swiss_EN_To_WGS84(double E, double N, double *lat, double *lo | |||
const double a, const double invf, | n); | |||
const char hotine, const char degrees); | ||||
void GPS_Math_OM_EN_To_LatLon(const double E, const double N, double *phi, | void GPS_Math_UTM_EN_to_LatLon(int ReferenceEllipsoid, | |||
double *lambda, | const double UTMNorthing, const double UTMEas | |||
double phiC, double lambdaC, double azmC, doub | ting, | |||
le gammaC, | double *Lat, double *Lon, | |||
const double kC, const double FE, const double | const double lambda0, const double E0, const | |||
FN, | double N0); | |||
const double a, const double invf, | ||||
const char hotine, const char degrees); | ||||
int32 GPS_Lookup_Datum_Index(const char *n); | int32 GPS_Lookup_Datum_Index(const char *n); | |||
char *GPS_Math_Get_Datum_Name(const int datum_index); | char *GPS_Math_Get_Datum_Name(const int datum_index); | |||
#endif | #endif | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif | #endif | |||
End of changes. 1 change blocks. | ||||
21 lines changed or deleted | 19 lines changed or added | |||
inifile.h | inifile.h | |||
---|---|---|---|---|
skipping to change at line 30 | skipping to change at line 30 | |||
#ifndef HAVE_INIFILE_H | #ifndef HAVE_INIFILE_H | |||
#define HAVE_INIFILE_H | #define HAVE_INIFILE_H | |||
#include "defs.h" | #include "defs.h" | |||
typedef struct inifile_s | typedef struct inifile_s | |||
{ | { | |||
int isecs; /* number of sections */ | int isecs; /* number of sections */ | |||
queue secs; /* sections */ | queue secs; /* sections */ | |||
gbuint8 unicode:1; | ||||
} inifile_t; | } inifile_t; | |||
/* | /* | |||
inifile_init: | inifile_init: | |||
reads inifile filename into memory | reads inifile filename into memory | |||
myname represents the calling module | myname represents the calling module | |||
*/ | */ | |||
inifile_t * inifile_init(const char *filename, const char *myname); | inifile_t * inifile_init(const char *filename, const char *myname); | |||
void inifile_done(inifile_t *inifile); | void inifile_done(inifile_t *inifile); | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 1 lines changed or added | |||
xmlgeneric.h | xmlgeneric.h | |||
---|---|---|---|---|
skipping to change at line 51 | skipping to change at line 51 | |||
const char *tag); | const char *tag); | |||
void write_xml_entity_begin1(gbfile *ofd, const char *indent, const char *t ag, | void write_xml_entity_begin1(gbfile *ofd, const char *indent, const char *t ag, | |||
const char *attr1, const char *attrval1); | const char *attr1, const char *attrval1); | |||
void write_xml_entity_begin2(gbfile *ofd, const char *indent, const char *t ag, | void write_xml_entity_begin2(gbfile *ofd, const char *indent, const char *t ag, | |||
const char *attr1, const char *attrval1, | const char *attr1, const char *attrval1, | |||
const char *attr2, const char *attrval2); | const char *attr2, const char *attrval2); | |||
void write_xml_entity_end(gbfile *ofd, const char *indent, const char *tag) ; | void write_xml_entity_end(gbfile *ofd, const char *indent, const char *tag) ; | |||
void write_optional_xml_entity(gbfile *ofd, const char *indent, | void write_optional_xml_entity(gbfile *ofd, const char *indent, | |||
const char *tag, const char *value); | const char *tag, const char *value); | |||
void xml_write_time(gbfile *ofd, const time_t timep, int microseconds, char *elname); | void xml_write_time(gbfile *ofd, const time_t timep, int microseconds, cons t char *elname); | |||
void xml_fill_in_time(char *time_string, const time_t timep, int microsecon ds, | void xml_fill_in_time(char *time_string, const time_t timep, int microsecon ds, | |||
int long_or_short); | int long_or_short); | |||
void write_xml_header(gbfile *ofd); | void write_xml_header(gbfile *ofd); | |||
void xml_ignore_tags(const char **taglist); | void xml_ignore_tags(const char **taglist); | |||
void xml_init(const char *fname, xg_tag_mapping *tbl,const char *encoding); | void xml_init(const char *fname, xg_tag_mapping *tbl,const char *encoding); | |||
void xml_init_offset(const char *fname, xg_tag_mapping *tbl, | ||||
const char *encoding, gbsize_t offset); | ||||
void xml_read(void); | void xml_read(void); | |||
void xml_readstring(char *str); | void xml_readstring(char *str); | |||
void xml_readprefixstring(char *str); | void xml_readprefixstring(char *str); | |||
void xml_deinit(void); | void xml_deinit(void); | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 3 lines changed or added | |||