Freigeben über


_BRB_SCO_TRANSFER Struktur (bthddi.h)

Die _BRB_SCO_TRANSFER-Struktur beschreibt einen Puffer, aus dem isochrone Daten gelesen oder isochrone Daten in einen SCO-Kanal geschrieben werden.

Syntax

struct _BRB_SCO_TRANSFER {
  BRB_HEADER         Hdr;
  BTH_ADDR           BtAddress;
  SCO_CHANNEL_HANDLE ChannelHandle;
  ULONG              TransferFlags;
  ULONG              BufferSize;
  PVOID              Buffer;
  PMDL               BufferMDL;
  ULONGLONG          DataTag;
};

Angehörige

Hdr

Eine BRB_HEADER Struktur, die Informationen zum aktuellen BRB enthält.

BtAddress

Die Bluetooth-Adresse des Remotegeräts.

ChannelHandle

Das SCO-Kanalhandle, das vom Bluetooth-Treiberstapel als Reaktion auf eine frühere BRB_SCO_OPEN_CHANNEL- oder BRB_SCO_OPEN_CHANNEL_RESPONSE-Anforderung zurückgegeben wurde.

TransferFlags

Flags, die das grundlegende Verhalten des BRB angeben. Gültige Kennzeichenwerte werden in der folgenden Tabelle aufgeführt.

Flagge Beschreibung
SCO_TRANSFER_DIRECTION_IN Wenn dieses Bit festgelegt ist, liest der BRB isochrone Daten von einem Remotegerät über den SCO-Kanal.
SCO_TRANSFER_DIRECTION_OUT Wenn dieses Bit festgelegt ist, schreibt der BRB isochrone Daten über den SCO-Kanal auf ein Remotegerät.

BufferSize

Die Größe des vom Buffer Member dieser Struktur beschriebenen Eingabepuffer in Byte.

Buffer

Ein Zeiger auf den Eingabepuffer. Dieser Wert sollte NULL- sein, wenn das Buffer Member nicht verwendet wird.

BufferMDL

Ein Zeiger auf den MDL-Eingabepuffer. Dieser Wert sollte NULL- sein, wenn das BufferMDL- element nicht verwendet wird.

DataTag

SCO-Schreibzugriff

Bemerkungen

Um isochrone Daten aus einer SCO-Verbindung zu lesen oder isochrone Daten zu schreiben, sollten Profiltreiber erstellen und einer BRB_SCO_TRANSFER Anforderung senden.

Jede SCO-Verbindung ist bidirektional und kann von und gleichzeitig geschrieben werden.

Lese-BRBs bleiben aus, bis Daten eintreffen oder bis der Profiltreiber sie löscht. Es wird empfohlen, dass Treiber auf höherer Ebene mindestens zwei ausstehende Lese-BRBs jederzeit geöffnet haben, um eingehende Daten vom Remotegerät zu akzeptieren.

Der Bluetooth-Treiberstapel stellt keine Pufferung für eingehende isochrone Daten bereit. Daher kann eine kleine Lücke zwischen dem Abschluss eines Lese-IRP und der Übermittlung der nächsten zu Datenverlust führen.

Wenn sowohl Buffer als auch BufferMDL- nichtNULL--Werte enthalten, hat BufferMDL- Vorrang.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Versionen:_Supported in Windows Vista und höher.
Header- bthddi.h (include Bthddi.h)

Siehe auch

BRB_HEADER

BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

BRB_SCO_TRANSFER