1# HdiGnss 2 3 4## 概述 5 6定义GNSS模块的接口。 7 8上层GNSS服务可以获取一个GNSS驱动对象或代理,然后调用该对象或代理提供的api来访问GNSS设备, 从而实现启动GNSS芯片,启动导航,设置GNSS工作模式,注入参考信息,获取定位结果,获取nmea, 获取卫星状态信息,批量获取缓存位置信息等。 9 10**起始版本:** 3.2 11 12 13## 汇总 14 15 16### 文件 17 18| 名称 | 描述 | 19| -------- | -------- | 20| [GnssTypes.idl](_gnss_types_8idl.md) | 定义GNSS模块接口中使用到的数据结构。 | 21| [IGnssCallback.idl](_i_gnss_callback_8idl.md) | 声明获取定位结果回调、获取GNSS模块工作状态回调、获取nmea回调、获取GNSS能力回调、 获取卫星状态信息回调、批量获取缓存位置回调、请求上层注入参考信息回调、 请求上层注入PGNSS数据回调。 | 22| [IGnssInterface.idl](_i_gnss_interface_8idl.md) | 声明GNSS模块提供的接口函数,包括启动GNSS芯片、启动导航、设置GNSS工作模式、注入参考信息、 删除辅助数据、注入PGNSS数据、获取GNSS缓存位置个数、获取所有缓存位置。 | 23 24 25### 类 26 27| 名称 | 描述 | 28| -------- | -------- | 29| struct [SatelliteStatusInfo](_satellite_status_info.md) | 定义卫星状态信息结构体。 | 30| struct [GnssBasicConfig](_gnss_basic_config.md) | 定义基础的GNSS配置参数。 | 31| struct [GnssCachingConfig](_gnss_caching_config.md) | 定义GNSS缓存功能的配置参数。 | 32| struct [GnssConfigPara](_gnss_config_para.md) | 定义GNSS配置参数结构体。 | 33| struct [GnssRefTime](_gnss_ref_time.md) | 定义GNSS参考时间结构体。 | 34| struct [GnssRefLocation](_gnss_ref_location.md) | 定义GNSS参考位置结构体。 | 35| struct [LocationInfo](_location_info.md) | 定义GNSS定位结果结构体。 | 36| struct [GnssRefInfo](_gnss_ref_info.md) | 定义GNSS参考信息结构体。 | 37| interface [IGnssCallback](interface_i_gnss_callback.md) | 声明获取定位结果回调、获取GNSS模块工作状态回调、获取nmea回调、获取GNSS能力回调、 获取卫星状态信息回调、批量获取缓存位置回调、请求上层注入参考信息回调、 请求上层注入PGNSS数据回调。 | 38| interface [IGnssInterface](interface_i_gnss_interface.md) | 声明GNSS模块提供的接口函数,包括启动GNSS芯片、启动导航、设置GNSS工作模式、注入参考信息、 删除辅助数据、注入PGNSS数据、获取GNSS缓存位置个数、获取所有缓存位置。 | 39 40 41### 枚举 42 43| 名称 | 描述 | 44| -------- | -------- | 45| [GnssWorkingMode](#gnssworkingmode) { GNSS_WORKING_MODE_STANDALONE = 1 , GNSS_WORKING_MODE_MS_BASED = 2 , GNSS_WORKING_MODE_MS_ASSISTED = 3 } | 定义GNSS工作模式。 | 46| [GnssStartType](#gnssstarttype) { GNSS_START_TYPE_NORMAL = 1 , GNSS_START_TYPE_GNSS_CACHE = 2 } | 定义GNSS启动方式。 | 47| [GnssRefInfoType](#gnssrefinfotype) { GNSS_REF_INFO_TIME = 1 , GNSS_REF_INFO_LOCATION = 2 , GNSS_REF_INFO_BEST_LOCATION = 3 } | 定义GNSS参考信息类型。 | 48| [GnssAuxiliaryData](#gnssauxiliarydata) {<br/>GNSS_AUXILIARY_DATA_EPHEMERIS = 1 , GNSS_AUXILIARY_DATA_ALMANAC = 2 , GNSS_AUXILIARY_DATA_POSITION = 4 , GNSS_AUXILIARY_DATA_TIME = 8 , GNSS_AUXILIARY_DATA_IONO = 16 , GNSS_AUXILIARY_DATA_UTC = 32 , GNSS_AUXILIARY_DATA_HEALTH = 64 , GNSS_AUXILIARY_DATA_SVDIR = 128 , GNSS_AUXILIARY_DATA_SVSTEER = 256 , GNSS_AUXILIARY_DATA_SADATA = 512 , GNSS_AUXILIARY_DATA_RTI = 1024 , GNSS_AUXILIARY_DATA_CELLDB_INFO = 32768 ,<br/>GNSS_AUXILIARY_DATA_ALL = 65535<br/>} | 定义辅助数据类型。 | 49| [GnssWorkingStatus](#gnssworkingstatus) {<br/>GNSS_STATUS_NONE = 0 , GNSS_STATUS_SESSION_BEGIN = 1 , GNSS_STATUS_SESSION_END = 2 , GNSS_STATUS_ENGINE_ON = 3 , GNSS_STATUS_ENGINE_OFF = 4<br/>} | 定义GNSS的工作状态。 | 50| [GnssCapabilities](#gnsscapabilities) {<br/>GNSS_CAP_SUPPORT_MSB = 1 , GNSS_CAP_SUPPORT_MSA = 2 , GNSS_CAP_SUPPORT_GEOFENCING = 4 , GNSS_CAP_SUPPORT_MEASUREMENTS = 8 , GNSS_CAP_SUPPORT_NAV_MESSAGES = 16 , GNSS_CAP_SUPPORT_GNSS_CACHE = 32<br/>} | 定义GNSS能力 | 51| [GnssConstellationType](#gnssconstellationtype) {<br/>GNSS_CONSTELLATION_UNKNOWN = 0 , GNSS_CONSTELLATION_GPS = 1 , GNSS_CONSTELLATION_SBAS = 2 , GNSS_CONSTELLATION_GLONASS = 3 , GNSS_CONSTELLATION_QZSS = 4 , GNSS_CONSTELLATION_BEIDOU = 5 , GNSS_CONSTELLATION_GALILEO = 6 , GNSS_CONSTELLATION_IRNSS = 7<br/>} | 定义星座类型 | 52| [SatellitesStatusFlag](#satellitesstatusflag) {<br/>SATELLITES_STATUS_NONE = 0 , SATELLITES_STATUS_HAS_EPHEMERIS_DATA = 1 , SATELLITES_STATUS_HAS_ALMANAC_DATA = 2 , SATELLITES_STATUS_USED_IN_FIX = 4 , SATELLITES_STATUS_HAS_CARRIER_FREQUENCY = 8<br/>} | 定义卫星状态中的附加信息。 | 53 54 55## 枚举类型说明 56 57 58### GnssAuxiliaryData 59 60``` 61enum GnssAuxiliaryData 62``` 63 64**描述** 65 66 67定义辅助数据类型。 68 69**起始版本:** 3.2 70 71| 枚举值 | 描述 | 72| -------- | -------- | 73| GNSS_AUXILIARY_DATA_EPHEMERIS | 星历 | 74| GNSS_AUXILIARY_DATA_ALMANAC | 历书 | 75| GNSS_AUXILIARY_DATA_POSITION | 位置 | 76| GNSS_AUXILIARY_DATA_TIME | 时间 | 77| GNSS_AUXILIARY_DATA_IONO | 电离层 | 78| GNSS_AUXILIARY_DATA_UTC | UTC时间 | 79| GNSS_AUXILIARY_DATA_HEALTH | 健康度 | 80| GNSS_AUXILIARY_DATA_SVDIR | 方向 | 81| GNSS_AUXILIARY_DATA_SVSTEER | 方向角 | 82| GNSS_AUXILIARY_DATA_SADATA | 辅助数据 | 83| GNSS_AUXILIARY_DATA_RTI | 差分数据 | 84| GNSS_AUXILIARY_DATA_CELLDB_INFO | cell数据库 | 85| GNSS_AUXILIARY_DATA_ALL | 所有辅助数据 | 86 87 88### GnssCapabilities 89 90``` 91enum GnssCapabilities 92``` 93 94**描述** 95 96 97定义GNSS能力 98 99**起始版本:** 3.2 100 101| 枚举值 | 描述 | 102| -------- | -------- | 103| GNSS_CAP_SUPPORT_MSB | 支持MS-Based模式 | 104| GNSS_CAP_SUPPORT_MSA | 支持MS-Assisted模式 | 105| GNSS_CAP_SUPPORT_GEOFENCING | 支持地理围栏功能 | 106| GNSS_CAP_SUPPORT_MEASUREMENTS | 支持GNSS测量信息上报 | 107| GNSS_CAP_SUPPORT_NAV_MESSAGES | 支持GNSS导航电文上报 | 108| GNSS_CAP_SUPPORT_GNSS_CACHE | 支持GNSS缓存位置功能 | 109 110 111### GnssConstellationType 112 113``` 114enum GnssConstellationType 115``` 116 117**描述** 118 119 120定义星座类型 121 122**起始版本:** 3.2 123 124| 枚举值 | 描述 | 125| -------- | -------- | 126| GNSS_CONSTELLATION_UNKNOWN | 未知 | 127| GNSS_CONSTELLATION_GPS | GPS | 128| GNSS_CONSTELLATION_SBAS | SBAS | 129| GNSS_CONSTELLATION_GLONASS | GLONASS | 130| GNSS_CONSTELLATION_QZSS | QZSS | 131| GNSS_CONSTELLATION_BEIDOU | 北斗 | 132| GNSS_CONSTELLATION_GALILEO | GALILEO | 133| GNSS_CONSTELLATION_IRNSS | IRNSS | 134 135 136### GnssRefInfoType 137 138``` 139enum GnssRefInfoType 140``` 141 142**描述** 143 144 145定义GNSS参考信息类型。 146 147参考信息包含参考时间、参考位置等。 148 149**起始版本:** 3.2 150 151| 枚举值 | 描述 | 152| -------- | -------- | 153| GNSS_REF_INFO_TIME | 参考时间 | 154| GNSS_REF_INFO_LOCATION | 参考位置 | 155| GNSS_REF_INFO_BEST_LOCATION | 参考融合位置 | 156 157 158### GnssStartType 159 160``` 161enum GnssStartType 162``` 163 164**描述** 165 166 167定义GNSS启动方式。 168 169定义GNSS启动类型的枚举值,用于区分普通GNSS定位和GNSS缓存上报功能 (不立刻上报底层位置,仅当上层请求全部上报或者底层FIFO满后才上报位置)。 170 171**起始版本:** 3.2 172 173| 枚举值 | 描述 | 174| -------- | -------- | 175| GNSS_START_TYPE_NORMAL | 普通的GNSS功能 | 176| GNSS_START_TYPE_GNSS_CACHE | GNSS缓存位置功能 | 177 178 179### GnssWorkingMode 180 181``` 182enum GnssWorkingMode 183``` 184 185**描述** 186 187 188定义GNSS工作模式。 189 190定义GNSS工作模式的枚举值。 191 192**起始版本:** 3.2 193 194| 枚举值 | 描述 | 195| -------- | -------- | 196| GNSS_WORKING_MODE_STANDALONE | GNSS独立模式(无辅助) | 197| GNSS_WORKING_MODE_MS_BASED | 在移动设备端进行定位计算的模式 | 198| GNSS_WORKING_MODE_MS_ASSISTED | 移动设备辅助模式,在网络侧完成定位计算 | 199 200 201### GnssWorkingStatus 202 203``` 204enum GnssWorkingStatus 205``` 206 207**描述** 208 209 210定义GNSS的工作状态。 211 212**起始版本:** 3.2 213 214| 枚举值 | 描述 | 215| -------- | -------- | 216| GNSS_STATUS_NONE | 未知状态 | 217| GNSS_STATUS_SESSION_BEGIN | 导航启动 | 218| GNSS_STATUS_SESSION_END | 导航停止 | 219| GNSS_STATUS_ENGINE_ON | 芯片上电 | 220| GNSS_STATUS_ENGINE_OFF | 芯片下电 | 221 222 223### SatellitesStatusFlag 224 225``` 226enum SatellitesStatusFlag 227``` 228 229**描述** 230 231 232定义卫星状态中的附加信息。 233 234**起始版本:** 3.2 235 236| 枚举值 | 描述 | 237| -------- | -------- | 238| SATELLITES_STATUS_NONE | 默认值 | 239| SATELLITES_STATUS_HAS_EPHEMERIS_DATA | 有星历表数据 | 240| SATELLITES_STATUS_HAS_ALMANAC_DATA | 有历书数据 | 241| SATELLITES_STATUS_USED_IN_FIX | 定位中有使用到 | 242| SATELLITES_STATUS_HAS_CARRIER_FREQUENCY | 有载波频率 | 243