Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
This structure contains location information, including latitude and longitude, as well as other related information like heading, speed, the satellites used to retrieve the location information, and so on.
To retrieve the data represented by this structure, call GPSGetPosition.
Syntax
typedef struct _GPS_POSITION { DWORD dwVersion; DWORD dwSize; DWORD dwValidFields; DWORD dwFlags; SYSTEMTIME stUTCTime; double dblLatitude; double dblLongitude; float flSpeed; float flHeading; double dblMagneticVariation; float flAltitudeWRTSeaLevel; float flAltitudeWRTEllipsoid; GPS_FIX_QUALITY FixQuality; GPS_FIX_TYPE FixType; GPS_FIX_SELECTION SelectionType; float flPositionDilutionOfPrecision; float flHorizontalDilutionOfPrecision; float flVerticalDilutionOfPrecision; DWORD dwSatelliteCount; DWORD rgdwSatellitesUsedPRNs[GPS_MAX_SATELLITES]; DWORD dwSatellitesInView; DWORD rgdwSatellitesInViewPRNs[GPS_MAX_SATELLITES]; DWORD rgdwSatellitesInViewElevation[GPS_MAX_SATELLITES]; DWORD rgdwSatellitesInViewAzimuth[GPS_MAX_SATELLITES]; DWORD rgdwSatellitesInViewSignalToNoiseRatio[GPS_MAX_SATELLITES]; } GPS_POSITION, *PGPS_POSITION; |
Members
- dwVersion
-
Version of the GPS Intermediate Driver expected by the application. Must be set before the structure is passed to GPSGetPosition. Must be GPS_VERSION_1.
- dwSize
-
Size of the structure, in bytes. Must be set before the structure is passed to GPSGetPosition.
- dwValidFields
-
Valid fields in this instance of the structure. This field is a combination of some number of GPS_VALID_flags, or is 0 if no fields are valid. Valid fields depend on the GPS hardware, how old the location data can be (controlled by the dwMaximumAge parameter of the GPSGetPositioncall), and the current satellite signals, among other things.
- dwFlags
-
Information about the state of the data retrieved in a call to GPSGetPosition. This field is a combination of GPS_DATA_FLAGS_flags.
- stUTCTime
-
Universal time (UTC) according to information provided by GPS satellites.
- dblLatitude
-
Latitude, in degrees. Positive numbers indicate north latitude.
- dblLongitude
-
Longitude, in degrees. Positive numbers indicate east longitude.
- flSpeed
-
Speed, in knots (nautical miles).
- flHeading
-
Heading, in degrees. A heading of zero is true north.
- dblMagneticVariation
-
Magnetic variation, which is the difference between the bearing to true north and the bearing shown on a magnetic compass. Positive numbers indicate east.
- flAltitudeWRTSeaLevel
-
Altitude, in meters, with respect to sea level.
- flAltitudeWRTEllipsoid
-
Altitude, in meters, of the sea-level with respect to the WGS84 ellipsoid. For more information about the use of the WGS84 ellipsoid with GPS, see this
NMEA Web site .
- FixQuality
-
Quality of the GPS fix, which is one of invalid, normal GPS, or differential GPS (DGPS). This field contains one of the values in the GPS_FIX_QUALITYenumeration.
- FixType
-
Type of GPS fix, either 2-D (only latitude and longitude, from three satellites), or 3-D (latitude, longitude, and altitude, from four or more satellites). This field contains one of the values in the GPS_FIX_TYPEenumeration.
- SelectionType
-
Whether 2-D or 3-D mode is selected automatically or manually. This field contains one of the values in the GPS_FIX_SELECTIONenumeration.
- flPositionDilutionOfPrecision
-
Degree to which the overall position is affected by positional dilution of position (PDOP). PDOP is caused by the location of the satellites providing the GPS fix. Lower numbers indicate a more accurate position. A value of 1.0 indicates the least dilution (highest accuracy); a value of 50.0 indicates the most dilution (lowest accuracy).
- flHorizontalDilutionOfPrecision
-
Degree to which the horizontal position (latitude and longitude) is affected by horizontal dilution of position (HDOP). HDOP is caused by the location of the satellites providing the GPS fix. Lower numbers indicate a more accurate position. A value of 1.0 indicates the least dilution (highest accuracy); a value of 50.0 indicates the most dilution (lowest accuracy).
- flVerticalDilutionOfPrecision
-
Degree to which the vertical position (altitude) is affected by vertical dilution of position (VDOP). VDOP is caused by the location of the satellites providing the GPS fix. Lower numbers indicate a more accurate position. A value of 1.0 indicates the least dilution (highest accuracy); a value of 50.0 indicates the most dilution (lowest accuracy).
- dwSatelliteCount
-
Number of satellites used to obtain the position.
- rgdwSatellitesUsedPRNs
-
PRN (pseudo-random noise) numbers of the satellites used to obtain the position.
- dwSatellitesInView
-
Number of satellites in view of the GPS hardware. This value ranges from 0 to GPS_MAX_SATELLITES.
- rgdwSatellitesInViewPRNs
-
PRN (pseudo-random noise) numbers of the satellites in view of the GPS hardware.
- rgdwSatellitesInViewElevation
-
Elevation, in degrees, of the satellites in view of the GPS hardware.
- rgdwSatellitesInViewAzimuth
-
Azimuth, in degrees, of the satellites in view of the GPS hardware.
- rgdwSatellitesInViewSignalToNoiseRatio
-
Signal to noise ratio of the satellites in view of the GPS hardware. Higher numbers indicate greater signal strength.
Remarks
The majority of the fields in this structure are
translations from the fields defined by the NMEA. For more
information about NMEA standard, including additional description
of the nature of the fields, see this
Requirements
Header
gpsapi.h
Windows Embedded CE
Windows Embedded CE 6.0 and later
Windows Mobile
Windows Mobile Version 5.0 and later
See Also
Reference
GPS Intermediate
Driver Structures
GPS_DATA_FLAGS_
GPS_FIX_SELECTION
GPS_FIX_TYPE
GPS_FIX_QUALITY
GPS_VALID_
GPSGetPosition
Concepts
Accessing Parsed
GPS Data
Other Resources