WWAN_PACKET_SERVICE结构(wwan.h)
WWAN_PACKET_SERVICE结构表示 MB 设备的数据包服务附件状态。
语法
typedef struct _WWAN_PACKET_SERVICE {
ULONG uNwError;
WWAN_PACKET_SERVICE_STATE PacketServiceState;
ULONG AvailableDataClass;
ULONG CurrentDataClass;
WWAN_5G_FREQUENCY_RANGE FrequencyRange;
ULONG CurrentDataSubClass;
WWAN_SINGLE_TAI CurrentTai;
ULONG Rel3GppVer;
} WWAN_PACKET_SERVICE, *PWWAN_PACKET_SERVICE;
成员
uNwError
当数据包附加或数据包分离失败时,网络特定的错误。 有关此成员的详细信息,请参阅以下“备注”部分。
PacketServiceState
设备的数据包服务状态。
AvailableDataClass
表示当前网络中设备可用的数据类的位图。 有关值的详细列表,请参阅 WWAN_DEVICE_CAPS的 WwanDataClass 成员。
微型端口驱动程序必须将此成员设置为WWAN_DATA_CLASS_NONE设备未注册到网络,或者当没有数据类或不支持的数据类不可用时。 将设备注册到网络时,微型端口驱动程序必须使用有效值设置此成员。
CurrentDataClass
WWAN_DEVICE_CAPS 中 WwanDataClass 成员中的单个值,表示设备当前正在使用哪些数据类。
对于除 HSPA 以外的所有数据服务,微型端口驱动程序应将此成员设置为单个WWAN_DATA_CLASS_XXX值。 对于 HSPA 数据服务,微型端口驱动程序应指定按位或WWAN_DATA_CLASS_HSDPA和WWAN_DATA_CLASS_HSUPA。
微型端口驱动程序必须使用有效值设置此成员,并在设备更改服务时发送相应的通知,例如,从 1xRTT 更改为 1xEV-DO。
如果数据类不是 WwanDataClass 成员中的预定义值之一,则微型端口驱动程序应将此成员设置为 WWAN_DEVICE_CAPSWWAN_DATA_CLASS_CUSTOM。
FrequencyRange
一个 WWAN_5G_FREQUENCY_RANGE 值,该值指定设备正在使用的频率范围。 仅当 CurrentDataClass 为 WWAN_DATA_CLASS_5G_NSA 或 WWAN_DATA_CLASS_SA时,此成员才有效。
CurrentDataSubClass
此字段仅用于NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_3。
CurrentTai
表示当前单一跟踪区域标识(TAI)的 WWAN_SINGLE_TAI 结构。 此字段仅用于NDIS_WWAN_PACKET_SERVICE_STATE_REVISION_3。
Rel3GppVer
如果未知,将使用0xFFFFFFFF。 未知表示MBIM_TLV_TYPE_3GPP_REL_VERSION不包含在MBIM_PACKET_SERVICE_INFO_V3中,设备直接返回0xFFFFFFFF,或者设备使用的是 MBIM 3.0 或更高版本。
言论
当前数据包附加服务状态通常反映在设备的用户界面中。
MB 服务将 AvailableDataClass 中表示的数据类与设备功能报告的受支持数据类相结合,以向用户显示可用选项的交集。
如果设备还支持除 WWAN_DEVICE_CAPSWwanDataClass 成员中的预定义值以外的任何数据类,则微型端口驱动程序应设置WWAN_DATA_CLASS_CUSTOM标志以及为此成员中的数据类定义的相应位掩码。
查询 和 设置 OID 请求和未经请求的状态事件使用 uNwError 成员。 如果没有特定于网络的错误或网络特定的错误未知,微型端口驱动程序应将此成员设置为零。 MB作语义中的“状态指示结构”部分 显示 3GPP TS 24.008 规范中定义的数据包附加或数据包分离导致代码故障值。
以下几点提供了在不同方案中返回特定于网络的错误的准则:
- 如果数据包附加作因网络特定错误而失败,微型端口驱动程序应返回特定于网络的错误,以响应 查询 请求。 在这种情况下,微型端口驱动程序应将 uStatus NDIS_WWAN_PACKET_SERVICE_STATE结构的成员设置为WWAN_STATUS_SUCCESS,并将 uNwError 成员设置为特定于网络的错误代码。
- 如果 设置 请求失败,微型端口驱动程序应返回特定于网络的错误代码。 在这种情况下,微型端口驱动程序应将NDIS_WWAN_PACKET_SERVICE_STATE结构的 uStatus 成员设置为WWAN_STATUS_FAILURE,并将 uNwError 成员设置为特定于网络的错误代码。
- 只要设备注册状态发生更改,因为网络数据包分离设备,则未经请求的状态事件应包含特定于网络的错误。 在这种情况下,微型端口驱动程序应将NDIS_WWAN_PACKET_SERVICE_STATE结构的 uStatus 成员设置为WWAN_STATUS_SUCCESS,并将 uNwError 成员设置为特定于网络的错误代码。
微型端口驱动程序必须尽早报告原因代码。 例如,如果 MB 设备在尝试向网络提供程序注册设备时遇到以下代码之一,则微型端口驱动程序应在该时间报告它。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows 7 及更高版本的 Windows 中可用。 |
标头 | wwan.h (包括 Wwan.h) |