PFNSCO_INDICATION_CALLBACK funzione di callback (bthddi.h)
I driver di profilo implementano una funzione di callback SCO per fornire allo stack di driver Bluetooth un meccanismo per notificare al driver di profilo le richieste di connessione SCO in ingresso dai dispositivi remoti e le eventuali modifiche allo stato di una connessione SCO attualmente aperta.
Sintassi
PFNSCO_INDICATION_CALLBACK PfnscoIndicationCallback;
void PfnscoIndicationCallback(
[in] PVOID Context,
[in] SCO_INDICATION_CODE Indication,
[in] PSCO_INDICATION_PARAMETERS Parameters
)
{...}
Parametri
[in] Context
Per le indicazioni relative alle richieste di connessione remota in ingresso, questo è il contesto specificato dal driver del profilo nel IndicationCallbackContext membro della struttura _BRB_SCO_REGISTER_SERVER quando il driver del profilo ha registrato la funzione di callback. Per le modifiche alle connessioni SCO esistenti, si tratta del membro callbackContext specificato dal driver del profilo al momento della compilazione e dell'invio di un BRB_SCO_OPEN_CHANNEL BRB.
[in] Indication
Valore SCO_INDICATION_CODE che indica il tipo di evento SCO.
[in] Parameters
Un SCO_INDICATION_PARAMETERS struttura che contiene informazioni sui parametri in base al valore passato al parametro di indicazione.
Valore restituito
Nessuno
Osservazioni
Il membro btAddress trovato nella struttura SCO_INDICATION_PARAMETERS passata nel parametro Parameters indica l'indirizzo Bluetooth del dispositivo remoto.
La funzione PFNSCO_INDICATION_CALLBACK può essere registrata in due modi.
Nel primo caso, il driver del profilo funge da server e deve registrare questa funzione di callback tramite il IndicationCallback membro della struttura _BRB_SCO_REGISTER_SERVER. Lo stack di driver Bluetooth può quindi chiamare questa funzione per notificare al driver del profilo quando un dispositivo remoto tenta di contattarlo.
Nel secondo caso, il driver del profilo funge da client e tenta di connettersi a un dispositivo remoto usando il BRB_SCO_OPEN_CHANNEL BRB. La funzione di callback PFNSCO_INDICATION_CALLBACK viene registrata tramite il membro callback della struttura _BRB_SCO_OPEN_CHANNEL passata con il BRB specificato quando ne viene inviata una tramite IOCTL_INTERNAL_BTH_SUBMIT_BRB.
Dopo la registrazione, la funzione di callback è associata solo al canale aperto da BRB e la funzione notifica al driver del profilo le azioni che si verificano sul canale aperto nel dispositivo remoto. I driver di profilo possono registrare una singola funzione per gestire le notifiche del canale come client e _BRB_SCO_REGISTER_SERVER le notifiche come server.
La struttura SCO_INDICATION_PARAMETERS contenuta nel parametro parametri viene interpretata in base al valore SCO_INDICATION_CODE passato alla funzione di callback tramite il parametro di indicazione. Per la maggior parte delle notifiche, è presente un membro di unione SCO_INDICATION_PARAMETERS che corrisponde all'evento e contiene parametri specifici dell'evento.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Versioni:_Supported in Windows Vista e versioni successive. |
piattaforma di destinazione | Desktop |
intestazione | bthddi.h (include Bthddi.h) |
IRQL | Gli sviluppatori devono scrivere il codice di questa funzione per operare in IRQL = DISPATCH_LEVEL (se la funzione di callback non accede alla memoria di paging) o IRQL = PASSIVE_LEVEL (se la funzione di callback deve accedere alla memoria di paging) |