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

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/