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 |