Поделиться через


структура 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

Адрес Bluetooth удаленного устройства.

Parameters

Parameters.Connect

Структура, содержащая параметры для функции обратного вызова IndicationRemoteConnect.

Parameters.Connect.Request

Структура, содержащая параметры запроса на подключение.

Parameters.Connect.Request.PSM

Мультиплексер протокола или службы , передаваемый в вызывающую функцию, когда значение IndicationRemoteConnectINDICATION_CODE указано в параметре индикатора функции обратного вызова.

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

Логическое значение, которое использует драйвер профиля для уведомления стека драйверов Bluetooth, чтобы закрыть подключение L2CAP. Установите для этого члена значение TRUE, чтобы уведомить стек драйверов Bluetooth, чтобы закрыть подключение. В противном случае установите для него значение false, чтобы сохранить подключение открытым.

Parameters.RecvPacket

Структура, содержащая параметры для значения IndicationRecvPacketINDICATION_CODE.

Parameters.RecvPacket.PacketLength

Размер пакета, отправляемого функцией обратного вызова через подключение L2CAP.

Parameters.RecvPacket.TotalQueueLength

Количество пакетов, обрабатываемых через подключение L2CAP.

Замечания

Функция обратного вызова драйвера профиля L2CAP должна обрабатывать эту структуру по-разному в зависимости от значения, которое стек драйверов Bluetooth передает в параметре индикатора функции обратного вызова.

  • Когда стек драйверов Bluetooth передает IndicationRemoteConnect, функция обратного вызова должна использовать элемент Connect объединения параметров .

  • Когда стек драйверов Bluetooth передает IndicationRemoteDisconnect, функция обратного вызова должна использовать элемент Отключить объединения параметров .

  • Когда стек драйверов Bluetooth передает IndicationRemoteConfigRequest, функция обратного вызова должна использовать элемент ConfigRequest объединения параметров .

  • Когда стек драйверов Bluetooth передает IndicationRemoteConfigResponse, функция обратного вызова должна использовать элемент ConfigResponse объединения параметров .

  • Когда стек драйверов Bluetooth передает IndicationRemoteFreeExtraOptions, функция обратного вызова должна использовать FreeExtraOptions члена объединения параметров .

  • Когда стек драйверов Bluetooth передает IndicationRemoteRecvPacket, функция обратного вызова должна использовать элемент RecvPacket объединения параметров .

Требования

Требование Ценность
минимальные поддерживаемые клиентские Версии:_Supported в Windows Vista и более поздних версиях.
заголовка bthddi.h (include Bthddi.h)

См. также

CHANNEL_CONFIG_PARAMETERS

INDICATION_CODE

функция обратного вызова L2CAP

L2CAP_CONFIG_OPTION

L2CAP_DISCONNECT_REASON