Partilhar via


Método IPortWavePciStream::TerminatePacket (portcls.h)

O método TerminatePacket termina o pacote que está sendo mapeado no momento.

Sintaxe

NTSTATUS TerminatePacket();

Valor de retorno

TerminatePacket retornará STATUS_SUCCESS se a chamada tiver sido bem-sucedida. Caso contrário, o método retornará um código de erro apropriado.

Observações

Esse método é usado principalmente para capturar situações em que os pacotes de E/S precisam terminar em pontos específicos no fluxo (por exemplo, para sincronizar com quadros de vídeo). O buffer de dados para um pino de captura em um dispositivo de áudio consiste em um ou mais pacotes de E/S. Cada pacote de E/S é a parte do buffer de dados anexada a um IRP de mapeamento específico. Por padrão, enquanto um fluxo de captura está no estado KSSTATE_RUN, o conteúdo de um pacote de E/S fica disponível para o cliente somente quando o último mapeamento no pacote foi preenchido. O método TerminatePacket disponibiliza um pacote parcialmente preenchido imediatamente para o cliente sem esperar por dados adicionais de captura.

Alterar o estado de um fluxo de captura de KSSTATE_RUN para KSSTATE_STOP encerra automaticamente o pacote de E/S atual.

Requisitos

Requisito Valor
da Plataforma de Destino Universal
cabeçalho portcls.h (inclua Portcls.h)
IRQL <=DISPATCH_LEVEL