структура GNSS_GEOFENCE_CREATE_PARAM (gnssdriver.h)
Структура GNSS_GEOFENCE_CREATE_PARAM определяет параметры для создания геозоны в подсистеме GNSS.
Синтаксис
typedef struct {
ULONG Size;
ULONG Version;
ULONG AlertTypes;
GNSS_GEOFENCE_STATE InitialState;
GNSS_GEOREGION Boundary;
BYTE Unused[512];
} GNSS_GEOFENCE_CREATE_PARAM, *PGNSS_GEOFENCE_CREATE_PARAM;
Члены
Size
Размер структуры.
Version
Номер версии.
AlertTypes
Это битовая маска, которая указывает различные оповещения для этой геозоны, которые интересуют HLOS. Подсистема GNSS не должна создавать оповещения о геозоне, если только это не требуется HLOS.
Если HLOS задает только GNSS_GEOFENCEALERTTYPE_ENTRY, подсистема GNSS должна постоянно отслеживать геозону, но создавать оповещение только тогда, когда устройство вошел в геозону. Следующее оповещение ожидается при выходе устройства из геозоны и повторном входе.
Если HLOS задает только GNSS_GEOFENCEALERTTYPE_EXIT, подсистема GNSS должна отслеживать геозону все время, но создавать оповещение только тогда, когда устройство выходит из геозоны после ее ввода ранее. Следующее оповещение ожидается при перемещении устройства в геозону и выходе из нее.
Если HLOS задает обе битовые маски, подсистема GNSS должна постоянно отслеживать геозону и создавать оповещение при перемещении устройства в геозону и из нее.
Во всех случаях подсистема GNSS должна отдельно создавать глобальное оповещение о состоянии отслеживания, если ей не удается отслеживать геозоны (независимо от их параметров оповещения).
InitialState
Указывает начальное состояние конкретной геозоны, как видно из HLOS. Подсистема GNSS должна использовать это состояние в качестве начального состояния геозоны, а не всегда начиная с состояния GNSS_GeofenceState_Unknown. Это позволяет подсистеме GNSS оставаться в синхронизации с HLOS с точки зрения состояний геозоны и обойти любые различия в логике обнаружения входа или выхода из геозоны между подсистемой GNSS и HLOS.
Когда подсистема GNSS начинает отслеживать только что добавленную геозону, если он определяет, что геозона находится в состоянии, отличном от исходного, он должен создать соответствующее оповещение. И наоборот, если состояния идентичны, оповещение не должно вызываться.
Boundary
Фактическая граница геозоны.
Unused[512]
Буфер заполнения, зарезервированный для использования в будущем.
Комментарии
Для определения геозоны используется географическая фигура. Windows 10 в настоящее время поддерживает только циклические геозоны.
Требования
Требование | Значение |
---|---|
Заголовок | gnssdriver.h (включая Gnssdriver.h) |