Função KsPinRegisterIrpCompletionCallback (ks.h)

A função KsPinRegisterIrpCompletionCallback registra uma rotina de retorno de chamada definida pelo minidriver para um pin especificado. O AVStream chama a rotina fornecida pelo minidriver quando um IRP conclui uma passagem pelo circuito e o quadro associado ao IRP está prestes a ser reciclado ou desativado.

Sintaxe

void KsPinRegisterIrpCompletionCallback(
  [in] PKSPIN                Pin,
  [in] PFNKSPINIRPCOMPLETION IrpCompletion
);

Parâmetros

[in] Pin

Um ponteiro para a estrutura KSPIN para a qual registrar um retorno de chamada de conclusão.

[in] IrpCompletion

Esse parâmetro fornece o endereço de uma rotina AVStrMiniPinIrpCompletion a ser chamada quando um IRP conclui sua passagem do circuito e está prestes a ser reciclado ou desativado.

Retornar valor

Nenhum

Comentários

KsPinRegisterIrpCompletionCallback deve ser chamado em IRQL=PASSIVE_LEVEL antes que o pino entre em KSSTATE_ACQUIRE. Para obter mais informações sobre estados de pino, consulte KSSTATE.

Essa função é frequentemente chamada da expedição de criação de pin. Veja KSPIN_DISPATCH.

KsPinRegisterIrpCompletionCallback só é útil em pinos de origem IRP e normalmente é usado em pinos de fonte de dados. Para um pin de fonte de dados, o retorno de chamada é feito depois que o IRP é concluído de volta para o pino e está prestes a ser reciclado. No entanto, para um pin do coletor de dados, o retorno de chamada não está vinculado diretamente à conclusão do IRP. O AVStream ainda faz o retorno de chamada quando o IRP retorna para reciclagem. Esse retorno não ocorre até que o IRP tenha passado por todas as filas que precisam usar os dados que ele contém. Para obter informações sobre pinos de origem/coletor do IRP versus pinos de fonte de dados/coletor, consulte os membros dataflow e communication da estrutura de KSPIN_DESCRIPTOR .

KsPinRegisterIrpCompletionCallback difere significativamente de KsPinRegisterFrameReturnCallback porque essa rotina não coloca o pino em nenhum novo modo; ele simplesmente registra uma rotina de retorno de chamada.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows XP e em sistemas operacionais posteriores e no DirectX 8.0 e versões posteriores do DirectX.
Plataforma de Destino Universal
Cabeçalho ks.h (inclua Ks.h)
Biblioteca Ks.lib
IRQL PASSIVE_LEVEL

Confira também

AVStrMiniPinCreate

AVStrMiniPinIrpCompletion

KSPIN

KSPIN_DISPATCH

KSSTATE

KsPinRegisterFrameReturnCallback