Condividi tramite


Funzione UcmConnectorDataDirectionChanged (ucmmanager.h)

Notifica all'estensione del framework di gestione connettori USB (UcmCx) con il nuovo ruolo dati di una modifica del ruolo 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 UcmConnectorCreare.

[in] Success

Usato per indicare un errore di scambio di ruoli dati avviato da UcmCx tramite 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 connettore è collegato, UcmCx aggiorna il ruolo 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 connettore per UcmTypeCPortStateDfp.

UcmCx può modificare il ruolo 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.

Fabbisogno

Requisito Valore
client minimo supportato Windows 10
server minimo supportato Windows Server 2016
piattaforma di destinazione Finestre
versione minima di KMDF 1.15
versione minima di UMDF 2.15
intestazione ucmmanager.h (include Ucmcx.h)
libreria UcmCxstub.lib
IRQL PASSIVE_LEVEL

Vedere anche