structure GNSS_DEVICE_CAPABILITY (driver.h)
La structure GNSS_DEVICE_CAPABILITY est utilisée pour déterminer les fonctionnalités d’appareil du moteur UTILISAIT sous-jacent.
Syntaxe
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;
Membres
Size
Taille de la structure.
Version
Numéro de version.
SupportMultipleFixSessions
Indique si le pilote PSEC prend en charge en mode natif plusieurs sessions pour le même type (par exemple, plusieurs sessions de suivi à distance simultanées initiées par le HLOS). Si la valeur est FALSE, l’adaptateur TABLEAUX multiplexe les demandes de session de correction de plusieurs applications LBS pour les combiner en une seule demande de session de correction qui satisfait à toutes les demandes clientes.
Si cette fonctionnalité n’est pas présente, le pilote doit prendre en charge au moins une session active de chaque type de session de correctif pris en charge. Par exemple, si le pilote prend en charge le suivi basé sur la distance et la fonctionnalité mono-capture, il doit prendre en charge une session de correctif basée sur la distance et une session de correction à un seul coup actif en même temps.
Le pilote doit toujours prendre en charge la modification du paramètre de session pour un type de session de correctif actif afin que l’adaptateur PSEC n’ait pas besoin d’arrêter/démarrer une session de correction en cours lorsqu’une nouvelle demande de correctif doit être multiplexée. Dans Windows 10, l’adaptateur PSEC ne prend pas en charge le lancement dans le pilote SEE plusieurs sessions du même type.
SupportMultipleAppSessions
Indique si le pilote PSEC prend en charge et suit en mode natif les requêtes provenant de plusieurs applications HLOS. Le pilote PSEC ne doit pas restreindre l’appel de plusieurs applications en même temps.
La valeur TRUE indique que le pilote effectue le suivi des différentes sessions d’application HLOS, partitionne logiquement les requêtes, garantit que la demande d’une session d’application n’influence pas une autre session d’application, et ainsi de suite. Par exemple, il sera en mesure de gérer séparément l’adaptateur SECOURS et une application de test, et de répondre aux commandes de chacune séparément.
La valeur FALSE indique que le pilote ne différencie pas les différentes sessions d’application HLOS et traite logiquement tout de manière globale comme s’ils proviennent tous d’une session d’application HLOS unique.
RequireAGnssInjection
Indique si le pilote PSEC nécessite l’injection de données d’assistance pour accélérer le TTFF.
AgnssFormatSupported
Spécifie un masque de bits contenant les différents formats APSEC (GNSS_AGNSSFORMAT_*) que le pilote peut gérer.
#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
Les valeurs 0x0080-0xFFFF sont réservées à l’extensibilité.
Cette liste inclut actuellement quelques formats propriétaires IHV. La liste peut être mise à jour lorsque les IMV ou les OEM décident d’obtenir les informations d’assistance de l’HRA, en particulier les éphémères étendus, via la plateforme d’emplacement.
AgnssFormatPreferred
Spécifie le format ATABLEAUX préféré à l’aide du même masque de bits que AformatSupported. Par exemple, si XTRA1 et XTRA2 sont pris en charge, mais que XTRA2 est le format préféré, le pilote PSEC définit ApsecFormatSupported sur 0x000C et ApsecFormatPreferred pour 0x0004.
SupportDistanceTracking
Indique si le pilote/moteur PSEC prend en charge en mode natif le suivi à faible puissance de l’appareil en fonction d’un seuil spécifique à la session. Une valeur TRUE implique que le pilote peut prendre en charge ce mode natif en mode basse alimentation, par exemple en déchargeant le suivi sur un processeur à faible alimentation et en ne nécessitant pas que le processeur d’application soit à l’origine du déplacement.
Si le pilote PSEC prend en charge le suivi de distance, il prend implicitement en charge d’autres types de sessions de réparation parallèles en même temps. Par exemple, si une session de suivi de distance est active, une capture unique parallèle doit également être autorisée et les deux types de sessions de réparation doivent être respectés.
SupportContinuousTracking
Indique si le pilote/moteur PSEC prend en charge en mode natif le suivi continu à faible puissance de l’appareil. Une valeur TRUE implique que le pilote peut prendre en charge cette fonctionnalité en mode natif en mode basse alimentation, par exemple en déchargeant le suivi sur un processeur à faible alimentation et en ne nécessitant pas que le processeur d’application soit en cours d’interrogation en continu.
Si le pilote PSEC prend en charge le suivi continu, il prend implicitement en charge d’autres types de sessions de correctif parallèle en même temps. Par exemple, un suivi unique et continu peut se produire en parallèle.
Reserved1
Réservé pour une utilisation ultérieure.
Reserved2
Réservé pour une utilisation ultérieure.
Reserved3
Réservé pour une utilisation ultérieure.
Reserved4
Réservé pour une utilisation ultérieure.
Reserved5
Réservé pour une utilisation ultérieure.
GeofencingSupport
Les pilotes JDBC version 1 doivent indiquer que cette fonctionnalité n’est pas prise en charge.
Les pilotes JDBC version 2 et versions ultérieures peuvent indiquer la prise en charge de la limite géographique en définissant les masques de bits suivants :
#define GNSS_GEOFENCESUPPORT_SUPPORTED 0x01
#define GNSS_GEOFENCESUPPORT_CIRCLE 0x02
GNSS_GEOFENCESUPPORT_SUPPORTED indique que le moteur INTEROPÉRABILITÉ prend en charge le suivi de la limite géographique. La prise en charge des fonctionnalités de suivi de la limite géographique implique qu’elle est effectuée en mode natif, de manière optimisée par puissance et utilise les technologies de positionnement hybride appropriées disponibles dans le moteur SEE, le cas échéant.
GNSS_GEOFENCESUPPORT_CIRCLE indique que le moteur TABLEAUX prend en charge les limites géographiques circulaires.
Reserved6
Réservé pour une utilisation ultérieure.
Reserved7
Réservé pour une utilisation ultérieure.
SupportCpLocation
Spécifie si l’emplacement CP est pris en charge.
SupportUplV2
Spécifie si l’emplacement du plan utilisateur V2 pour CDMA est pris en charge.
SupportSuplV1
Spécifie si SUPL V1 est pris en charge.
SupportSuplV2
Spécifie si SUPL V2 est pris en charge.
SupportedSuplVersion
Spécifie la dernière version de SUPL prise en charge par le client SUPL. Ces informations de version ne sont actuellement pas utilisées par le HLOS à des fins de validation.
MaxGeofencesSupported
Spécifie le nombre de limites géographiques que le moteur MACHI peut suivre en fonction des contraintes définies par la plateforme. Cette valeur n’est valide que lorsque le champ GeofencingSupport est défini.
SupportMultipleSuplRootCert
Spécifie le paramètre SUPL.
GnssBreadCrumbPayloadVersion
Doit être BREADCRUMBING_UNSUPPORTED ou BREADCRUMBING_VERSION_x.
MaxGnssBreadCrumbFixes
Doit être supérieur ou égal à MIN_BREADCRUMBS_SUPPORTED.
Unused[496]
Mémoire tampon de remplissage réservée pour une utilisation ultérieure.
Remarques
Il s’agit d’une liste de prise en charge des fonctionnalités individuelles. La fonctionnalité est représentée par une valeur booléenne ou par une énumération bien définie de l’attribut spécifique.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | driver.h (include Messagedriver.h) |