INDICATION_PARAMETERS结构(bthddi.h)
INDICATION_PARAMETERS 结构作为 参数 参数传递给配置文件驱动程序的 L2CAP 回调函数
语法
typedef struct _INDICATION_PARAMETERS {
L2CAP_CHANNEL_HANDLE ConnectionHandle;
IN BTH_ADDR BtAddress;
union {
struct {
struct {
OUT USHORT PSM;
} Request;
} Connect;
struct {
CHANNEL_CONFIG_PARAMETERS CurrentParams;
CHANNEL_CONFIG_PARAMETERS RequestedParams;
CHANNEL_CONFIG_PARAMETERS ResponseParams;
USHORT Response;
} ConfigRequest;
struct {
CHANNEL_CONFIG_PARAMETERS CurrentParams;
CHANNEL_CONFIG_PARAMETERS RequestedParams;
CHANNEL_CONFIG_PARAMETERS RejectedParams;
PCO_TYPE UnknownTypes;
ULONG NumUnknownTypes;
CHANNEL_CONFIG_PARAMETERS NewRequestParams;
USHORT Response;
} ConfigResponse;
struct {
ULONG NumExtraOptions;
PL2CAP_CONFIG_OPTION ExtraOptions;
} FreeExtraOptions;
struct {
L2CAP_DISCONNECT_REASON Reason;
BOOLEAN CloseNow;
} Disconnect;
struct {
ULONG PacketLength;
ULONG TotalQueueLength;
} RecvPacket;
} Parameters;
} *PINDICATION_PARAMETERS, INDICATION_PARAMETERS;
成员
ConnectionHandle
与远程设备的 L2CAP 连接句柄。 此句柄仅适用于通过已建立的 L2CAP 连接到达的通知。
BtAddress
远程设备的蓝牙地址。
Parameters
Parameters.Connect
包含 IndicationRemoteConnect 回调函数的参数的结构。
Parameters.Connect.Request
包含连接请求参数的结构。
Parameters.Connect.Request.PSM
在回调函数的 指示 参数中指定了 IndicationRemoteConnectINDICATION_CODE 值时传递给调用函数的协议/服务多路复用器(PSM)。
Parameters.ConfigRequest
包含 IndicationRemoteConfigRequestINDICATION_CODE 值参数的结构。
Parameters.ConfigRequest.CurrentParams
包含当前通道参数的 CHANNEL_CONFIG_PARAMETERS 结构。 仅当通道以前打开并且现在正在配置时,此值才有效。 此成员在回调函数指定 IndicationRemoteConfigRequestINDICATION_CODE 值时使用。
Parameters.ConfigRequest.RequestedParams
一个 CHANNEL_CONFIG_PARAMETERS 结构,其中包含从远程主机为配置请求传递的参数。 此成员在回调函数指定 IndicationRemoteConfigRequestINDICATION_CODE 值时使用。
Parameters.ConfigRequest.ResponseParams
一个 CHANNEL_CONFIG_PARAMETERS 结构,其中包含配置文件驱动程序响应配置请求的参数。
Parameters.ConfigRequest.Response
指示配置请求状态的标志。 下表中列出了有效的标志值。
旗 | 描述 |
---|---|
CONFIG_STATUS_SUCCESS | 配置请求成功。 |
CONFIG_STATUS_DISCONNECT | 配置请求失败,因为 L2CAP 连接已断开连接。 |
CONFIG_STATUS_INVALID_PARAMETER | 配置请求失败,因为参数无效已传递到配置文件驱动程序。 |
CONFIG_STATUS_REJECT | 配置文件驱动程序拒绝了配置请求。 |
CONFIG_STATUS_UNKNOWN_OPTION | 配置请求失败,因为配置文件驱动程序无法识别其中一个指定的配置选项。 |
Parameters.ConfigResponse
包含 IndicationRemoteConfigResponseINDICATION_CODE 值参数的结构。
Parameters.ConfigResponse.CurrentParams
包含当前通道参数的 CHANNEL_CONFIG_PARAMETERS 结构。 仅当通道以前打开并且现在正在配置时,此值才有效。 此成员在回调函数指定 IndicationRemoteConfigRequestINDICATION_CODE 值时使用。
Parameters.ConfigResponse.RequestedParams
一个 CHANNEL_CONFIG_PARAMETERS 结构,其中包含从远程主机为配置请求传递的参数。 此成员在回调函数指定 IndicationRemoteConfigRequestINDICATION_CODE 值时使用。
Parameters.ConfigResponse.RejectedParams
*CHANNEL_CONFIG_PARAMETERS 结构,其中包含远程设备拒绝的配置参数设置。
Parameters.ConfigResponse.UnknownTypes
响应设备无法识别的类型数组。
Parameters.ConfigResponse.NumUnknownTypes
UnknownTypes 成员中无法识别的类型数。
Parameters.ConfigResponse.NewRequestParams
*CHANNEL_CONFIG_PARAMETERS 结构,其中包含在从远程设备返回响应后要重新提交的回调函数的参数设置。
Parameters.ConfigResponse.Response
指示配置请求状态的标志。 下表中列出了有效的标志值。
旗 | 描述 |
---|---|
CONFIG_STATUS_SUCCESS | 配置请求成功。 |
CONFIG_STATUS_DISCONNECT | 配置请求失败,因为 L2CAP 连接已断开连接。 |
CONFIG_STATUS_INVALID_PARAMETER | 配置请求失败,因为参数无效已传递到配置文件驱动程序。 |
CONFIG_STATUS_REJECT | 配置文件驱动程序拒绝了配置请求。 |
CONFIG_STATUS_UNKNOWN_OPTION | 配置请求失败,因为配置文件驱动程序无法识别其中一个指定的配置选项。 |
Parameters.FreeExtraOptions
包含 IndicationFreeExtraOptionsINDICATION_CODE 值参数的结构。
Parameters.FreeExtraOptions.NumExtraOptions
ExtraOptions 成员中包含的额外选项数。
Parameters.FreeExtraOptions.ExtraOptions
ExtraOptions 成员中包含的额外选项数。
Parameters.Disconnect
包含 IndicationRemoteDisconnectINDICATION_CODE 值参数的结构。
Parameters.Disconnect.Reason
一个 L2CAP_DISCONNECT_REASON 值,该值指示与远程设备的 L2CAP 连接终止的原因。
Parameters.Disconnect.CloseNow
配置文件驱动程序用来通知蓝牙驱动程序堆栈关闭 L2CAP 连接的布尔值。 将此成员设置为 TRUE 以通知蓝牙驱动程序堆栈关闭连接。 否则,将其设置为 FALSE 使连接保持打开状态。
Parameters.RecvPacket
包含 IndicationRecvPacketINDICATION_CODE 值参数的结构。
Parameters.RecvPacket.PacketLength
回调函数通过 L2CAP 连接发送的数据包的大小(以字节为单位)。
Parameters.RecvPacket.TotalQueueLength
要通过 L2CAP 连接处理的数据包数。
言论
配置文件驱动程序的 L2CAP 回调函数 应根据蓝牙驱动程序堆栈传入回调函数的 指示 参数中的值以不同的方式处理此结构。
当蓝牙驱动程序堆栈通过 IndicationRemoteConnect时,回调函数应使用 ConnectParameters 联合的成员。
当蓝牙驱动程序堆栈通过 IndicationRemoteDisconnect时,回调函数应使用 DisconnectParameters 联合的成员。
当蓝牙驱动程序堆栈通过 IndicationRemoteConfigRequest时,回调函数应使用 Parameters union 的 ConfigRequest 成员。
当蓝牙驱动程序堆栈通过 IndicationRemoteConfigResponse时,回调函数应使用 Parameters union 的 ConfigResponse 成员。
当蓝牙驱动程序堆栈通过 IndicationRemoteFreeExtraOptions时,回调函数应使用 FreeExtraOptionsParameters 联合的成员。
当蓝牙驱动程序堆栈通过 IndicationRemoteRecvPacket时,回调函数应使用 Parameters union 的 RecvPacket 成员。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows Vista 及更高版本中的版本:_Supported。 |
标头 | bthddi.h (包括 Bthddi.h) |