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) |