Compartilhar via


Método IDCompositionDevice2::CreateSurfaceFactory (dcomp.h)

Cria um objeto surface factory do Microsoft DirectComposition, que pode ser usado para criar outros objetos de superfície ou superfície virtual do DirectComposition

Sintaxe

HRESULT CreateSurfaceFactory(
  [in]  IUnknown                    *renderingDevice,
  [out] IDCompositionSurfaceFactory **surfaceFactory
);

Parâmetros

[in] renderingDevice

Um ponteiro para um dispositivo DirectX a ser usado para criar objetos de superfície DirectComposition. Deve ser um ponteiro para um objeto que implementa as interfaces IDXGIDevice ou ID2D1Device . Esse parâmetro não deve ser NULL.

[out] surfaceFactory

O objeto surface factory recém-criado. Esse parâmetro não deve ser NULL.

Retornar valor

Se a função for bem-sucedida, ela retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT. Consulte Códigos de Erro do DirectComposition para obter uma lista de códigos de erro.

Comentários

Um surface factory permite que um aplicativo use simultaneamente mais de um único dispositivo DXGI ou Direct2D com DirectComposition. Cada fábrica de superfície tem uma associação permanente com um dispositivo DXGI ou Direct2D, mas um dispositivo DirectComposition pode ter qualquer número de fábricas de superfície.

Cada surface factory gerencia recursos independentemente dos outros. Em particular, os pools do DirectComposition superfíciem alocações para atenuar os custos de alocação e desalocação da superfície. Esse pool é feito em uma base de fábrica por superfície.

Se a função DCompositionCreateDevice2 for chamada com um parâmetro renderingDevice não NULL, o objeto de dispositivo DirectComposition retornado terá uma fábrica de superfície implícita sob as capas associadas ao dispositivo de renderização fornecido. Essa fábrica de superfície implícita é usada para atender aos métodos IDCompositionDevice::CreateSurface, IDCompositionDevice::CreateVirtualSurface, IDCompositionDevice2::CreateSurface e IDCompositionDevice2::CreateVirtualSurface .

Um objeto de superfície permanece vivo enquanto qualquer uma das superfícies ou superfícies virtuais que ele criou permanecer viva, diretamente porque o aplicativo contém uma referência direta ou indiretamente porque uma ou mais dessas superfícies estão associadas a um ou mais objetos visuais.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8.1 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 R2 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho dcomp.h
Biblioteca Dcomp.lib
DLL Dcomp.dll

Confira também

IDCompositionDevice2

IDCompositionDevice2::CreateSurface

IDCompositionDevice2::CreateVirtualSurface