Share via


Función PcNewDmaChannel (portcls.h)

La función PcNewDmaChannel crea un nuevo objeto de canal DMA. Esta función está obsoleta; para obtener más información, vea los comentarios siguientes.

Sintaxis

PORTCLASSAPI NTSTATUS PcNewDmaChannel(
  [out]          PDMACHANNEL         *OutDmaChannel,
  [in, optional] PUNKNOWN            OuterUnknown,
  [in]           POOL_TYPE           PoolType,
  [in]           PDEVICE_DESCRIPTION DeviceDescription,
  [in]           PDEVICE_OBJECT      DeviceObject
);

Parámetros

[out] OutDmaChannel

Puntero de salida para el objeto DMA-channel creado por esta función. Este parámetro apunta a una variable de puntero asignada por el autor de la llamada en la que la función genera una referencia al objeto IDmaChannel recién creado. Especifique un valor de puntero válido que no sea NULL para este parámetro.

[in, optional] OuterUnknown

Puntero a la interfaz IUnknown de un objeto que necesita agregar el objeto. A menos que se requiera la agregación, establezca este parámetro en NULL.

[in] PoolType

Especifica el tipo de bloque de almacenamiento desde el que se va a asignar el objeto. Se trata de un valor de enumeración POOL_TYPE . Especifique un tipo de grupo no paginado para este parámetro.

[in] DeviceDescription

Puntero a una descripción del dispositivo físico para el que el autor de la llamada solicita un objeto DMA. Este parámetro apunta a una estructura de tipo DEVICE_DESCRIPTION.

[in] DeviceObject

Puntero al objeto de dispositivo para el dispositivo de adaptador físico. Este parámetro apunta a una estructura del sistema de tipo DEVICE_OBJECT.

Valor devuelto

PcNewDmaChannel devuelve STATUS_SUCCESS si la llamada se realizó correctamente. De lo contrario, devuelve un código de error adecuado.

Comentarios

PcNewDmaChannel está obsoleto. Para todos los nuevos controladores de audio, use uno de los siguientes métodos IPortWave Xxx::NewXxxDmaChannel en lugar de PcNewDmaChannel:

IPortWavePci::NewMasterDmaChannel

IPortWaveCíclica::NewMasterDmaChannel

IPortWaveCíclica::NewSlaveDmaChannel

Por motivos de compatibilidad con versiones anteriores, el controlador del sistema PortCls seguirá admitiendo PcNewDmaChannel y los controladores existentes pueden seguir usando esta función.

Especifique el parámetro PoolType para que sea uno de los tipos de grupo no paginados definidos en la enumeración POOL_TYPE. El objeto DMA-channel no debe residir en memoria paginada porque se puede llamar a varios de los métodos de la interfaz IDmaChannel desde IRQL DISPATCH_LEVEL.

Los parámetros OutDmaChannel y OuterUnknown siguen las convenciones de recuento de referencias para objetos COM.

Nota

Microsoft admite un entorno diverso e inclusivo. Este artículo contiene referencias a la terminología que la guía de estilo de Microsoft para la comunicación sin sesgo reconoce como excluyente. La palabra o frase se usa en este artículo para la coherencia porque actualmente aparece en el software. Cuando el software se actualice para quitar el idioma, este artículo se actualizará para que esté en alineación.

Requisitos

Requisito Value
Cliente mínimo compatible Obsoleto. Para todos los controladores de audio nuevos, use en su lugar un método IPortWaveXxx::NewXxxDmaChannel. El controlador del sistema PortCls implementa la función PcNewDmaChannel en Microsoft Windows 98/Me y en los sistemas operativos Windows 2000 y versiones posteriores.
Plataforma de destino Universal
Encabezado portcls.h (incluya Portcls.h)
Library Portcls.lib
IRQL PASSIVE_LEVEL

Consulte también

DEVICE_DESCRIPTION

DEVICE_OBJECT

IDmaChannel

POOL_TYPE