énumération GNSS_DRIVERCOMMAND_TYPE (driver.h)
Cette énumération indique le type de commande ou de configuration du pilote SEE fourni dans la structure GNSS_DRIVERCOMMAND_PARAM.
Syntaxe
typedef enum {
GNSS_SetLocationServiceEnabled,
GNSS_SetLocationNIRequestAllowed,
GNSS_ForceSatelliteSystem,
GNSS_ForceOperationMode,
GNSS_ResetEngine,
GNSS_ClearAgnssData,
GNSS_SetSuplVersion,
GNSS_SetNMEALogging,
GNSS_SetUplServerAccessInterval,
GNSS_SetNiTimeoutInterval,
GNSS_ResetGeofencesTracking,
GNSS_SetSuplVersion2,
GNSS_CustomCommand
} GNSS_DRIVERCOMMAND_TYPE;
Constantes
GNSS_SetLocationServiceEnabled Informe le pilote si l’emplacement est activé sur l’appareil. Cette commande est émise chaque fois que le service d’emplacement est activé/désactivé sur l’appareil. Les données de commande associées sont un BOOL. Lors de la réception de cette commande définie sur FALSE, le pilote PSEC et le périphérique JDBC doivent : - Arrêtez les sessions d’emplacement en cours de n’importe quel type et de n’importe quelle application HLOS (si plusieurs applications sont prises en charge). - Si le périphérique ou le pilote SEE effectue des opérations en arrière-plan, par exemple, le suivi de la limite géographique, l’actualisation des données d’assistance, etc., ils doivent également être arrêtés. L’adaptateur CONTINUERONT d’arrêter toutes les opérations déchargées lorsque l’emplacement est désactivé. En ce qui concerne les demandes d’emplacement de l’opérateur mobile : - Les demandes d’emplacement de l’opérateur mobile pour l’emplacement d’urgence, pour répondre aux exigences CALEA, etc. doivent toujours être traitées, quel que soit l’état du commutateur d’emplacement. Ces demandes sont censées avoir l’indicateur de remplacement de confidentialité défini ou/et être lancées autour du moment où l’utilisateur effectue un appel d’urgence. - Les autres demandes d’emplacement initiées par le réseau doivent respecter la commande GNSS_SetLocationNIRequestAllowed si ce comportement est requis par l’opérateur mobile et implémenté par le pilote PSEC. Si le HLOS doit lancer une nouvelle demande d’emplacement, par exemple pour permettre à l’utilisateur de rechercher à distance l’appareil, l’adaptateur SSH envoie une commande pour définir le GNSS_SetLocationServiceEnabled sur TRUE, lancer la session de correction et lorsque les résultats sont reçus, il envoie une autre commande pour définir la GNSS_SetLocationServiceEnabled sur FALSE : - GNSS_SetLocationServiceEnabled défini sur TRUE=1 -> activé - GNSS_SetLocationServiceEnabled défini sur FALSE=0 -> Désactivé Sauf si cette commande est émise par l’adaptateur PSEC, le pilote doit supposer que le service d’emplacement est désactivé sur le système. |
GNSS_SetLocationNIRequestAllowed Informe le pilote s’il est autorisé à divertir les demandes d’emplacement initiées par le réseau mobile. La commande doit uniquement être prise en charge si nécessaire par l’opérateur mobile. À compter de Windows 10, Microsoft n’est pas au courant d’un opérateur mobile nécessitant cela plus longtemps, mais cela reste pour éviter tout problème bloquant lors de la commercialisation. Si la commande n’est pas implémentée, le pilote PSEC doit simplement conserver son comportement par défaut. Les données de commande associées sont un BOOL: - GNSS_SetLocationNIRequestAllowed défini sur TRUE=1-> Autoriser - GNSS_SetLocationNIRequestAllowed défini sur FALSE=0-> NotAllow Sauf si cette commande est explicitement émise par l’adaptateur JDBC, le pilote doit supposer que les requêtes NI sont activées sur le système. L’adaptateur PERSONNALISATION conserve un état à l’échelle du système indiquant si les requêtes NI sont autorisées. Cet état est déterminé par le commutateur maître de l’emplacement (paramètre que l’utilisateur peut activer ou désactiver) et un paramètre configuré par l’opérateur mobile pour indiquer si les demandes NI dépendent du commutateur principal d’emplacement ou non. L’adaptateur JDBC évalue la valeur de ces deux paramètres et indique au pilote PSEC si les demandes NI sont autorisées ou non. Les demandes d’emplacement pour les services d’urgence ou pour CALEA (par exemple, le cas de remplacement de confidentialité en cours de définition) doivent être traitées indépendamment de la valeur de ce paramètre. |
GNSS_ForceSatelliteSystem Cette commande entraîne l’utilisation du ou des systèmes satellites spécifiés par le pilote PSEC pour obtenir des correctifs. Le paramètre est un DWORD avec les valeurs suivantes : - GNSS_SATELLITE_ANY (0x00) - GNSS_SATELLITE_GPS (0x01) - GNSS_SATELLITE_GLONASS (0x02) - GNSS_SATELLITE_BEIDOU (0x04) - GNSS_SATELLITE_GALILEO (0x08) 0x10-0xFF sont réservés. Cela devrait être utilisé uniquement à des fins de test. Certains opérateurs mobiles nécessitent des validations à l’aide d’un seul système satellite. |
GNSS_ForceOperationMode Cette commande entraîne l’utilisation du mode d’opération spécifié par le pilote PSEC. Le paramètre est un DWORD avec les valeurs suivantes : - GNSS_OPERMODE_ANY (0x00) - GNSS_OPERMODE_MSA (0x01) - GNSS_OPERMODE_MSB (0x02) - GNSS_OPERMODE_MSS (0x04) - GNSS_OPERMODE_CELLID (0x08) - GNSS_OPERMODE_AFLT (0x10) - GNSS_OPERMODE_OTDOA (0x20) 0x40-0xFF sont réservés. Cette commande est utilisée à deux fins : - Pour configurer le mode d’opération dans le cas de la configuration supl. Il est prévu que les opérateurs mobiles configurent uniquement l’appareil pour fonctionner en mode Basé sur Microsoft par lequel le service SUPL est utilisé pour obtenir des données d’assistance (GNSS_OPERMODE_MSB), ou en mode autonome (GNSS_OPERMODE_MSS) dans lequel l’appareil SEE peut fonctionner vraiment autonome ou utiliser l’assistance obtenue à partir de sources autres que le service SUPL. Le mode autonome est en fait équivalent au mode par défaut (GNSS_OPERMODE_ANY). - Pour configurer différents modes d’opération à des fins de test. Cela serait principalement utilisé par les opérateurs mobiles ou les OEM à des fins de validation. La définition de la GNSS_ForceOperationMode SUPL sur GNSS_OPERMODE_MSS indique au système SCSI de ne pas effectuer d’interaction avec le serveur SUPL pour les données ASCSI. |
GNSS_ResetEngine Cette commande efface l’état du moteurux. Une fois cette commande émise, le moteur sera prêt pour un correctif de démarrage à froid : - Toutes les données d’assistance seront supprimées. - L’almanac persistera. - Les paramètres de configuration du moteur CONTINUERONT. Cette commande ne doit être appelée qu’en l’absence de session de correction active. Cette commande est généralement utilisée pour tester de manière récursive la durée de la première correction lors du démarrage à froid. |
GNSS_ClearAgnssData Cette commande efface les données d’assistance ASECOURS du moteur SECOURS. Cela est principalement utilisé à des fins de test pour s’assurer que le pilote demande des données d’assistance lorsqu’un correctif est demandé. Les données de commande associées contiennent l’énumération GNSS_AGNSS_REQUEST_TYPE spécifique pour indiquer l’élément de données spécifique à effacer : - Si GNSS_AGNSS_TimeInjection est spécifié, la référence de temps est supprimée dans le moteur SEE. Cela peut entraîner la demande de l’injection de temps à nouveau par le moteur DESSUS. - Si GNSS_AGNSS_PositionInjection est spécifié, la référence de position grossière est supprimée dans le moteur SEE. Cela peut entraîner la demande de l’injection de position grossière par le moteur AILLE. - Si GNSS_AGNSS_BlobInjection est spécifié, les éphémères acquis à partir des satellites et tout objet blob d’assistance injecté seront supprimés dans le moteur SEE. Cela peut entraîner la demande de nouveau un objet blob d’assistance par le moteur SECOURS. Il est vivement recommandé que cette commande soit prise en charge à des fins de test même si les données d’assistance ne sont pas obtenues à partir de la plateforme d’emplacement du système d’exploitation. |
GNSS_SetSuplVersion Cette commande définit la version SUPL souhaitée par l’opérateur mobile. Les données de commande contiennent une valeur de GNSS_SUPL_VERSION structure qui inclut les versions principales et secondaires de SUPL indiquées par l’opérateur mobile. Le client SUPL doit utiliser la version supl comme spécifié dans les normes OMA SUPL, en résumé comme suit : - Pour les scénarios initiés par le réseau, le message INIT SUPL de H-SLP ou E-SLP vers set porte la version principale et mineure prévue de SUPL M1.m1 (normalement la version la plus élevée prise en charge par le SLP) dans le paramètre de version. Le message SUPL INIT contient également le numéro de version principale SUPL minimal M2 pour lequel la continuation de la session par le SET est possible dans le paramètre de version minimale. La valeur de M2 dépend du service SUPL prévu , par exemple, pour un seul correctif d’emplacement M2 peut être un ; pour l’emplacement déclenché M2 peut être deux. Une session SUPL peut être effectuée entre le SLP et l’ENSEMBLE tant que l’ensemble utilise une version principale SUPL entre M2 et M1. Set poursuit normalement la session SUPL si elle prend en charge une version majeure M de SUPL entre M2 et M1 (par exemple, M2 ≤ M ≤ M1) et indique cette version principale et une version mineure prise en charge m dans le message suivant (par exemple, implicitement dans le paramètre de version du message). - Pour les sessions SUPL lancées par SET, le message SUPL initial du SET porte la version principale et mineure prise en charge de SUPL M1.m1 (implicitement dans le paramètre de version). H-SLP poursuit la session s’il prend en charge la même version principale M1 et envoie sinon une fin SUPL et termine la session. |
GNSS_SetNMEALogging Cette commande définit l’état de la journalisation NMEA. Cette commande entraîne le démarrage/l’arrêt du pilote PSEC en fournissant les informations de correction de données via des chaînes NMEA. Le pilote SEE doit continuer à fournir des correctifs dans la structure GNSS_FIXDATA. Le paramètre est un DWORD avec les valeurs suivantes : - GNSS_NMEALOGGING_NONE (0x00) - GNSS_NMEALOGGING_ALL (0xFF) La valeur par défaut de cette commande n’est pas de journalisation NMEA (GNSS_NMEALOGGING_NONE). Cette commande ne doit pas être conservée dans le redémarrage du système. Cette commande a été introduite pour prendre en charge les tests OEM. Cette commande n’est pas utilisée par l’infrastructure d’emplacement ou par les outils de test Microsoft. |
GNSS_SetUplServerAccessInterval Cette commande définit la durée minimale entre les requêtes adressées au serveur pour une position assistée afin d’empêcher la surcharge de service. L’intervalle de temps est spécifié en secondes. Les opérateurs mobiles peuvent utiliser le fournisseur de services de configuration pour régler ce paramètre, s’ils en ont besoin. Si ce paramètre n’est pas pris en charge, s’il peut être ignoré, mais les commandes de configuration SUPL ne doivent pas échouer. |
GNSS_SetNiTimeoutInterval Cette commande définit le temps pendant lequel l’appareil doit attendre l’entrée d’un utilisateur avant de répondre à la demande NI exécutant l’action par défaut. L’intervalle de temps est spécifié en secondes et la valeur par défaut est de 35 secondes. Ce délai d’expiration est de 5 secondes plus grand que le délai d’expiration utilisé par le système d’exploitation pour attendre la réponse de l’utilisateur, et il s’agit simplement d’un échec en cas de non-réponse du système d’exploitation. Cette commande s’applique uniquement aux demandes lancées par le réseau dans lesquelles la vérification de l’utilisateur est demandée. Les opérateurs mobiles peuvent utiliser le fournisseur de services de configuration pour remplacer la valeur par défaut du système d’exploitation. Dans ce cas, les valeurs par défaut spécifiées ci-dessus doivent être remplacées par les valeurs fournies par l’opérateur mobile. |
GNSS_ResetGeofencesTracking Cette commande réinitialise l’opération de suivi de la limite géographique. Le pilote PSEC doit supprimer toutes les limites géographiques du moteur JDBC, arrêter le suivi de la limite géographique et arrêter la surveillance des conditions de signal. L’opération de suivi de la limite géographique commence comme d’habitude uniquement lorsque le HLOS crée une ou plusieurs nouvelles limites géographiques. |
GNSS_SetSuplVersion2 Cette commande définit la version SUPL 2 du pilote JDBC. |
GNSS_CustomCommand Plage pour les commandes PCI personnalisées spécifiques à IHV : 0x0100 – 0x01FF. |
Exigences
Exigence | Valeur |
---|---|
d’en-tête | driver.h |