Class DxgiFactory2
The IDXGIFactory2 interface includes methods to create a newer version swap chain with more features than IDXGISwapChain and to monitor stereoscopic 3D capabilities.
Implements
Inherited Members
Namespace: JeremyAnsel.DirectX.Dxgi
Assembly: JeremyAnsel.DirectX.Dxgi.dll
Syntax
[SecurityCritical]
public class DxgiFactory2 : DxgiObject, IDisposable
Constructors
| Edit this page View SourceDxgiFactory2(nint)
Initializes a new instance of the DxgiFactory2 class.
Declaration
public DxgiFactory2(nint comPtr)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | comPtr |
Fields
| Edit this page View SourceDxgiFactory2Guid
The interface GUID.
Declaration
public static readonly Guid DxgiFactory2Guid
Field Value
| Type | Description |
|---|---|
| Guid |
Properties
| Edit this page View SourceIsCurrent
Gets a value indicating whether the adapter has not changed.
Declaration
public bool IsCurrent { get; }
Property Value
| Type | Description |
|---|---|
| bool |
IsWindowedStereoEnabled
Gets a value indicating whether to use stereo mode.
Declaration
public bool IsWindowedStereoEnabled { get; }
Property Value
| Type | Description |
|---|---|
| bool |
WindowAssociation
Gets the window through which the user controls the transition to and from full screen.
Declaration
public nint WindowAssociation { get; }
Property Value
| Type | Description |
|---|---|
| nint |
Methods
| Edit this page View SourceCreate()
Creates a DXGI 1.2 factory that you can use to generate other DXGI objects.
Declaration
public static DxgiFactory2 Create()
Returns
| Type | Description |
|---|---|
| DxgiFactory2 | A DxgiFactory2 object. |
CreateSoftwareAdapter(nint)
Create an adapter interface that represents a software adapter.
Declaration
public DxgiAdapter2 CreateSoftwareAdapter(nint module)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | module | Handle to the software adapter's dll. |
Returns
| Type | Description |
|---|---|
| DxgiAdapter2 | An adapter. |
CreateSwapChainForWindowHandle(DXComObject, nint, in DxgiSwapChainDesc1)
Creates a swap chain that is associated with an HWND handle to the output window for the swap chain.
Declaration
public DxgiSwapChain2 CreateSwapChainForWindowHandle(DXComObject device, nint hwnd, in DxgiSwapChainDesc1 desc)
Parameters
| Type | Name | Description |
|---|---|---|
| DXComObject | device | The Direct3D device for the swap chain. |
| nint | hwnd | The |
| DxgiSwapChainDesc1 | desc | A |
Returns
| Type | Description |
|---|---|
| DxgiSwapChain2 | The |
CreateSwapChainForWindowHandle(DXComObject, nint, in DxgiSwapChainDesc1, in DxgiSwapChainFullscreenDesc?, DxgiOutput2?)
Creates a swap chain that is associated with an HWND handle to the output window for the swap chain.
Declaration
public DxgiSwapChain2 CreateSwapChainForWindowHandle(DXComObject device, nint hwnd, in DxgiSwapChainDesc1 desc, in DxgiSwapChainFullscreenDesc? fullscreenDesc, DxgiOutput2? restrictToOutput)
Parameters
| Type | Name | Description |
|---|---|---|
| DXComObject | device | The Direct3D device for the swap chain. |
| nint | hwnd | The |
| DxgiSwapChainDesc1 | desc | A |
| DxgiSwapChainFullscreenDesc? | fullscreenDesc | A |
| DxgiOutput2 | restrictToOutput | The |
Returns
| Type | Description |
|---|---|
| DxgiSwapChain2 | The |
CreateSwapChainForWindowHandle(nint, nint, in DxgiSwapChainDesc1)
Creates a swap chain that is associated with an HWND handle to the output window for the swap chain.
Declaration
public DxgiSwapChain2 CreateSwapChainForWindowHandle(nint device, nint hwnd, in DxgiSwapChainDesc1 desc)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | device | The Direct3D device for the swap chain. |
| nint | hwnd | The |
| DxgiSwapChainDesc1 | desc | A |
Returns
| Type | Description |
|---|---|
| DxgiSwapChain2 | The |
CreateSwapChainForWindowHandle(nint, nint, in DxgiSwapChainDesc1, in DxgiSwapChainFullscreenDesc?, DxgiOutput2?)
Creates a swap chain that is associated with an HWND handle to the output window for the swap chain.
Declaration
public DxgiSwapChain2 CreateSwapChainForWindowHandle(nint device, nint hwnd, in DxgiSwapChainDesc1 desc, in DxgiSwapChainFullscreenDesc? fullscreenDesc, DxgiOutput2? restrictToOutput)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | device | The Direct3D device for the swap chain. |
| nint | hwnd | The |
| DxgiSwapChainDesc1 | desc | A |
| DxgiSwapChainFullscreenDesc? | fullscreenDesc | A |
| DxgiOutput2 | restrictToOutput | The |
Returns
| Type | Description |
|---|---|
| DxgiSwapChain2 | The |
EnumAdapters()
Enumerates the adapters (video cards).
Declaration
public IEnumerable<DxgiAdapter2> EnumAdapters()
Returns
| Type | Description |
|---|---|
| IEnumerable<DxgiAdapter2> | An IEnumerable of DxgiAdapter2. |
EnumAdapters(uint)
Enumerates the adapters (video cards).
Declaration
public DxgiAdapter2? EnumAdapters(uint i)
Parameters
| Type | Name | Description |
|---|---|---|
| uint | i |
Returns
| Type | Description |
|---|---|
| DxgiAdapter2 | An adapter or null |
GetAdapter(uint)
Enumerates the adapters (video cards).
Declaration
public DxgiAdapter2 GetAdapter(uint i)
Parameters
| Type | Name | Description |
|---|---|---|
| uint | i |
Returns
| Type | Description |
|---|---|
| DxgiAdapter2 | An adapter. |
GetAdapterCount()
Get the adapter count (video cards).
Declaration
public int GetAdapterCount()
Returns
| Type | Description |
|---|---|
| int |
MakeWindowAssociation(nint, DxgiWindowAssociationOptions)
Allows DXGI to monitor an application's message queue for the alt-enter key sequence (which causes the application to switch from windowed to full screen or vice versa).
Declaration
public void MakeWindowAssociation(nint windowHandle, DxgiWindowAssociationOptions options)
Parameters
| Type | Name | Description |
|---|---|---|
| nint | windowHandle | The handle of the window that is to be monitored. This parameter can be |
| DxgiWindowAssociationOptions | options | One or more options. |