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 |