Método CBaseAllocator.Alloc

El Alloc método asigna memoria para los búferes.

Sintaxis

virtual HRESULT Alloc();

Parámetros

Este método no tiene parámetros.

Valor devuelto

Devuelve uno de los siguientes valores HRESULT.

Código devuelto Descripción
S _ FALSE
Los requisitos de búfer no han cambiado.
S _ OK
Los requisitos del búfer han cambiado.
VFW _ E _ SIZENOTSET
No se han establecido los requisitos de búfer.

Observaciones

El método CBaseAllocator::Commit llama a este método.

En la clase base, este método no asigna ninguna memoria. Devuelve un error si no se han establecido los requisitos del búfer, S FALSE si los requisitos no han cambiado y S OK si los requisitos _ _ han cambiado.

Una clase derivada debe invalidar este método para realizar la asignación de memoria real. Normalmente, la clase derivada realizará los pasos siguientes:

  1. Llame a la implementación de la clase base para determinar si la memoria realmente necesita asignarse.
  2. Asigne memoria.
  3. Cree objetos CMediaSample que contengan fragmentos de memoria del paso 2.
  4. Agregue cada objeto CMediaSample a la lista de ejemplos gratuitos (CBaseAllocator::m _ lFree).

Para obtener un ejemplo, vea CMemAllocator::Alloc.

Requisitos

Requisito Value
Encabezado
Amfilter.h (incluir Secuencias.h)
Biblioteca
Strmbase.lib (compilaciones comerciales);
Strmbasd.lib (compilaciones de depuración)

Consulte también

CBaseAllocator (clase)