IDCompositionDevice

Serves as the root factory for all other DirectComposition objects and controls transactional composition.

interface IDCompositionDevice : IUnknown {}

Members

Functions

CheckDeviceState
HRESULT CheckDeviceState(BOOL* pfValid)

Returns the states of the app's DX device and DWM's dx devices

Commit
HRESULT Commit()

Commits all DirectComposition commands pending on this device.

CraeteSurface
HRESULT CraeteSurface(UINT width, UINT height, DXGI_FORMAT pixelFormat, DXGI_ALPHA_MODE alphaMode, IDCompositionSurface* surface)

Creates a DirectComposition surface object

CreateAnimation
HRESULT CreateAnimation(IDCompositionAnimation animation)

Creates an animation object

CreateEffectrGroup
HRESULT CreateEffectrGroup(IDCompositionEffectGroup* effectGroup)

Creates an effect group

CreateMatrixTransform
HRESULT CreateMatrixTransform(IDCompositionMatrixTransform* matrixTransform)

Creates a 2D 3x2 matrix transform object.

CreateMatrixTransform3D
HRESULT CreateMatrixTransform3D(IDCompositionMatrixTransform3D* matrixTransform3D)

Creates a 3D 4x4 matrix transform object.

CreateRectangleClip
HRESULT CreateRectangleClip(IDCompositionRectangleClip* clip)

Creates a clip object that can be used to clip the contents of a visual subtree.

CreateRotateTransform
HRESULT CreateRotateTransform(IDCompositionRotateTransform* rotateTransform)

Creates a 2D rotation transform object.

CreateRotateTransform3D
HRESULT CreateRotateTransform3D(IDCompositionRotateTransform3D* rotateTransform3D)

Creates a 3D rotation transform object.

CreateScaleTransform
HRESULT CreateScaleTransform(IDCompositionScaleTransform* scaleTransform)

Creates a 2D scale transform object.

CreateScaleTransform3D
HRESULT CreateScaleTransform3D(IDCompositionScaleTransform3D* scaleTransform3D)

Creates a 3D scale transform object.

CreateSkewTransform
HRESULT CreateSkewTransform(IDCompositionSkewTransform* skewTransform)

Creates a 2D skew transform object.

CreateSurfaceForHandle
HRESULT CreateSurfaceForHandle(HANDLE handle, IUnknown* surface)

Creates a surface wrapper around a pre-existing surface that can be associated with one or more visuals for composition.

CreateSurfaceForHwnd
HRESULT CreateSurfaceForHwnd(HWND hwnd, IUnknown* surface)

Creates a wrapper object that represents the rasterization of a layered window and which can be associated with a visual for composition.

CreateTargetForHwnd
HRESULT CreateTargetForHwnd(HWND hwnd, BOOL topmost, IDCompositionTarget* target)

Creates a composition target bound to a window represented by an HWND.

CreateTransform3DGroup
HRESULT CreateTransform3DGroup(IDCompositionTransform3D* transform3D, UINT elements, IDCompositionTransform3D* transform3DGroup)

Creates a 3D transform object that holds an array of 3D transform objects.

CreateTransformGroup
HRESULT CreateTransformGroup(IDCompositionTransform* transforms, UINT elements, IDCompositionTransform* transformGroup)

Creates a 2D transform object that holds an array of 2D transform objects.

CreateTranslateTransform
HRESULT CreateTranslateTransform(IDCompositionTranslateTransform* translateTransform)

Creates a 2D translation transform object.

CreateTranslateTransform3D
HRESULT CreateTranslateTransform3D(IDCompositionTranslateTransform3D* translateTransform3D)

Creates a 3D translation transform object.

CreateVirtualSurface
HRESULT CreateVirtualSurface(UINT initialWidth, UINT initialHeight, DXGI_FORMAT pixelFormat, DXGI_ALPHA_MODE alphaMode, IDCompositionVirtualSurface* virtualSurface)

Creates a DirectComposition virtual surface object

CreateVisual
HRESULT CreateVisual(IDCompositionVisual* visual)

Creates a new visual object.

GetFrameStatistics
HRESULT GetFrameStatistics(DCOMPOSITION_FRAME_STATISTICS* statistics)

Gets timing information about the composition engine.

WaitForCommitCompletion
HRESULT WaitForCommitCompletion()

Waits for the last Commit to be processed by the composition engine

Meta