Condividi tramite


struttura INDICATION_PARAMETERS (bthddi.h)

La struttura INDICATION_PARAMETERS viene passata come parametro Parameters alla funzione di callback L2CAP di un driver di profilo

Sintassi

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;

Members

ConnectionHandle

Handle di connessione L2CAP al dispositivo remoto. Questo handle è valido solo per le notifiche che arrivano su una connessione L2CAP stabilita.

BtAddress

Indirizzo Bluetooth del dispositivo remoto.

Parameters

Parameters.Connect

Struttura che contiene parametri per la funzione di callback IndicationRemoteConnect .

Parameters.Connect.Request

Struttura che contiene i parametri per una richiesta di connessione.

Parameters.Connect.Request.PSM

Protocollo/servizio Multiplexer (PSM) passato alla funzione chiamante quando il valore IndicationRemoteConnectINDICATION_CODE viene specificato nel parametro Indication della funzione di callback.

Parameters.ConfigRequest

Struttura che contiene parametri per il valore IndicationRemoteConfigRequestINDICATION_CODE .

Parameters.ConfigRequest.CurrentParams

Struttura CHANNEL_CONFIG_PARAMETERS che contiene i parametri per il canale corrente. Questo valore è valido solo se il canale è stato aperto in precedenza ed è ora in fase di configurazione. Questo membro viene usato quando la funzione di callback specifica il valore IndicationRemoteConfigRequestINDICATION_CODE .

Parameters.ConfigRequest.RequestedParams

Struttura CHANNEL_CONFIG_PARAMETERS che contiene i parametri passati dall'host remoto per le richieste di configurazione. Questo membro viene usato quando la funzione di callback specifica il valore IndicationRemoteConfigRequestINDICATION_CODE .

Parameters.ConfigRequest.ResponseParams

Struttura CHANNEL_CONFIG_PARAMETERS che contiene i parametri con cui il driver del profilo risponde alla richiesta di configurazione.

Parameters.ConfigRequest.Response

Flag che indica lo stato della richiesta di configurazione. I valori di flag validi sono elencati nella tabella seguente.

Flag Descrizione
CONFIG_STATUS_SUCCESS La richiesta di configurazione ha avuto esito positivo.
CONFIG_STATUS_DISCONNECT La richiesta di configurazione non è riuscita perché la connessione L2CAP è stata disconnessa.
CONFIG_STATUS_INVALID_PARAMETER La richiesta di configurazione non è riuscita perché un parametro non valido è stato passato al driver del profilo.
CONFIG_STATUS_REJECT Il driver del profilo ha rifiutato la richiesta di configurazione.
CONFIG_STATUS_UNKNOWN_OPTION La richiesta di configurazione non è riuscita perché una delle opzioni di configurazione specificate non è stata riconosciuta dal driver del profilo.

Parameters.ConfigResponse

Struttura che contiene parametri per il valore IndicationRemoteConfigResponseINDICATION_CODE .

Parameters.ConfigResponse.CurrentParams

Struttura CHANNEL_CONFIG_PARAMETERS che contiene i parametri per il canale corrente. Questo valore è valido solo se il canale è stato aperto in precedenza ed è ora in fase di configurazione. Questo membro viene usato quando la funzione di callback specifica il valore IndicationRemoteConfigRequestINDICATION_CODE .

Parameters.ConfigResponse.RequestedParams

Struttura CHANNEL_CONFIG_PARAMETERS che contiene i parametri passati dall'host remoto per le richieste di configurazione. Questo membro viene usato quando la funzione di callback specifica il valore IndicationRemoteConfigRequestINDICATION_CODE .

Parameters.ConfigResponse.RejectedParams

Struttura *CHANNEL_CONFIG_PARAMETERS che contiene le impostazioni dei parametri di configurazione rifiutate dal dispositivo remoto.

Parameters.ConfigResponse.UnknownTypes

Matrice di tipi non riconosciuti dal dispositivo che risponde.

Parameters.ConfigResponse.NumUnknownTypes

Numero di tipi non riconosciuti nel membro UnknownTypes .

Parameters.ConfigResponse.NewRequestParams

Struttura *CHANNEL_CONFIG_PARAMETERS che contiene le impostazioni dei parametri per la funzione di callback da inviare di nuovo dopo che la risposta è stata restituita dal dispositivo remoto.

Parameters.ConfigResponse.Response

Flag che indica lo stato della richiesta di configurazione. I valori di flag validi sono elencati nella tabella seguente.

Flag Descrizione
CONFIG_STATUS_SUCCESS La richiesta di configurazione ha avuto esito positivo.
CONFIG_STATUS_DISCONNECT La richiesta di configurazione non è riuscita perché la connessione L2CAP è stata disconnessa.
CONFIG_STATUS_INVALID_PARAMETER La richiesta di configurazione non è riuscita perché un parametro non valido è stato passato al driver del profilo.
CONFIG_STATUS_REJECT Il driver del profilo ha rifiutato la richiesta di configurazione.
CONFIG_STATUS_UNKNOWN_OPTION La richiesta di configurazione non è riuscita perché una delle opzioni di configurazione specificate non è stata riconosciuta dal driver del profilo.

Parameters.FreeExtraOptions

Struttura che contiene parametri per il valore IndicationFreeExtraOptionsINDICATION_CODE .

Parameters.FreeExtraOptions.NumExtraOptions

Numero di opzioni aggiuntive contenute nel membro ExtraOptions .

Parameters.FreeExtraOptions.ExtraOptions

Numero di opzioni aggiuntive contenute nel membro ExtraOptions .

Parameters.Disconnect

Struttura che contiene i parametri per il valore IndicationRemoteDisconnectINDICATION_CODE .

Parameters.Disconnect.Reason

Valore L2CAP_DISCONNECT_REASON che indica il motivo per cui la connessione L2CAP al dispositivo remoto è stata terminata.

Parameters.Disconnect.CloseNow

Valore booleano usato da un driver di profilo per notificare allo stack di driver Bluetooth di chiudere la connessione L2CAP. Impostare questo membro su TRUE per notificare allo stack di driver Bluetooth di chiudere la connessione. In caso contrario, impostarlo su FALSE per mantenere aperta la connessione.

Parameters.RecvPacket

Struttura che contiene i parametri per il valore IndicationRecvPacketINDICATION_CODE .

Parameters.RecvPacket.PacketLength

Dimensione, in byte, del pacchetto inviato dalla funzione di callback sulla connessione L2CAP.

Parameters.RecvPacket.TotalQueueLength

Numero di pacchetti da elaborare sulla connessione L2CAP.

Commenti

La funzione di callback L2CAP di un driver di profilo deve elaborare questa struttura in modo diverso a seconda del valore passato dallo stack di driver Bluetooth nel parametro Indication della funzione di callback.

  • Quando lo stack di driver Bluetooth passa IndicationRemoteConnect, la funzione di callback deve usare il membro Connect dell'unione Parameters .

  • Quando lo stack di driver Bluetooth passa IndicationRemoteDisconnect, la funzione di callback deve usare il membro Disconnect dell'unione Parameters .

  • Quando lo stack di driver Bluetooth passa IndicationRemoteConfigRequest, la funzione di callback deve usare il membro ConfigRequest dell'unione Parameters .

  • Quando lo stack di driver Bluetooth passa IndicationRemoteConfigResponse, la funzione di callback deve usare il membro ConfigResponse dell'unione Parameters .

  • Quando lo stack di driver Bluetooth passa IndicationRemoteFreeExtraOptions, la funzione di callback deve usare il membro FreeExtraOptions dell'unione Parameters .

  • Quando lo stack di driver Bluetooth passa IndicationRemoteRecvPacket, la funzione di callback deve usare il membro RecvPacket dell'unione Parameters .

Requisiti

Requisito Valore
Client minimo supportato Versioni:_Supported in Windows Vista e versioni successive.
Intestazione bthddi.h (include Bthddi.h)

Vedi anche

CHANNEL_CONFIG_PARAMETERS

INDICATION_CODE

Funzione di callback L2CAP

L2CAP_CONFIG_OPTION

L2CAP_DISCONNECT_REASON