Método IDCompositionDevice2::CreateSurfaceFactory (dcomp.h)
Crea un objeto de fábrica de superficies DirectComposition de Microsoft, que se puede usar para crear otros objetos de superficie DirectComposition o superficie virtual.
Sintaxis
HRESULT CreateSurfaceFactory(
[in] IUnknown *renderingDevice,
[out] IDCompositionSurfaceFactory **surfaceFactory
);
Parámetros
[in] renderingDevice
Puntero a un dispositivo DirectX que se usará para crear objetos de superficie DirectComposition. Debe ser un puntero a un objeto que implementa las interfaces IDXGIDevice o ID2D1Device . Este parámetro no debe ser null.
[out] surfaceFactory
Objeto de fábrica de superficie recién creado. Este parámetro no debe ser null.
Valor devuelto
Si la función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error de HRESULT. Consulte Códigos de error de DirectComposition para obtener una lista de códigos de error.
Comentarios
Un generador de superficies permite que una aplicación use simultáneamente más de un solo dispositivo DXGI o Direct2D con DirectComposition. Cada fábrica de superficies tiene una asociación permanente con un dispositivo DXGI o Direct2D, pero un dispositivo DirectComposition puede tener cualquier número de fábricas de superficies.
Cada fábrica de superficie administra los recursos independientemente de los demás. En concreto, los grupos de DirectComposition agrupan asignaciones de superficies para mitigar los costos de asignación y desasignación de superficies. Este grupo se realiza en función de la fábrica por superficie.
Si se llama a la función DCompositionCreateDevice2 con un parámetro renderingDevice que no es NULL, el objeto de dispositivo DirectComposition devuelto tiene un generador de superficies implícito bajo las cubiertas asociadas al dispositivo de representación especificado. Esta fábrica de superficie implícita se usa para atender los métodos IDCompositionDevice::CreateSurface, IDCompositionDevice::CreateVirtualSurface, IDCompositionDevice2::CreateSurface e IDCompositionDevice2::CreateVirtualSurface .
Un objeto de superficie permanece activo siempre que cualquiera de las superficies o superficies virtuales que creó permanezcan activas, ya sea directamente porque la aplicación contiene una referencia directa o indirectamente porque una o varias de estas superficies están asociadas a uno o varios objetos visuales.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 8.1 [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2012 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | dcomp.h |
Library | Dcomp.lib |
Archivo DLL | Dcomp.dll |