GNSS_DEVICE_CAPABILITY構造体 (gnssdriver.h)
GNSS_DEVICE_CAPABILITY構造体は、基になる GNSS エンジンのデバイス機能を決定するために使用されます。
構文
typedef struct {
ULONG Size;
ULONG Version;
BOOL SupportMultipleFixSessions;
BOOL SupportMultipleAppSessions;
BOOL RequireAGnssInjection;
ULONG AgnssFormatSupported;
ULONG AgnssFormatPreferred;
BOOL SupportDistanceTracking;
BOOL SupportContinuousTracking;
ULONG Reserved1;
BOOL Reserved2;
BOOL Reserved3;
BOOL Reserved4;
BOOL Reserved5;
ULONG GeofencingSupport;
BOOL Reserved6;
BOOL Reserved7;
BOOL SupportCpLocation;
BOOL SupportUplV2;
BOOL SupportSuplV1;
BOOL SupportSuplV2;
GNSS_SUPL_VERSION SupportedSuplVersion;
ULONG MaxGeofencesSupported;
BOOL SupportMultipleSuplRootCert;
ULONG GnssBreadCrumbPayloadVersion;
ULONG MaxGnssBreadCrumbFixes;
BYTE Unused[496];
} GNSS_DEVICE_CAPABILITY, *PGNSS_DEVICE_CAPABILITY;
メンバー
Size
構造体のサイズ。
Version
バージョン番号。
SupportMultipleFixSessions
GNSS ドライバーが同じ種類の複数のセッション (HLOS によって開始された複数の同時距離追跡セッションなど) をネイティブにサポートするかどうかを示します。 FALSE の場合、GNSS アダプターは、複数の LBS アプリからの修正セッション要求を多重化して、すべてのクライアント要求を満たす 1 つの修正セッション要求に結合します。
この機能が存在しない場合、ドライバーは、サポートされている各修正セッションの種類のアクティブなセッションを少なくとも 1 つサポートする必要があります。 たとえば、ドライバーが距離ベースの追跡とシングルショット機能をサポートしている場合、1 つの距離ベースの修正セッションと 1 つのシングルショット修正セッションを同時にアクティブにする必要があります。
新しい修正要求を多重化する必要があるときに GNSS アダプターが進行中の修正セッションを停止または開始する必要がないように、ドライバーはアクティブな修正セッションの種類のセッション パラメーターの変更を常にサポートする必要があります。 Windows 10では、GNSS アダプターは、同じ種類の GNSS ドライバーの複数のセッションでの開始をサポートしていません。
SupportMultipleAppSessions
GNSS ドライバーが、複数の HLOS アプリケーションからの要求をネイティブにサポートおよび追跡するかどうかを示します。 GNSS ドライバーは、同時に複数のアプリケーションから呼び出されるように制限することはできません。
TRUE の値は、ドライバーがさまざまな HLOS アプリケーション セッションを追跡し、要求を論理的にパーティション分割し、あるアプリケーション セッションからの要求が別のアプリケーション セッションに影響しないようにすることを示します。 たとえば、GNSS アダプターとテスト アプリケーションを個別に処理し、それぞれのコマンドに個別に応答することができます。
FALSE の値は、ドライバーが異なる HLOS アプリケーション セッションを区別せず、すべてが 1 つの HLOS アプリケーション セッションから取得されているかのように、グローバルな方法ですべてを論理的に処理することを示します。
RequireAGnssInjection
GNSS ドライバーで、TTFF を高速化するために支援データを挿入する必要があるかどうかを示します。
AgnssFormatSupported
ドライバーが処理できるさまざまな AGNSS 形式 (GNSS_AGNSSFORMAT_*) を含むビットマスクを指定します。
#define GNSS_AGNSSFORMAT_XTRA1 0x01
#define GNSS_AGNSSFORMAT_XTRA2 0x02
#define GNSS_AGNSSFORMAT_LTO 0x04
#define GNSS_AGNSSFORMAT_XTRA3 0x08
#define GNSS_AGNSSFORMAT_XTRA3_1 0x10
#define GNSS_AGNSSFORMAT_XTRA3_2 0x20
#define GNSS_AGNSSFORMAT_XTRA_INT 0x40
0x0080-0xFFFFの値は、拡張性のために予約されています。
この一覧には現在、いくつかの IHV 独自の形式が含まれています。 このリストは、IHV または OEM が、位置情報プラットフォームを介して GNSS アシスタンス情報 (特に拡張 ephemeris) を取得することを決定した場合に更新できます。
AgnssFormatPreferred
AgnssFormatSupported と同じビットマスクを使用して、優先する AGNSS 形式を指定します。 たとえば、XTRA1 と XTRA2 の両方がサポートされているが、XTRA2 が優先形式である場合、GNSS ドライバーは AgnssFormatSupported を 0x000C に設定し、AgnssFormatPreferred を0x0004に設定します。
SupportDistanceTracking
GNSS ドライバーまたはエンジンが、セッション固有のしきい値に基づいてデバイスの低電力追跡をネイティブにサポートするかどうかを示します。 TRUE 値は、ドライバーが低電力モードでこれをネイティブにサポートできることを意味します。たとえば、低電力プロセッサに追跡をオフロードし、アプリ プロセッサを稼働させて移動をポーリングする必要はありません。
GNSS ドライバーが距離追跡をサポートしている場合、他の種類の並列修正セッションが同時に暗黙的にサポートされます。 たとえば、距離追跡セッションがアクティブな場合は、並列シングルショットも許可する必要があり、両方のタイプの修正セッションを受け入れる必要があります。
SupportContinuousTracking
GNSS ドライバー/エンジンがデバイスの継続的な低電力追跡をネイティブにサポートするかどうかを示します。 TRUE 値は、ドライバーが低電力モードでこれをネイティブにサポートできることを意味します。たとえば、低電力プロセッサに追跡をオフロードし、アプリ プロセッサを稼働させて継続的にポーリングする必要はありません。
GNSS ドライバーが継続的追跡をサポートしている場合、他の種類の並列修正セッションが同時に暗黙的にサポートされます。 たとえば、シングルショットと連続トラッキングは並列で行うことができます。
Reserved1
将来使用するために予約されています。
Reserved2
将来使用するために予約されています。
Reserved3
将来使用するために予約されています。
Reserved4
将来使用するために予約されています。
Reserved5
将来使用するために予約されています。
GeofencingSupport
バージョン 1 GNSS ドライバーは、この機能がサポートされていないことを示す必要があります。
バージョン 2 GNSS ドライバー以降では、次のビットマスクを設定することでジオフェンスのサポートを示すことができます。
#define GNSS_GEOFENCESUPPORT_SUPPORTED 0x01
#define GNSS_GEOFENCESUPPORT_CIRCLE 0x02
GNSS_GEOFENCESUPPORT_SUPPORTEDは、GNSS エンジンがジオフェンス追跡をサポートしていることを示します。 ジオフェンス追跡機能のサポートは、電力最適化された方法でネイティブに行われ、該当する GNSS エンジンで使用可能な適切なハイブリッド配置テクノロジを使用することを意味します。
GNSS_GEOFENCESUPPORT_CIRCLEは、GNSS エンジンが円形ジオフェンスをサポートしていることを示します。
Reserved6
将来使用するために予約されています。
Reserved7
将来使用するために予約されています。
SupportCpLocation
CP の場所をサポートするかどうかを指定します。
SupportUplV2
CDMA の V2 ユーザー プレーンの場所をサポートするかどうかを指定します。
SupportSuplV1
SUPL V1 がサポートされているかどうかを指定します。
SupportSuplV2
SUPL V2 をサポートするかどうかを指定します。
SupportedSuplVersion
SUPL クライアントでサポートされている最新の SUPL バージョンを指定します。 このバージョン情報は現在、検証の目的で HLOS では使用されていません。
MaxGeofencesSupported
プラットフォームによって設定された制約に基づいて GNSS エンジンが追跡できるジオフェンスの数を指定します。 この値は、GeofencingSupport フィールドが設定されている場合にのみ有効です。
SupportMultipleSuplRootCert
SUPL パラメーターを指定します。
GnssBreadCrumbPayloadVersion
BREADCRUMBING_UNSUPPORTEDまたはBREADCRUMBING_VERSION_x である必要があります。
MaxGnssBreadCrumbFixes
MIN_BREADCRUMBS_SUPPORTED以上である必要があります。
Unused[496]
今後の使用のために予約されたパディング バッファー。
注釈
これは、個々の機能サポートの一覧です。 この機能は、ブール値または特定の属性の明確に定義された列挙によって表されます。
要件
要件 | 値 |
---|---|
Header | gnssdriver.h (Gnssdriver.h を含む) |