// gnssdriver.h
typedef struct {
ULONG Size;
ULONG Version;
GNSS_EVENT_TYPE EventType;
ULONG EventDataSize;
BYTE Unused[512];
union {
GNSS_FIXDATA FixData;
GNSS_FIXDATA_2 FixData2;
GNSS_AGNSS_REQUEST_PARAM AgnssRequest;
GNSS_NI_REQUEST_PARAM NiRequest;
GNSS_ERRORINFO ErrorInformation;
GNSS_NMEA_DATA NmeaData;
GNSS_GEOFENCE_ALERT_DATA GeofenceAlertData;
GNSS_BREADCRUMBING_ALERT_DATA BreadcrumbAlertData;
GNSS_GEOFENCES_TRACKINGSTATUS_DATA GeofencesTrackingStatus;
GNSS_DRIVER_REQUEST_DATA DriverRequestData;
BYTE CustomData[ANYSIZE_ARRAY];
};
} GNSS_EVENT_2, *PGNSS_EVENT_2;
View the official Windows Driver Kit DDI referenceNo description available.
The GNSS_EVENT_2 structure defines the information required for a GNSS event.
SizeStructure size.
VersionVersion number.
EventTypeEvent type.
Depending on the event type, a specific data element of the union will be filled.
EventDataSizeThe size of the event data union contained in this event.
The GNSS driver must fill in appropriate size to avoid excessive data-copy between the layers. The GNSS adapter will access only the initial bytes of the event data, as specified by this element.
UnusedUnused.
FixDataThis structure is filled if EventType is GNSS_Fix_Available.
FixData2AgnssRequestThis structure is filled if EventType is GNSS_Require_Agnss.
NiRequestThis structure is filled if EventType is GNSS_Event_Ni.
ErrorInformationThis structure is filled if EventType is GNSS_Error.
NmeaDataThis structure is filled if EventType is GNSS_Event_NmeaData.
GeofenceAlertDataThis structure is filled if EventType is GNSS_Event_GeofenceAlertData.
BreadcrumbAlertDataThis structure contains alert information for when the breadcrumb buffer has reached a level where OS read operations should be performed.
GeofencesTrackingStatusThis structure is filled if EventType is GNSS_Event_GeofencesTrackingStatus.
DriverRequestDataThis structure is filled if EventType is GNSS_Event_DriverRequest.
CustomDataCustom data field.