Função de retorno de chamada PFNKSPININITIALIZEALLOCATOR (ks.h)
A rotina AVStrMiniInitializeAllocator de um minidriver AVStream inicializa um alocador que será associado a um pin.
Sintaxe
PFNKSPININITIALIZEALLOCATOR Pfnkspininitializeallocator;
NTSTATUS Pfnkspininitializeallocator(
[in] PKSPIN Pin,
[in] PKSALLOCATOR_FRAMING AllocatorFraming,
[out] PVOID *Context
)
{...}
Parâmetros
[in] Pin
Ponteiro para uma estrutura KSPIN que descreve o pino ao qual o alocador deve ser associado.
[in] AllocatorFraming
Ponteiro para uma estrutura KSALLOCATOR_FRAMING que descreve os requisitos de enquadramento que o alocador deve usar.
[out] Context
Ponteiro para um contexto para o alocador que será passado como um parâmetro para as outras rotinas dessa estrutura. Por exemplo, o driver pode armazenar estruturas de enquadramento de pino ou alocador para referência posterior por outras rotinas de retorno de chamada. Observe que outras rotinas para KSALLOCATOR_DISPATCH devem ter pelo menos uma maneira indireta de referenciar Pin. (Por exemplo, AVStrMiniAllocate precisará ser capaz de acessar as informações allocatorFraming para Pin e Context é o único parâmetro que o AVStream passará.)
Retornar valor
AVStrMiniInitializeAllocator deve retornar STATUS_SUCCESS ou o código de erro que recebeu tentando criar o alocador.
Comentários
O minidriver especifica o endereço dessa rotina no membro InitializeAllocator de sua estrutura KSALLOCATOR_DISPATCH . O minidriver passa essa estrutura para o driver de classe em KSPIN_DISPATCH.
Observe que os alocadores do modo kernel não podem alocar quadros que possam eventualmente chegar ao modo de usuário.
O AVStream chama AVStrMiniInitializeAllocator para inicializar o alocador fornecido. O manipulador para essa rotina deve se preparar para lidar com alocação de memória e solicitações gratuitas.
Para obter mais informações, consulte Alocadores de KS.
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 | Área de Trabalho |
Cabeçalho | ks.h (inclua Ks.h) |