diff options
Diffstat (limited to 'gps.h')
-rw-r--r-- | gps.h | 56 |
1 files changed, 40 insertions, 16 deletions
@@ -1124,9 +1124,9 @@ struct ais_t struct { #define DAC1FID11_LATLON_SCALE 1000 int lon; /* longitude in minutes * .001 */ -#define DAC1FID11_LON_NOT_AVAILABLE 0x1FFFFFF - int lat; /* longitude in minutes * .001 */ -#define DAC1FID11_LAT_NOT_AVAILABLE 0xFFFFFF +#define DAC1FID11_LON_NOT_AVAILABLE 0xFFFFFF + int lat; /* latitude in minutes * .001 */ +#define DAC1FID11_LAT_NOT_AVAILABLE 0x7FFFFF unsigned int day; /* UTC day */ unsigned int hour; /* UTC hour */ unsigned int minute; /* UTC minute */ @@ -1136,24 +1136,33 @@ struct ais_t unsigned int wdir; /* wind direction */ unsigned int wgustdir; /* wind gust direction */ #define DAC1FID11_WDIR_NOT_AVAILABLE 511 - int airtemp; /* temperature, units 0.1C */ -#define DAC1FID11_AIRTEMP_NOT_AVAILABLE 1447 + unsigned int airtemp; /* temperature, units 0.1C */ +#define DAC1FID11_AIRTEMP_NOT_AVAILABLE 2047 +#define DAC1FID11_AIRTEMP_OFFSET 600 +#define DAC1FID11_AIRTEMP_SCALE 10.0 unsigned int humidity; /* relative humidity, % */ #define DAC1FID11_HUMIDITY_NOT_AVAILABLE 127 - int dewpoint; /* dew point, units 0.1C */ -#define DAC1FID11_DEWPOINT_NOT_AVAILABLE 823 + unsigned int dewpoint; /* dew point, units 0.1C */ +#define DAC1FID11_DEWPOINT_NOT_AVAILABLE 1023 +#define DAC1FID11_DEWPOINT_OFFSET 200 +#define DAC1FID11_DEWPOINT_SCALE 10.0 unsigned int pressure; /* air pressure, hpa */ -#define DAC1FID11_PRESSURE_NOT_AVAILABLE 1311 +#define DAC1FID11_PRESSURE_NOT_AVAILABLE 511 +#define DAC1FID11_PRESSURE_OFFSET -800 unsigned int pressuretend; /* tendency */ #define DAC1FID11_PRESSURETREND_NOT_AVAILABLE 3 unsigned int visibility; /* units 0.1 nautical miles */ #define DAC1FID11_VISIBILITY_NOT_AVAILABLE 255 - int waterlevel; /* decimeters */ -#define DAC1FID11_WATERLEVEL_NOT_AVAILABLE 411 +#define DAC1FID11_VISIBILITY_SCALE 10.0 + unsigned int waterlevel; /* decimeters */ +#define DAC1FID11_WATERLEVEL_NOT_AVAILABLE 511 +#define DAC1FID11_WATERLEVEL_OFFSET 100 +#define DAC1FID11_WATERLEVEL_SCALE 10.0 unsigned int leveltrend; /* water level trend code */ -#define DAC1FID11_LEVELTREND_NOT_AVAILABLE 3 +#define DAC1FID11_WATERLEVELTREND_NOT_AVAILABLE 3 unsigned int cspeed; /* surface current speed in deciknots */ #define DAC1FID11_CSPEED_NOT_AVAILABLE 255 +#define DAC1FID11_CSPEED_SCALE 10.0 unsigned int cdir; /* surface current dir., degrees */ #define DAC1FID11_CDIR_NOT_AVAILABLE 511 unsigned int cspeed2; /* current speed in deciknots */ @@ -1165,6 +1174,7 @@ struct ais_t unsigned int cdepth3; /* measurement depth, m */ unsigned int waveheight; /* in decimeters */ #define DAC1FID11_WAVEHEIGHT_NOT_AVAILABLE 255 +#define DAC1FID11_WAVEHEIGHT_SCALE 10.0 unsigned int waveperiod; /* in seconds */ #define DAC1FID11_WAVEPERIOD_NOT_AVAILABLE 63 unsigned int wavedir; /* direction in degrees */ @@ -1174,12 +1184,15 @@ struct ais_t unsigned int swelldir; /* direction in degrees */ unsigned int seastate; /* Beaufort scale, 0-12 */ #define DAC1FID11_SEASTATE_NOT_AVAILABLE 15 - int watertemp; /* units 0.1deg Celsius */ -#define DAC1FID11_WATERTEMP_NOT_AVAILABLE 923 + unsigned int watertemp; /* units 0.1deg Celsius */ +#define DAC1FID11_WATERTEMP_NOT_AVAILABLE 1023 +#define DAC1FID11_WATERTEMP_OFFSET 100 +#define DAC1FID11_WATERTEMP_SCALE 10.0 unsigned int preciptype; /* 0-7, enumerated */ #define DAC1FID11_PRECIPTYPE_NOT_AVAILABLE 7 unsigned int salinity; /* units of 0.1ppt */ #define DAC1FID11_SALINITY_NOT_AVAILABLE 511 +#define DAC1FID11_SALINITY_SCALE 10.0 unsigned int ice; /* is there sea ice? */ #define DAC1FID11_ICE_NOT_AVAILABLE 3 } dac1fid11; @@ -1270,34 +1283,43 @@ struct ais_t #define DAC1FID31_DIR_NOT_AVAILABLE 360 int airtemp; /* temperature, units 0.1C */ #define DAC1FID31_AIRTEMP_NOT_AVAILABLE -1024 +#define DAC1FID31_AIRTEMP_SCALE 10.0 unsigned int humidity; /* relative humidity, % */ #define DAC1FID31_HUMIDITY_NOT_AVAILABLE 101 int dewpoint; /* dew point, units 0.1C */ #define DAC1FID31_DEWPOINT_NOT_AVAILABLE 501 +#define DAC1FID31_DEWPOINT_SCALE 10.0 unsigned int pressure; /* air pressure, hpa */ #define DAC1FID31_PRESSURE_NOT_AVAILABLE 511 #define DAC1FID31_PRESSURE_HIGH 402 +#define DAC1FID31_PRESSURE_OFFSET -799 unsigned int pressuretend; /* tendency */ #define DAC1FID31_PRESSURETEND_NOT_AVAILABLE 3 bool visgreater; /* visibility greater than */ unsigned int visibility; /* units 0.1 nautical miles */ #define DAC1FID31_VISIBILITY_NOT_AVAILABLE 127 - int waterlevel; /* decimeters or cm */ +#define DAC1FID31_VISIBILITY_SCALE 10.0 + int waterlevel; /* cm */ #define DAC1FID31_WATERLEVEL_NOT_AVAILABLE 4001 +#define DAC1FID31_WATERLEVEL_OFFSET 1000 +#define DAC1FID31_WATERLEVEL_SCALE 100.0 unsigned int leveltrend; /* water level trend code */ -#define DAC1FID31_LEVELTREND_NOT_AVAILABLE 3 +#define DAC1FID31_WATERLEVELTREND_NOT_AVAILABLE 3 unsigned int cspeed; /* current speed in deciknots */ #define DAC1FID31_CSPEED_NOT_AVAILABLE 255 +#define DAC1FID31_CSPEED_SCALE 10.0 unsigned int cdir; /* current dir., degrees */ unsigned int cspeed2; /* current speed in deciknots */ unsigned int cdir2; /* current dir., degrees */ unsigned int cdepth2; /* measurement depth, 0.1m */ #define DAC1FID31_CDEPTH_NOT_AVAILABLE 301 +#define DAC1FID31_CDEPTH_SCALE 10.0 unsigned int cspeed3; /* current speed in deciknots */ unsigned int cdir3; /* current dir., degrees */ unsigned int cdepth3; /* measurement depth, 0.1m */ unsigned int waveheight; /* in decimeters */ #define DAC1FID31_HEIGHT_NOT_AVAILABLE 31 +#define DAC1FID31_HEIGHT_SCALE 10.0 unsigned int waveperiod; /* in seconds */ #define DAC1FID31_PERIOD_NOT_AVAILABLE 63 unsigned int wavedir; /* direction in degrees */ @@ -1308,10 +1330,12 @@ struct ais_t #define DAC1FID31_SEASTATE_NOT_AVAILABLE 15 int watertemp; /* units 0.1deg Celsius */ #define DAC1FID31_WATERTEMP_NOT_AVAILABLE 601 +#define DAC1FID31_WATERTEMP_SCALE 10.0 unsigned int preciptype; /* 0-7, enumerated */ #define DAC1FID31_PRECIPTYPE_NOT_AVAILABLE 7 - unsigned int salinity; /* units of 0.1% */ + unsigned int salinity; /* units of 0.1 permil (ca. PSU) */ #define DAC1FID31_SALINITY_NOT_AVAILABLE 510 +#define DAC1FID31_SALINITY_SCALE 10.0 unsigned int ice; /* is there sea ice? */ #define DAC1FID31_ICE_NOT_AVAILABLE 3 } dac1fid31; |