Método IDXGIFactoryMedia::CreateSwapChainForCompositionSurfaceHandle (dxgi1_3.h)
Crea una cadena de intercambio YUV para un identificador de superficie DirectComposition existente.
Sintaxis
HRESULT CreateSwapChainForCompositionSurfaceHandle(
[in] IUnknown *pDevice,
[in, optional] HANDLE hSurface,
[in] const DXGI_SWAP_CHAIN_DESC1 *pDesc,
[in, optional] IDXGIOutput *pRestrictToOutput,
[out] IDXGISwapChain1 **ppSwapChain
);
Parámetros
[in] pDevice
Puntero al dispositivo Direct3D para la cadena de intercambio. Este parámetro no puede ser NULL. Los controladores de software, como D3D_DRIVER_TYPE_REFERENCE, no se admiten para las cadenas de intercambio de composición.
[in, optional] hSurface
Identificador de una superficie DirectComposition existente. Este parámetro no puede ser NULL.
[in] pDesc
Puntero a una estructura de DXGI_SWAP_CHAIN_DESC1 para la descripción de la cadena de intercambio. Este parámetro no puede ser NULL.
[in, optional] pRestrictToOutput
Puntero a la interfaz IDXGIOutput de la cadena de intercambio a la que restringir el contenido. Si la cadena de intercambio se mueve a una salida diferente, el contenido es negro. Opcionalmente, puede establecer este parámetro en un destino de salida que use DXGI_PRESENT_RESTRICT_TO_OUTPUT para restringir el contenido de esta salida. Si la cadena de intercambio se mueve a una salida diferente, el contenido es negro.
También debe pasar la marca DXGI_PRESENT_RESTRICT_TO_OUTPUT en una llamada presente para forzar que el contenido aparezca en negro en cualquier otra salida. Si desea restringir el contenido a una salida diferente, debe crear una nueva cadena de intercambio. Sin embargo, puede restringir condicionalmente el contenido en función de la marca DXGI_PRESENT_RESTRICT_TO_OUTPUT .
Establezca este parámetro en NULL si no desea restringir el contenido a un destino de salida.
[out] ppSwapChain
Puntero a una variable que recibe un puntero a la interfaz IDXGISwapChain1 de la cadena de intercambio que crea este método.
Valor devuelto
CreateSwapChainForCompositionSurfaceHandle devuelve:
- S_OK si creó correctamente una cadena de intercambio.
- E_OUTOFMEMORY si la memoria no está disponible para completar la operación.
- DXGI_ERROR_INVALID_CALL si la aplicación que realiza la llamada proporcionó datos no válidos, por ejemplo, si pDesc, pYuvDecodeBuffers o ppSwapChain es NULL.
- Posiblemente otros códigos de error que se describen en el tema DXGI_ERROR definidos por el tipo de dispositivo que se pasa a pDevice.
Requisitos
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 | dxgi1_3.h |
Library | Dxgi.lib |
Consulte también
Para obtener el mejor rendimiento, use el modelo de volteo DXGI.