19 #ifndef UBUNTU_HARDWARE_GPS_H_
20 #define UBUNTU_HARDWARE_GPS_H_
37 #define U_HARDWARE_GPS_MAX_SVS 32
64 #define U_HARDWARE_GPS_CAPABILITY_SCHEDULING 0x0000001
66 #define U_HARDWARE_GPS_CAPABILITY_MSB 0x0000002
68 #define U_HARDWARE_GPS_CAPABILITY_MSA 0x0000004
70 #define U_HARDWARE_GPS_CAPABILITY_SINGLE_SHOT 0x0000008
72 #define U_HARDWARE_GPS_CAPABILITY_ON_DEMAND_TIME 0x0000010
80 #define U_HARDWARE_GPS_NI_NEED_NOTIFY 0x0001
82 #define U_HARDWARE_GPS_NI_NEED_VERIFY 0x0002
84 #define U_HARDWARE_GPS_NI_PRIVACY_OVERRIDE 0x0004
111 #define U_HARDWARE_GPS_NI_SHORT_STRING_MAXLEN 256
112 #define U_HARDWARE_GPS_NI_LONG_STRING_MAXLEN 2048
184 #define U_HARDWARE_GPS_LOCATION_HAS_LAT_LONG 0x0001
186 #define U_HARDWARE_GPS_LOCATION_HAS_ALTITUDE 0x0002
188 #define U_HARDWARE_GPS_LOCATION_HAS_SPEED 0x0004
190 #define U_HARDWARE_GPS_LOCATION_HAS_BEARING 0x0008
192 #define U_HARDWARE_GPS_LOCATION_HAS_ACCURACY 0x0010
421 int64_t time_reference,
448 uint32_t min_interval,
449 uint32_t preferred_accuracy,
450 uint32_t preferred_time);
462 #endif // UBUNTU_HARDWARE_GPS_H_
UHardwareGpsUserResponseType default_response
void(* UHardwareGpsRequestUtcTime)(void *context)
#define U_HARDWARE_GPS_MAX_SVS
UBUNTU_DLL_PUBLIC bool u_hardware_gps_stop(UHardwareGps self)
UHardwareGpsSvStatusCallback sv_status_cb
UHardwareGpsRequestUtcTime request_utc_time_cb
UBUNTU_DLL_PUBLIC bool u_hardware_gps_set_position_mode(UHardwareGps self, uint32_t mode, uint32_t recurrence, uint32_t min_interval, uint32_t preferred_accuracy, uint32_t preferred_time)
#define U_HARDWARE_GPS_NI_LONG_STRING_MAXLEN
UHardwareGpsNiNotifyCallback gps_ni_notify_cb
UHardwareGpsNmeaCallback nmea_cb
void(* UHardwareGpsSetCapabilities)(uint32_t capabilities, void *context)
#define U_HARDWARE_GPS_NI_SHORT_STRING_MAXLEN
UHardwareGpsSetCapabilities set_capabilities_cb
void(* UHardwareGpsAGpsRilRequestSetId)(uint32_t flags, void *context)
UBUNTU_DLL_PUBLIC UHardwareGps u_hardware_gps_new(UHardwareGpsParams *params)
uint32_t UHardwareGpsNiNotifyFlags
int UHardwareGpsNiEncodingType
UBUNTU_DLL_PUBLIC void u_hardware_gps_inject_xtra_data(UHardwareGps self, char *data, int length)
UHardwareGpsNiEncodingType requestor_id_encoding
UBUNTU_DLL_PUBLIC bool u_hardware_gps_start(UHardwareGps self)
UHardwareGpsAGpsRilRequestRefLoc request_refloc_cb
int UHardwareGpsUserResponseType
UBUNTU_DLL_PUBLIC void u_hardware_gps_inject_time(UHardwareGps self, int64_t time, int64_t time_reference, int uncertainty)
UHardwareGpsNiEncodingType text_encoding
UHardwareGpsNiNotifyFlags notify_flags
void(* UHardwareGpsLocationCallback)(UHardwareGpsLocation *location, void *context)
UHardwareGpsLocationCallback location_cb
uint32_t used_in_fix_mask
UBUNTU_DLL_PUBLIC void u_hardware_gps_inject_location(UHardwareGps self, double latitude, double longitude, float accuracy)
UHardwareGpsAGpsStatusCallback agps_status_cb
void(* UHardwareGpsStatusCallback)(uint16_t status, void *context)
void(* UHardwareGpsNmeaCallback)(int64_t timestamp, const char *nmea, int length, void *context)
#define UBUNTU_DLL_PUBLIC
UHardwareGpsStatusCallback status_cb
UHardwareGpsXtraDownloadRequest xtra_download_request_cb
void(* UHardwareGpsSvStatusCallback)(UHardwareGpsSvStatus *sv_info, void *context)
void(* UHardwareGpsXtraDownloadRequest)(void *context)
UBUNTU_DLL_PUBLIC void u_hardware_gps_delete(UHardwareGps handle)
struct UHardwareGps_ * UHardwareGps
void(* UHardwareGpsNiNotifyCallback)(UHardwareGpsNiNotification *notification, void *context)
void(* UHardwareGpsAGpsRilRequestRefLoc)(uint32_t flags, void *context)
void(* UHardwareGpsAGpsStatusCallback)(UHardwareGpsAGpsStatus *status, void *context)
UBUNTU_DLL_PUBLIC void u_hardware_gps_delete_aiding_data(UHardwareGps self, uint16_t flags)
UHardwareGpsAGpsRilRequestSetId request_setid_cb