| dcomp.h (6.3.9600.17415-Windows 8.1) | | dcomp.h (10.0.10586.494-Windows 10 1511 10586.494) |
| | |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| // Copyright (c) Microsoft Corporation. All rights reserved. | | // Copyright (c) Microsoft Corporation. All rights reserved. |
| //--------------------------------------------------------------------------- | | //--------------------------------------------------------------------------- |
| #pragma once | | #pragma once |
| | |
|
| #include <dcomptypes.h> // for CompositionSurfaceType | | |
| #include <d2dbasetypes.h> // for D2D_MATRIX_3X2_F | | #include <d2dbasetypes.h> // for D2D_MATRIX_3X2_F |
| #ifndef D3DMATRIX_DEFINED | | #ifndef D3DMATRIX_DEFINED |
| #include <d3d9types.h> // for D3DMATRIX | | #include <d3d9types.h> // for D3DMATRIX |
| #endif | | #endif |
|
| #include <dcompanimation.h> // for IDirectCompositionAnimation interface | | |
| #include <d2d1_1.h> // for D2D1_COMPOSITE_MODE | | #include <d2d1_1.h> // for D2D1_COMPOSITE_MODE |
| #include <winapifamily.h> | | #include <winapifamily.h> |
| | |
|
| | #include <dcomptypes.h> // for CompositionSurfaceType |
| | #include <dcompanimation.h> // for IDirectCompositionAnimation interface |
| | |
| #pragma region Desktop Family | | #pragma region Desktop Family |
| #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) | | #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) |
| | |
| #if (NTDDI_VERSION >= NTDDI_WIN8) | | #if (NTDDI_VERSION >= NTDDI_WIN8) |
| | |
|
| typedef interface IDCompositionDevice IDCompositionDevice; | | typedef interface IDCompositionDevice IDCompositionDevice; |
| typedef interface IDCompositionTarget IDCompositionTarget; | | typedef interface IDCompositionTarget IDCompositionTarget; |
| typedef interface IDCompositionVisual IDCompositionVisual; | | typedef interface IDCompositionVisual IDCompositionVisual; |
| typedef interface IDCompositionTransform IDCompositionTransform; | | typedef interface IDCompositionTransform IDCompositionTransform; |
| typedef interface IDCompositionTransform3D IDCompositionTransform3D; | | typedef interface IDCompositionTransform3D IDCompositionTransform3 |
| typedef interface IDCompositionTranslateTransform IDCompositionTranslateTransf | | D; |
| orm; | | typedef interface IDCompositionTranslateTransform IDCompositionTranslateT |
| typedef interface IDCompositionTranslateTransform3D IDCompositionTranslateTransf | | ransform; |
| orm3D; | | typedef interface IDCompositionTranslateTransform3D IDCompositionTranslateT |
| typedef interface IDCompositionScaleTransform IDCompositionScaleTransform; | | ransform3D; |
| typedef interface IDCompositionScaleTransform3D IDCompositionScaleTransform3 | | typedef interface IDCompositionScaleTransform IDCompositionScaleTrans |
| D; | | form; |
| typedef interface IDCompositionRotateTransform IDCompositionRotateTransform | | typedef interface IDCompositionScaleTransform3D IDCompositionScaleTrans |
| ; | | form3D; |
| typedef interface IDCompositionRotateTransform3D IDCompositionRotateTransform | | typedef interface IDCompositionRotateTransform IDCompositionRotateTran |
| 3D; | | sform; |
| typedef interface IDCompositionSkewTransform IDCompositionSkewTransform; | | typedef interface IDCompositionRotateTransform3D IDCompositionRotateTran |
| typedef interface IDCompositionMatrixTransform IDCompositionMatrixTransform | | sform3D; |
| ; | | typedef interface IDCompositionSkewTransform IDCompositionSkewTransf |
| typedef interface IDCompositionMatrixTransform3D IDCompositionMatrixTransform | | orm; |
| 3D; | | typedef interface IDCompositionMatrixTransform IDCompositionMatrixTran |
| typedef interface IDCompositionEffect IDCompositionEffect; | | sform; |
| typedef interface IDCompositionEffectGroup IDCompositionEffectGroup; | | typedef interface IDCompositionMatrixTransform3D IDCompositionMatrixTran |
| typedef interface IDCompositionClip IDCompositionClip; | | sform3D; |
| typedef interface IDCompositionRectangleClip IDCompositionRectangleClip; | | typedef interface IDCompositionEffect IDCompositionEffect; |
| typedef interface IDCompositionAnimation IDCompositionAnimation; | | typedef interface IDCompositionEffectGroup IDCompositionEffectGrou |
| typedef interface IDCompositionSurface IDCompositionSurface; | | p; |
| typedef interface IDCompositionVirtualSurface IDCompositionVirtualSurface; | | typedef interface IDCompositionClip IDCompositionClip; |
| | typedef interface IDCompositionRectangleClip IDCompositionRectangleC |
| | lip; |
| | typedef interface IDCompositionAnimation IDCompositionAnimation; |
| | typedef interface IDCompositionSurface IDCompositionSurface; |
| | typedef interface IDCompositionVirtualSurface IDCompositionVirtualSur |
| | face; |
| | typedef interface IDCompositionFilterEffect IDCompositionFilterEffe |
| | ct; |
| | typedef interface IDCompositionGaussianBlurEffect IDCompositionGaussianBl |
| | urEffect; |
| | typedef interface IDCompositionBrightnessEffect IDCompositionBrightness |
| | Effect; |
| | typedef interface IDCompositionColorMatrixEffect IDCompositionColorMatri |
| | xEffect; |
| | typedef interface IDCompositionShadowEffect IDCompositionShadowEffe |
| | ct; |
| | typedef interface IDCompositionHueRotationEffect IDCompositionHueRotatio |
| | nEffect; |
| | typedef interface IDCompositionSaturationEffect IDCompositionSaturation |
| | Effect; |
| | typedef interface IDCompositionTurbulenceEffect IDCompositionTurbulence |
| | Effect; |
| | typedef interface IDCompositionLinearTransferEffect IDCompositionLinearTran |
| | sferEffect; |
| | typedef interface IDCompositionTableTransferEffect IDCompositionTableTrans |
| | ferEffect; |
| | typedef interface IDCompositionCompositeEffect IDCompositionCompositeEf |
| | fect; |
| | typedef interface IDCompositionBlendEffect IDCompositionBlendEffec |
| | t; |
| | typedef interface IDCompositionArithmeticCompositeEffect IDCompositionArithmetic |
| | CompositeEffect; |
| | typedef interface IDCompositionAffineTransform2DEffect IDCompositionAffineTran |
| | sform2DEffect; |
| | |
| //+----------------------------------------------------------------------------- | | //+----------------------------------------------------------------------------- |
| // | | // |
| // Function: | | // Function: |
| // DCompositionCreateDevice | | // DCompositionCreateDevice |
| // | | // |
| // Synopsis: | | // Synopsis: |
| // Creates a new DirectComposition device object, which can be used to crea
te | | // Creates a new DirectComposition device object, which can be used to crea
te |
| // other DirectComposition objects. | | // other DirectComposition objects. |
| // | | // |
| | |
| skipping to change at line 77 | | skipping to change at line 92 |
| // other DirectComposition objects. | | // other DirectComposition objects. |
| // | | // |
| //------------------------------------------------------------------------------ | | //------------------------------------------------------------------------------ |
| STDAPI DCompositionCreateDevice2( | | STDAPI DCompositionCreateDevice2( |
| _In_opt_ IUnknown *renderingDevice, | | _In_opt_ IUnknown *renderingDevice, |
| _In_ REFIID iid, | | _In_ REFIID iid, |
| _Outptr_ void **dcompositionDevice | | _Outptr_ void **dcompositionDevice |
| ); | | ); |
| #endif // (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE) | | #endif // (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE) |
| | |
|
| | #if (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD) |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Function: |
| | // DCompositionCreateDevice3 |
| | // |
| | // Synopsis: |
| | // Creates a new DirectComposition device object, which can be used to crea |
| | te |
| | // other DirectComposition objects. |
| | // |
| | //------------------------------------------------------------------------------ |
| | STDAPI DCompositionCreateDevice3( |
| | _In_opt_ IUnknown *renderingDevice, |
| | _In_ REFIID iid, |
| | _Outptr_ void **dcompositionDevice |
| | ); |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Function: |
| | // DCompositionGetFrameStatistics |
| | // |
| | // Synopsis: |
| | // Returns composition statistics information. |
| | // |
| | //------------------------------------------------------------------------------ |
| | STDAPI DCompositionGetFrameStatistics( |
| | _Out_ DCOMPOSITION_FRAME_STATISTICS *statistics, |
| | _Out_opt_ D3D_FEATURE_LEVEL *minSafeFeaturelLevel, |
| | _Out_opt_ D3D_FEATURE_LEVEL *maxHardwareFeaturelLevel); |
| | |
| | #endif // (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD) |
| | |
| //+----------------------------------------------------------------------------- | | //+----------------------------------------------------------------------------- |
| // | | // |
| // Function: | | // Function: |
| // DCompositionCreateSurfaceHandle | | // DCompositionCreateSurfaceHandle |
| // | | // |
| // Synopsis: | | // Synopsis: |
| // Creates a new composition surface object, which can be bound to a | | // Creates a new composition surface object, which can be bound to a |
| // DirectX swap chain or swap buffer or to a GDI bitmap and associated | | // DirectX swap chain or swap buffer or to a GDI bitmap and associated |
| // with a visual. | | // with a visual. |
| // | | // |
| //------------------------------------------------------------------------------ | | //------------------------------------------------------------------------------ |
| STDAPI DCompositionCreateSurfaceHandle( | | STDAPI DCompositionCreateSurfaceHandle( |
| _In_ DWORD desiredAccess, | | _In_ DWORD desiredAccess, |
| _In_opt_ SECURITY_ATTRIBUTES *securityAttributes, | | _In_opt_ SECURITY_ATTRIBUTES *securityAttributes, |
| _Out_ HANDLE *surfaceHandle | | _Out_ HANDLE *surfaceHandle |
| ); | | ); |
| | |
| //+----------------------------------------------------------------------------- | | //+----------------------------------------------------------------------------- |
| // | | // |
|
| | // Function: |
| | // DCompositionAttachMouseWheelToHwnd |
| | // |
| | // Synopsis: |
| | // Creates an Interaction/InputSink to route mouse wheel messages to the |
| | // given HWND. This will fail if there is already an Interaction attached |
| | // to this visual. After calling this API, the device owning visual must |
| | // be Committed. |
| | // |
| | //------------------------------------------------------------------------------ |
| | STDAPI DCompositionAttachMouseWheelToHwnd( |
| | _In_ IDCompositionVisual* visual, |
| | _In_ HWND hwnd, |
| | _In_ BOOL enable |
| | ); |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| // Interface: | | // Interface: |
| // IDCompositionDevice | | // IDCompositionDevice |
| // | | // |
| // Synopsis: | | // Synopsis: |
| // Serves as the root factory for all other DirectComposition objects and | | // Serves as the root factory for all other DirectComposition objects and |
| // controls transactional composition. | | // controls transactional composition. |
| // | | // |
| //------------------------------------------------------------------------------ | | //------------------------------------------------------------------------------ |
| #undef INTERFACE | | #undef INTERFACE |
| #define INTERFACE IDCompositionDevice | | #define INTERFACE IDCompositionDevice |
| | |
| skipping to change at line 1430 | | skipping to change at line 1496 |
| // Enable redraw regions | | // Enable redraw regions |
| STDMETHOD(EnableRedrawRegions)(THIS_ | | STDMETHOD(EnableRedrawRegions)(THIS_ |
| ) PURE; | | ) PURE; |
| | |
| // Disable redraw regions | | // Disable redraw regions |
| STDMETHOD(DisableRedrawRegions)(THIS_ | | STDMETHOD(DisableRedrawRegions)(THIS_ |
| ) PURE; | | ) PURE; |
| }; | | }; |
| #endif // (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE) | | #endif // (_WIN32_WINNT >= _WIN32_WINNT_WINBLUE) |
| | |
|
| | #if (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD) |
| | typedef interface IDCompositionDevice3 IDCompositionDevice3 |
| | ; |
| | typedef interface IDCompositionVisual3 IDCompositionVisual3 |
| | ; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionVisual3 |
| | // |
| | // Synopsis: |
| | // An IDCompositionVisual3 interface represents a visual that participates |
| | in |
| | // a visual tree. |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionVisual3 |
| | DECLARE_INTERFACE_IID_(IDCompositionVisual3, IDCompositionVisualDebug, "2775F462 |
| | -B6C1-4015-B0BE-B3E7D6A4976D") |
| | { |
| | // Sets depth mode property associated with this visual |
| | STDMETHOD(SetDepthMode)(THIS_ |
| | _In_ DCOMPOSITION_DEPTH_MODE mode |
| | ) PURE; |
| | |
| | // Changes the value of OffsetZ property. |
| | STDMETHOD(SetOffsetZ)(THIS_ |
| | float offsetZ |
| | ) PURE; |
| | |
| | // Animates the value of the OffsetZ property. |
| | STDMETHOD(SetOffsetZ)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Changes the value of the Opacity property. |
| | STDMETHOD(SetOpacity)(THIS_ |
| | float opacity |
| | ) PURE; |
| | |
| | // Animates the value of the Opacity property. |
| | STDMETHOD(SetOpacity)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Sets the matrix that modifies the coordinate system of this visual. |
| | STDMETHOD(SetTransform)(THIS_ |
| | const D2D_MATRIX_4X4_F& matrix |
| | ) PURE; |
| | |
| | // Sets the transformation object that modifies the coordinate system of thi |
| | s visual. |
| | STDMETHOD(SetTransform)(THIS_ |
| | _In_opt_ IDCompositionTransform3D* transform |
| | ) PURE; |
| | |
| | // Changes the value of the Visible property |
| | STDMETHOD(SetVisible)(THIS_ |
| | BOOL visible |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionDevice3 |
| | // |
| | // Synopsis: |
| | // Serves as the root factory for all other DirectComposition3 objects and |
| | // controls transactional composition. |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionDevice3 |
| | DECLARE_INTERFACE_IID_(IDCompositionDevice3, IDCompositionDevice2, "0987CB06-F91 |
| | 6-48BF-8D35-CE7641781BD9") |
| | { |
| | // Effect creation calls, each creates an interface around a D2D1Effect |
| | STDMETHOD(CreateGaussianBlurEffect)(THIS_ |
| | _Outptr_ IDCompositionGaussianBlurEffect **gaussianBlurEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateBrightnessEffect)(THIS_ |
| | _Outptr_ IDCompositionBrightnessEffect **brightnessEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateColorMatrixEffect)(THIS_ |
| | _Outptr_ IDCompositionColorMatrixEffect **colorMatrixEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateShadowEffect)(THIS_ |
| | _Outptr_ IDCompositionShadowEffect **shadowEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateHueRotationEffect)(THIS_ |
| | _Outptr_ IDCompositionHueRotationEffect **hueRotationEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateSaturationEffect)(THIS_ |
| | _Outptr_ IDCompositionSaturationEffect **saturationEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateTurbulenceEffect)(THIS_ |
| | _Outptr_ IDCompositionTurbulenceEffect **turbulenceEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateLinearTransferEffect)(THIS_ |
| | _Outptr_ IDCompositionLinearTransferEffect **linearTransferEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateTableTransferEffect)(THIS_ |
| | _Outptr_ IDCompositionTableTransferEffect **tableTransferEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateCompositeEffect)(THIS_ |
| | _Outptr_ IDCompositionCompositeEffect **compositeEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateBlendEffect)(THIS_ |
| | _Outptr_ IDCompositionBlendEffect **blendEffect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateArithmeticCompositeEffect)(THIS_ |
| | _Outptr_ IDCompositionArithmeticCompositeEffect **arithmeticCompositeEff |
| | ect |
| | ) PURE; |
| | |
| | STDMETHOD(CreateAffineTransform2DEffect)(THIS_ |
| | _Outptr_ IDCompositionAffineTransform2DEffect **affineTransform2dEffect |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionFilterEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionFilterEffect interface represents a filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionFilterEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionFilterEffect, IDCompositionEffect, "30C421D5 |
| | -8CB2-4E9F-B133-37BE270D4AC2") |
| | { |
| | // Sets the input at the given index to the filterEffect (NULL will use sour |
| | ce visual, unless flagged otherwise) |
| | STDMETHOD(SetInput)(THIS_ |
| | _In_ UINT index, |
| | _In_opt_ IUnknown *input, |
| | _In_ UINT flags |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionGaussianBlurEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionGaussianBlurEffect interface represents a gaussian blur |
| | filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionGaussianBlurEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionGaussianBlurEffect, IDCompositionFilterEffec |
| | t, "45D4D0B7-1BD4-454E-8894-2BFA68443033") |
| | { |
| | // Changes the amount of blur to be applied. |
| | STDMETHOD(SetStandardDeviation)(THIS_ |
| | _In_ float amount |
| | ) PURE; |
| | |
| | STDMETHOD(SetStandardDeviation)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Changes border mode (see D2D1_GAUSSIANBLUR) |
| | STDMETHOD(SetBorderMode)(THIS_ |
| | _In_ D2D1_BORDER_MODE mode |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionBrightnessEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionBrightnessEffect interface represents a brightness filte |
| | r effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionBrightnessEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionBrightnessEffect, IDCompositionFilterEffect, |
| | "6027496E-CB3A-49AB-934F-D798DA4F7DA6") |
| | { |
| | // Changes the value of white point property. |
| | STDMETHOD(SetWhitePoint)(THIS_ |
| | _In_ const D2D1_VECTOR_2F& whitePoint |
| | ) PURE; |
| | |
| | // Changes the value of black point property |
| | STDMETHOD(SetBlackPoint)(THIS_ |
| | _In_ const D2D1_VECTOR_2F& blackPoint |
| | ) PURE; |
| | |
| | // Changes the X value of the white point property. |
| | STDMETHOD(SetWhitePointX)(THIS_ |
| | _In_ float whitePointX |
| | ) PURE; |
| | |
| | STDMETHOD(SetWhitePointX)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Changes the Y value of the white point property. |
| | STDMETHOD(SetWhitePointY)(THIS_ |
| | _In_ float whitePointY |
| | ) PURE; |
| | |
| | STDMETHOD(SetWhitePointY)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Changes the X value of the black point property. |
| | STDMETHOD(SetBlackPointX)(THIS_ |
| | _In_ float blackPointX |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlackPointX)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Changes the Y value of the black point property. |
| | STDMETHOD(SetBlackPointY)(THIS_ |
| | _In_ float blackPointY |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlackPointY)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionColorMatrixEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionColorMatrixEffect interface represents a color matrix fi |
| | lter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionColorMatrixEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionColorMatrixEffect, IDCompositionFilterEffect |
| | , "C1170A22-3CE2-4966-90D4-55408BFC84C4") |
| | { |
| | // Changes all values of the matrix for a color transform |
| | STDMETHOD(SetMatrix)(THIS_ |
| | _In_ const D2D1_MATRIX_5X4_F& matrix |
| | ) PURE; |
| | |
| | // Changes a single element of the matrix of this color transform. |
| | STDMETHOD(SetMatrixElement)(THIS_ |
| | _In_ int row, |
| | _In_ int column, |
| | _In_ float value |
| | ) PURE; |
| | |
| | // Animates a single element of the matrix of this color transform. |
| | STDMETHOD(SetMatrixElement)(THIS_ |
| | _In_ int row, |
| | _In_ int column, |
| | _In_ IDCompositionAnimation *animation |
| | ) PURE; |
| | |
| | // Changes the alpha mode |
| | STDMETHOD(SetAlphaMode)(THIS_ |
| | _In_ D2D1_COLORMATRIX_ALPHA_MODE mode |
| | ) PURE; |
| | |
| | // Sets the clamp output property |
| | STDMETHOD(SetClampOutput)(THIS_ |
| | _In_ BOOL clamp |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionShadowEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionShadowEffect interface represents a shadow filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionShadowEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionShadowEffect, IDCompositionFilterEffect, "4A |
| | D18AC0-CFD2-4C2F-BB62-96E54FDB6879") |
| | { |
| | // Changes the amount of blur to be applied. |
| | STDMETHOD(SetStandardDeviation)(THIS_ |
| | _In_ float amount |
| | ) PURE; |
| | |
| | STDMETHOD(SetStandardDeviation)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | // Changes shadow color |
| | STDMETHOD(SetColor)(THIS_ |
| | _In_ const D2D1_VECTOR_4F &color |
| | ) PURE; |
| | |
| | STDMETHOD(SetRed)(THIS_ |
| | _In_ float amount |
| | ) PURE; |
| | |
| | STDMETHOD(SetRed)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreen)(THIS_ |
| | _In_ float amount |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreen)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlue)(THIS_ |
| | _In_ float amount |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlue)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlpha)(THIS_ |
| | _In_ float amount |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlpha)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionHueRotationEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionHueRotationEffect interface represents a hue rotation fi |
| | lter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionHueRotationEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionHueRotationEffect, IDCompositionFilterEffect |
| | , "6DB9F920-0770-4781-B0C6-381912F9D167") |
| | { |
| | // Changes the angle of rotation |
| | STDMETHOD(SetAngle)(THIS_ |
| | _In_ float amountDegrees |
| | ) PURE; |
| | |
| | STDMETHOD(SetAngle)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionSaturationEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionSaturationEffect interface represents a saturation filte |
| | r effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionSaturationEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionSaturationEffect, IDCompositionFilterEffect, |
| | "A08DEBDA-3258-4FA4-9F16-9174D3FE93B1") |
| | { |
| | // Changes the amount of saturation to be applied. |
| | STDMETHOD(SetSaturation)(THIS_ |
| | _In_ float ratio |
| | ) PURE; |
| | |
| | STDMETHOD(SetSaturation)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionTurbulenceEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionTurbulenceEffect interface represents a turbulence filte |
| | r effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionTurbulenceEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionTurbulenceEffect, IDCompositionFilterEffect, |
| | "A6A55BDA-C09C-49F3-9193-A41922C89715") |
| | { |
| | // Changes the starting offset of the turbulence |
| | STDMETHOD(SetOffset)(THIS_ |
| | _In_ const D2D1_VECTOR_2F& offset |
| | ) PURE; |
| | |
| | // Changes the base frequency of the turbulence |
| | STDMETHOD(SetBaseFrequency)(THIS_ |
| | _In_ const D2D1_VECTOR_2F& frequency |
| | ) PURE; |
| | |
| | // Changes the output size of the turbulence |
| | STDMETHOD(SetSize)(THIS_ |
| | _In_ const D2D1_VECTOR_2F& size |
| | ) PURE; |
| | |
| | // Sets the number of octaves |
| | STDMETHOD(SetNumOctaves)(THIS_ |
| | _In_ UINT numOctaves |
| | ) PURE; |
| | |
| | // Set the random number seed |
| | STDMETHOD(SetSeed)(THIS_ |
| | _In_ UINT seed |
| | ) PURE; |
| | |
| | // Set the noise mode |
| | STDMETHOD(SetNoise)(THIS_ |
| | _In_ D2D1_TURBULENCE_NOISE noise |
| | ) PURE; |
| | |
| | // Set stitchable |
| | STDMETHOD(SetStitchable)(THIS_ |
| | _In_ BOOL stitchable |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionLinearTransferEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionLinearTransferEffect interface represents a linear trans |
| | fer filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionLinearTransferEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionLinearTransferEffect, IDCompositionFilterEff |
| | ect, "4305EE5B-C4A0-4C88-9385-67124E017683") |
| | { |
| | |
| | STDMETHOD(SetRedYIntercept)(THIS_ |
| | _In_ float redYIntercept |
| | ) PURE; |
| | |
| | STDMETHOD(SetRedYIntercept)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetRedSlope)(THIS_ |
| | _In_ float redSlope |
| | ) PURE; |
| | |
| | STDMETHOD(SetRedSlope)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetRedDisable)(THIS_ |
| | _In_ BOOL redDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenYIntercept)(THIS_ |
| | _In_ float greenYIntercept |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenYIntercept)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenSlope)(THIS_ |
| | _In_ float greenSlope |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenSlope)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenDisable)(THIS_ |
| | _In_ BOOL greenDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueYIntercept)(THIS_ |
| | _In_ float blueYIntercept |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueYIntercept)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueSlope)(THIS_ |
| | _In_ float blueSlope |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueSlope)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueDisable)(THIS_ |
| | _In_ BOOL blueDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaYIntercept)(THIS_ |
| | _In_ float alphaYIntercept |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaYIntercept)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaSlope)(THIS_ |
| | _In_ float alphaSlope |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaSlope)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaDisable)(THIS_ |
| | _In_ BOOL alphaDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetClampOutput)(THIS_ |
| | _In_ BOOL clampOutput |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionTableTransferEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionTableTransferEffect interface represents a Table transfe |
| | r filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionTableTransferEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionTableTransferEffect, IDCompositionFilterEffe |
| | ct, "9B7E82E2-69C5-4EB4-A5F5-A7033F5132CD") |
| | { |
| | STDMETHOD(SetRedTable)(THIS_ |
| | _In_count_(count) const float *tableValues, |
| | _In_ UINT count |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenTable)(THIS_ |
| | _In_count_(count) const float *tableValues, |
| | _In_ UINT count |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueTable)(THIS_ |
| | _In_count_(count) const float *tableValues, |
| | _In_ UINT count |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaTable)(THIS_ |
| | _In_count_(count) const float *tableValues, |
| | _In_ UINT count |
| | ) PURE; |
| | |
| | STDMETHOD(SetRedDisable)(THIS_ |
| | _In_ BOOL redDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenDisable)(THIS_ |
| | _In_ BOOL greenDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueDisable)(THIS_ |
| | _In_ BOOL blueDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaDisable)(THIS_ |
| | _In_ BOOL alphaDisable |
| | ) PURE; |
| | |
| | STDMETHOD(SetClampOutput)(THIS_ |
| | _In_ BOOL clampOutput |
| | ) PURE; |
| | |
| | // Note: To set individual values, the table must have already been initial |
| | ized |
| | // with a buffer of values of the appropriate size, or these calls wi |
| | ll fail |
| | STDMETHOD(SetRedTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ float value |
| | ) PURE; |
| | |
| | STDMETHOD(SetRedTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ float value |
| | ) PURE; |
| | |
| | STDMETHOD(SetGreenTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ float value |
| | ) PURE; |
| | |
| | STDMETHOD(SetBlueTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ float value |
| | ) PURE; |
| | |
| | STDMETHOD(SetAlphaTableValue)(THIS_ |
| | _In_ UINT index, |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionCompositeEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionCompositeEffect interface represents a composite filter |
| | effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionCompositeEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionCompositeEffect, IDCompositionFilterEffect, |
| | "576616C0-A231-494D-A38D-00FD5EC4DB46") |
| | { |
| | // Changes the composite mode. |
| | STDMETHOD(SetMode)(THIS_ |
| | _In_ D2D1_COMPOSITE_MODE mode |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionBlendEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionBlendEffect interface represents a blend filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionBlendEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionBlendEffect, IDCompositionFilterEffect, "33E |
| | CDC0A-578A-4A11-9C14-0CB90517F9C5") |
| | { |
| | STDMETHOD(SetMode)(THIS_ |
| | _In_ D2D1_BLEND_MODE mode |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionArithmeticCompositeEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionArithmeticCompositeEffect interface represents an arithm |
| | etic composite filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionArithmeticCompositeEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionArithmeticCompositeEffect, IDCompositionFilt |
| | erEffect, "3B67DFA8-E3DD-4E61-B640-46C2F3D739DC") |
| | { |
| | STDMETHOD(SetCoefficients)(THIS_ |
| | _In_ const D2D1_VECTOR_4F &coefficients |
| | ) PURE; |
| | |
| | STDMETHOD(SetClampOutput)(THIS_ |
| | _In_ BOOL clampoutput |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient1)(THIS_ |
| | _In_ float Coeffcient1 |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient1)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient2)(THIS_ |
| | _In_ float Coefficient2 |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient2)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient3)(THIS_ |
| | _In_ float Coefficient3 |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient3)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient4)(THIS_ |
| | _In_ float Coefficient4 |
| | ) PURE; |
| | |
| | STDMETHOD(SetCoefficient4)(THIS_ |
| | _In_ IDCompositionAnimation* animation |
| | ) PURE; |
| | }; |
| | |
| | //+----------------------------------------------------------------------------- |
| | // |
| | // Interface: |
| | // IDCompositionAffineTransform2DEffect |
| | // |
| | // Synopsis: |
| | // An IDCompositionAffineTransform2DEffect interface represents a affine tr |
| | ansform 2D filter effect |
| | // |
| | //------------------------------------------------------------------------------ |
| | #undef INTERFACE |
| | #define INTERFACE IDCompositionAffineTransform2DEffect |
| | DECLARE_INTERFACE_IID_(IDCompositionAffineTransform2DEffect, IDCompositionFilter |
| | Effect, "0B74B9E8-CDD6-492F-BBBC-5ED32157026D") |
| | { |
| | STDMETHOD(SetInterpolationMode)(THIS_ |
| | _In_ D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE interpolationMode |
| | ) PURE; |
| | |
| | STDMETHOD(SetBorderMode)(THIS_ |
| | _In_ D2D1_BORDER_MODE borderMode |
| | ) PURE; |
| | |
| | STDMETHOD(SetTransformMatrix)(THIS_ |
| | _In_ const D2D1_MATRIX_3X2_F &transformMatrix |
| | ) PURE; |
| | |
| | STDMETHOD(SetTransformMatrixElement)(THIS_ |
| | _In_ int row, |
| | _In_ int column, |
| | _In_ float value |
| | ) PURE; |
| | |
| | STDMETHOD(SetTransformMatrixElement)(THIS_ |
| | _In_ int row, |
| | _In_ int column, |
| | _In_ IDCompositionAnimation *animation |
| | ) PURE; |
| | |
| | STDMETHOD(SetSharpness)(THIS_ |
| | _In_ float sharpness |
| | ) PURE; |
| | |
| | STDMETHOD(SetSharpness)(THIS_ |
| | _In_ IDCompositionAnimation *animation |
| | ) PURE; |
| | }; |
| | |
| | #endif // (_WIN32_WINNT >= _WIN32_WINNT_WINTHRESHOLD) |
| | |
| #undef INTERFACE | | #undef INTERFACE |
| #endif // NTDDI_WIN8 | | #endif // NTDDI_WIN8 |
| | |
| #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ | | #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ |
| #pragma endregion | | #pragma endregion |
| | |
| End of changes. 7 change blocks. |
| 30 lines changed or deleted | | 920 lines changed or added |
|