Compartilhar via


estrutura SERCX_BUFFER_DESCRIPTOR (sercx.h)

A estrutura SERCX_BUFFER_DESCRIPTOR descreve um buffer de dados para uma operação de recebimento ou operação de transmissão.

Sintaxe

typedef struct SERCX_BUFFER_DESCRIPTOR {
  USHORT Size;
  PUCHAR Buffer;
  ULONG  Length;
} SERCX_BUFFER_DESCRIPTOR, *PSERCX_BUFFER_DESCRIPTOR;

Membros

Size

O tamanho, em bytes, dessa estrutura. Os métodos SerCxRetrieveReceiveBuffer e SerCxRetrieveTransmitBu ffer usam esse membro para determinar qual versão da estrutura o chamador está usando. O tamanho dessa estrutura pode mudar em versões futuras do arquivo de cabeçalho Sercx.h.

Buffer

O endereço de memória virtual do buffer. A memória do buffer não épagada.

Length

O número de bytes disponíveis no buffer. Esse tamanho determina o número maximizado de bytes que podem ser transferidos pela operação de recebimento ou transmissão.

Observações

O driver do controlador serial usa as informações nessa estrutura para determinar de onde na memória ler dados durante uma operação de recebimento e onde na memória gravar dados durante uma operação de transmissão.

A qualquer momento, não pode haver mais de um buffer de recebimento válido e um buffer de transmissão válido. O driver do controlador chama o método SerCxRetrieveReceiveBuffer para obter o buffer de recebimento e chama o método SerCxRetrieveTransmitBuffer para obter o buffer de transmissão. Ambos os métodos copiam descrições de buffer em estruturas de SERCX_BUFFER_DESCRIPTOR alocadas pelo chamador. Uma chamada subsequente a um desses métodos invalida o descritor emitido anteriormente para o buffer de recebimento ou buffer de transmissão, respectivamente. O chamador não deve acessar um buffer descrito por um descritor de buffer que não é mais válido.

Os buffers obtidos por chamadas sucessivas para SerCxRetrieveReceiveBuffer ou SerCxRetrieveTransmitBuffer não têm garantia de serem contíguos.

O driver do controlador deve chamar a função SERCX_BUFFER_DESCRIPTOR_INIT para inicializar uma estrutura de SERCX_BUFFER_DESCRIPTOR antes que a estrutura seja passada para o método SerCxRetrieveReceiveBuffer ou método serCxRetrieveTransmitBuffer. Depois que um descritor de buffer é inicializado, ele pode ser reutilizado sem ser inicializado novamente.

Requisitos

Requisito Valor
de cliente com suporte mínimo Com suporte a partir do Windows 8.
cabeçalho sercx.h

Consulte também

SERCX_BUFFER_DESCRIPTOR_INIT

SerCxRetrieveReceiveBuffer

SerCxRetrieveTransmitBuffer