Función de devolución de llamada PFNKSPININITIALIZEALLOCATOR (ks.h)
Una rutina AVStrMiniInitializeAllocator de AVStream minidriver inicializa un asignador que se asociará a un pin.
Sintaxis
PFNKSPININITIALIZEALLOCATOR Pfnkspininitializeallocator;
NTSTATUS Pfnkspininitializeallocator(
[in] PKSPIN Pin,
[in] PKSALLOCATOR_FRAMING AllocatorFraming,
[out] PVOID *Context
)
{...}
Parámetros
[in] Pin
Puntero a una estructura KSPIN que describe la patilla con la que se va a asociar el asignador.
[in] AllocatorFraming
Puntero a una estructura de KSALLOCATOR_FRAMING que describe los requisitos de marco que debe usar el asignador.
[out] Context
Puntero a un contexto para el asignador que se pasará como parámetro a las demás rutinas de esta estructura. Por ejemplo, el controlador podría almacenar estructuras de marco de anclaje o asignador para referencia posterior por las demás rutinas de devolución de llamada. Tenga en cuenta que otras rutinas para KSALLOCATOR_DISPATCH deben tener al menos una forma indirecta de hacer referencia a Pin. (Por ejemplo, AVStrMiniAllocate tendrá que tener acceso a la información AllocatorFraming de Pin y Context es el único parámetro que AVStream pasará).
Valor devuelto
AVStrMiniInitializeAllocator debe devolver STATUS_SUCCESS o el código de error que recibió al intentar crear el asignador.
Comentarios
El minidriver especifica la dirección de esta rutina en el miembro InitializeAllocator de su estructura KSALLOCATOR_DISPATCH . El minidriver pasa esta estructura al controlador de clase en KSPIN_DISPATCH.
Tenga en cuenta que los asignadores en modo kernel no pueden asignar fotogramas que podrían llegar al modo de usuario.
AVStream llama a AVStrMiniInitializeAllocator para inicializar el asignador especificado. El controlador de esta rutina debe prepararse para controlar la asignación de memoria y las solicitudes gratuitas.
Para obtener más información, consulte Asignadores de KS.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Microsoft Windows XP y sistemas operativos posteriores y DirectX 8.0 y versiones posteriores de DirectX. |
Plataforma de destino | Escritorio |
Encabezado | ks.h (incluya Ks.h) |