V2 drivers are provided with a new interface: GPS_QUERY_FIX. This interface provides applications with a way to inform the driver that a single fix is required, and no further fixes are required in the near future. Therefore, the driver can choose to power down the GPS hardware after providing the fix.
Definitions:
| GPS_START_FIX | Signals the driver that location fixes are required at repeated short intervals. These location fixes are required to continue until GPS_STOP_FIX is issued. |
| GPS_QUERY_FIX | Signals the driver that a single location fix is needed now. No data is available as to when the next fix might be required. |
In response to GPS_START_FIX, the driver (and ultimately the hardware) is expected to produce location fix data at regular intervals, typically once per second. This requires that the hardware be continuously powered.
The GPS_QUERY_FIX parameter of the IOCTL_GPS_SET_DEVICE_PARAMETER call adds the ability to request a one-time location fix from the driver. After the location fix is obtained, the driver then has the opportunity to power down the hardware.
Some use cases are:
Use Case: Auto Navigation: A user is driving an automobile to a city and requires navigational assistance. The automobile is traveling at speeds of 5mph to 50mph. GPS_START_FIX would be used to provide frequent periodic position updates. The minimum update rate will be 1 second updates at 5mph, providing about 36 fixes per short city block. This is a very usable rate for driving navigation. Mobile devices are typically powered by the automobile, and power savings is not a critical issue.
Use Case: Mountaineering: A user is climbing a mountain and travelling at speeds from .1mph to 2mph. The mobile device is powered by batteries, and power savings is a highly critical issue. The user refers to the mobile device for location fixes in 5 to 15-minute intervals by pressing a button on the mobile device. The button triggers a call to GPS_QUERY_FIX, which the driver uses to power up, obtain a fix, and power down the GPS hardware.