NAME
GPS::Tools - GPS package for common GPS functions and methods
FUNCTIONS
init_serial
### init_serial - configure the serial port for use
### input: name of tty device
### output: nothing
### return: a serial port object
sirf_setspeed
### sirf_setspeed - set the primary serial port speed
### input: a port descriptor and speed
### output: nothing
### return: 0 if unable to set speed, 1 if able to
bye
### bye - cleanup routine. close fds, ttys, etc.
### input: nothing
### output: nothing
### return: nothing
hexdump
### hexdump - do a standard hexdump
### input: a string to be hexdumped
### output: nothing
### return: the hexdumped string
sum
### sum - sum an array
### input: an array
### output: nothing
### return: the sum of the array elements.
checksum_nmea
### checksum_nmea - do the checksum for an NMEA sentence
### input: an NMEA sentence, without $ or * delimiters
### output: nothing
### return: the checksum string
checksum_garmin
### checksum_garmin - do the checksum for a garmin packet
### input: the string to be checksummed (type + len + body)
### output: nothing
### return: the calculated checksum
checksum_sirf
### checksum_sirf - do the checksum for a SiRF packet
### input: the body of a SiRF packet
### output: nothing
### return: the checksum of the packet
is_invalid_garmin
### is_invalid_garmin - check the validity of a garmin packet
### input: an unescaped packet
### output: nothing
### return: 0 if valid, otherwise the number of the failed test
is_invalid_nmea
### is_invalid_nmea - check the validity of an NMEA sentence
### input: a complete NMEA sentence,
### output: nothing
### return: 1 if message is valid, 0 otherwise
is_invalid_sirf
### is_invalid_sirf - check the validity of a SiRF packet
### input: a packet
### output: nothing
### return: 0 if valid, or the number of the failed test
floatfix
### floatfix - fix up SiRF's busted-ass data encoding
### input: an 8byte SiRF encoded double or 4 byte SiRF encoded float
### output: nothing
### return: something that can be fed to *printf("%f",$var) ... ieee754, i hope
int2signed
### int2signed - turn an unsigned integer into a signed integer.
### input: an unsigned quantity and its length in bytes
### output: nothing
### return: the same bits as the input, but interpreted as a signed number
ecef2lla
### ecef2lla - Convert ECEF (cartesian) coordinates to WGS84
### input: X Y Z in meters
### output: nothing
### return: a 3 element vector of latitude, longitude and altitude
lla2ecef
### lla2ecef - Convert WGS84 coordinates to ECEF (cartesian)
### input: latitude and longitude in degrees and altitude meters
### output: nothing
### return: a 3 elemnt vector of X Y Z in meters