Funzione UcmConnectorDataDirectionChanged (ucmmanager.h)

Notifica all'estensione del framework di gestione connettori USB (UcmCx) con il nuovo ruolo dei dati di una modifica nel ruolo dei dati.

Sintassi

void UcmConnectorDataDirectionChanged(
  [in] UCMCONNECTOR  Connector,
  [in] BOOLEAN       Success,
  [in] UCM_DATA_ROLE CurrentDataRole
);

Parametri

[in] Connector

Gestire l'oggetto connettore ricevuto dal driver client nella chiamata precedente a UcmConnectorCreate.

[in] Success

Usato per indicare l'errore di uno scambio di ruoli dati avviato da UcmCx usando EVT_UCM_CONNECTOR_SET_DATA_ROLE.

Se TRUE, l'operazione ha avuto esito positivo. FALSE, in caso contrario.

[in] CurrentDataRole

Valore UCM_TYPEC_PARTNER che indica il nuovo ruolo dati.

Valore restituito

nessuno

Osservazioni

UcmConnectorDataDirectionChanged restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, questa funzione inline può restituire un valore NTSTATUS appropriato.

Se il partner del connettore è collegato, UcmCx aggiorna il ruolo dei dati del partner a seconda del valore CurrentDataRole . Ad esempio, se il driver client modifica il ruolo dati in UcmTypeCPortStateUfp, UcmCx aggiorna il ruolo del partner del connettore a UcmTypeCPortStateDfp.

UcmCx può modificare il ruolo dei dati di un connettore e richiama EVT_UCM_CONNECTOR_SET_DATA_ROLE. In risposta a tale chiamata, il client deve eseguire l'operazione di DR_Swap e indicare l'esito positivo/negativo dell'operazione chiamando UcmConnectorDataDirectionChanged.

In alternativa, il driver client potrebbe scegliere di eseguire uno scambio di ruoli in modo autonomo oppure il partner potrebbe eseguire uno scambio di ruoli. In entrambi i casi, al termine dello scambio di ruoli, il driver deve segnalare il nuovo ruolo a UcmCx usando UcmConnectorDataDirectionChanged.

Requisiti

Requisito Valore
Client minimo supportato Windows 10
Server minimo supportato Windows Server 2016
Piattaforma di destinazione Windows
Versione KMDF minima 1.15
Versione UMDF minima 2.15
Intestazione ucmmanager.h (includere Ucmcx.h)
Libreria UcmCxstub.lib
IRQL PASSIVE_LEVEL

Vedi anche