次の方法で共有


_BRB_SCO_TRANSFER構造体 (bthddi.h)

_BRB_SCO_TRANSFER構造体は、等時性データの読み取りまたは SCO チャネルへの等時性データの書き込みを行うバッファーを記述します。

構文

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

メンバーズ

Hdr

現在の BRB に関する情報を含む BRB_HEADER 構造体。

BtAddress

リモート デバイスのBluetoothアドレス。

ChannelHandle

以前の BRB_SCO_OPEN_CHANNEL または BRB_SCO_OPEN_CHANNEL_RESPONSE 要求に応答して、Bluetooth ドライバー スタックによって返された SCO チャネル ハンドル。

TransferFlags

BRB の基本的な動作を指定するフラグ。 有効なフラグ値を次の表に示します。

形容
SCO_TRANSFER_DIRECTION_IN このビットが設定されている場合、BRB は SCO チャネルを介してリモート デバイスから等時性データを読み取ります。
SCO_TRANSFER_DIRECTION_OUT このビットが設定されている場合、BRB は SCO チャネルを介して等時性データをリモート デバイスに書き込みます。

BufferSize

この構造体の Buffer メンバーによって記述される入力バッファーのサイズ (バイト単位)。

Buffer

入力バッファーへのポインター。 Buffer メンバーが使用されていない場合、この値は NULL する必要があります。

BufferMDL

MDL 入力バッファーへのポインター。 BufferMDL メンバーが使用されていない場合、この値は NULL する必要があります。

DataTag

SCO 書き込み

備考

等時性データの読み取りまたは SCO 接続への等時性データの書き込みを行うために、プロファイル ドライバーは BRB_SCO_TRANSFER 要求 ビルドして送信 必要があります。

各 SCO 接続は双方向であり、同時に読み取りと書き込みを行うことができます。

読み取り BRB は、データが到着するまで、またはプロファイル ドライバーによってフラッシュされるまで保留中のままになります。 上位レベルのドライバーでは、リモート デバイスからの受信データを受け入れるために、少なくとも 2 つの保留中の読み取り BRB をいつでも開くことをお勧めします。

Bluetooth ドライバー スタックは、受信アイソクロナス データのバッファリングを提供しません。 したがって、1 つの読み取り IRP の完了と次の読み取り IRP の送信の間に小さなギャップが発生すると、データが失われる可能性があります。

BufferBufferMDL の両方NULL 値が含まれている場合は、BufferMDL が優先されます。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista 以降のバージョン:_Supported。
ヘッダー bthddi.h (Bthddi.h を含む)

関連項目

BRB_HEADER

BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

BRB_SCO_TRANSFER