Compartilhar via


estrutura _BRB_SCO_TRANSFER (bthddi.h)

A estrutura _BRB_SCO_TRANSFER descreve um buffer para ler dados isocronos ou gravar dados isócronos em um canal SCO.

Sintaxe

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

Membros

Hdr

Uma estrutura BRB_HEADER que contém informações sobre o BRB atual.

BtAddress

O endereço Bluetooth do dispositivo remoto.

ChannelHandle

O identificador do canal SCO que foi retornado pela pilha do driver Bluetooth em resposta a uma solicitação de BRB_SCO_OPEN_CHANNEL ou BRB_SCO_OPEN_CHANNEL_RESPONSE anterior.

TransferFlags

Sinalizadores que especificam o comportamento básico do BRB. Os valores de sinalizador válidos são listados na tabela a seguir.

Sinalizador Descrição
SCO_TRANSFER_DIRECTION_IN Se esse bit estiver definido, o BRB lerá dados isócronos de um dispositivo remoto por meio do canal SCO.
SCO_TRANSFER_DIRECTION_OUT Se esse bit estiver definido, o BRB gravará dados isócronos em um dispositivo remoto por meio do canal SCO.

BufferSize

O tamanho, em bytes, do buffer de entrada descrito pelo membro buffer dessa estrutura.

Buffer

Um ponteiro para o buffer de entrada. Esse valor deve ser NULL quando o membro buffer não é usado.

BufferMDL

Um ponteiro para o buffer de entrada MDL. Esse valor deve ser NULL quando o membro BufferMDL não for usado.

DataTag

Gravação sco

Comentários

Para ler dados isócronos ou gravar dados isócronos em uma conexão SCO, os drivers de perfil devem criar e enviar uma solicitação de BRB_SCO_TRANSFER .

Cada conexão SCO é bidirecional e pode ser lida e gravada simultaneamente.

Os BRBs de leitura permanecerão pendentes até que os dados cheguem ou até que o driver de perfil os libere. É recomendável que os drivers de nível superior tenham pelo menos dois BRBs de leitura pendentes abertos a qualquer momento para aceitar dados de entrada do dispositivo remoto.

A pilha de driver Bluetooth não fornece nenhum buffer para dados isócronos de entrada. Portanto, uma pequena lacuna entre a conclusão de um IRP de leitura e o envio do próximo pode causar perda de dados.

Se Buffer e BufferMDL contiverem valores não NULL , BufferMDL terá precedência.

Requisitos

Requisito Valor
Cliente mínimo com suporte Versões:_Supported no Windows Vista e posteriores.
Cabeçalho bthddi.h (inclua Bthddi.h)

Confira também

BRB_HEADER

BRB_SCO_OPEN_CHANNEL

BRB_SCO_OPEN_CHANNEL_RESPONSE

BRB_SCO_TRANSFER