структура INDICATION_PARAMETERS (bthddi.h)
Структура INDICATION_PARAMETERS передается в качестве параметра 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
Bluetooth-адрес удаленного устройства.
Parameters
Parameters.Connect
Структура, содержащая параметры функции обратного вызова IndicationRemoteConnect .
Parameters.Connect.Request
Структура, содержащая параметры для запроса на подключение.
Parameters.Connect.Request.PSM
Протокол-мультиплексор служб (PSM), передаваемый вызывающей функции, когда значение IndicationRemoteConnectINDICATION_CODE указано в параметре Indication функции обратного вызова.
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
Флаг, указывающий состояние запроса конфигурации. Допустимые значения флагов перечислены в следующей таблице.
Flag | Описание |
---|---|
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
Флаг, указывающий состояние запроса конфигурации. Допустимые значения флагов перечислены в следующей таблице.
Flag | Описание |
---|---|
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
Логическое значение, которое драйвер профиля использует для уведомления стека драйверов Bluetooth о закрытии подключения L2CAP. Установите для этого члена значение TRUE , чтобы уведомить стек драйверов Bluetooth о закрытии подключения. В противном случае установите для него значение FALSE , чтобы не закрывать подключение.
Parameters.RecvPacket
Структура, содержащая параметры для значения IndicationRecvPacketINDICATION_CODE .
Parameters.RecvPacket.PacketLength
Размер (в байтах) пакета, отправляемого функцией обратного вызова через подключение L2CAP.
Parameters.RecvPacket.TotalQueueLength
Количество пакетов, обрабатываемых через подключение L2CAP.
Комментарии
Функция обратного вызова L2CAP драйвера профиля должна обрабатывать эту структуру по-разному в зависимости от значения, которое передает стек драйверов Bluetooth в параметре Индика функции обратного вызова.
Когда стек драйверов Bluetooth передает IndicationRemoteConnect, функция обратного вызова должна использовать элемент Connect объединения параметров .
Когда стек драйверов Bluetooth передает IndicationRemoteDisconnect, функция обратного вызова должна использовать элемент Disconnect объединения параметров .
Когда стек драйвера Bluetooth передает IndicationRemoteConfigRequest, функция обратного вызова должна использовать член ConfigRequest объединения Parameters .
Когда стек драйверов Bluetooth передает IndicationRemoteConfigResponse, функция обратного вызова должна использовать член ConfigResponse объединения Parameters .
Когда стек драйвера Bluetooth передает IndicationRemoteFreeExtraOptions, функция обратного вызова должна использовать член FreeExtraOptions объединения Parameters .
Когда стек драйвера Bluetooth передает IndicationRemoteRecvPacket, функция обратного вызова должна использовать член RecvPacket объединения Parameters .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Versions:_Supported в Windows Vista и более поздних версий. |
Верхняя часть | bthddi.h (включая Bthddi.h) |