//--------------------------------------------------------------------------- // Copyright (c) Microsoft Corporation. All rights reserved. //--------------------------------------------------------------------------- #if defined(_MSC_VER) && (_MSC_VER >= 1020) #pragma once #endif #ifndef __WINDOWS_GRAPHICS_EFFECTS_INTEROP_H #define __WINDOWS_GRAPHICS_EFFECTS_INTEROP_H #include #include #ifndef BUILD_WINDOWS namespace ABI { #endif namespace Windows { namespace Graphics { namespace Effects { typedef interface IGraphicsEffectSource IGraphicsEffectSource; typedef interface IGraphicsEffectD2D1Interop IGraphicsEffectD2D1Interop; typedef enum GRAPHICS_EFFECT_PROPERTY_MAPPING { GRAPHICS_EFFECT_PROPERTY_MAPPING_UNKNOWN, GRAPHICS_EFFECT_PROPERTY_MAPPING_DIRECT, GRAPHICS_EFFECT_PROPERTY_MAPPING_VECTORX, GRAPHICS_EFFECT_PROPERTY_MAPPING_VECTORY, GRAPHICS_EFFECT_PROPERTY_MAPPING_VECTORZ, GRAPHICS_EFFECT_PROPERTY_MAPPING_VECTORW, GRAPHICS_EFFECT_PROPERTY_MAPPING_RECT_TO_VECTOR4, GRAPHICS_EFFECT_PROPERTY_MAPPING_RADIANS_TO_DEGREES, GRAPHICS_EFFECT_PROPERTY_MAPPING_COLORMATRIX_ALPHA_MODE, GRAPHICS_EFFECT_PROPERTY_MAPPING_COLOR_TO_VECTOR3, GRAPHICS_EFFECT_PROPERTY_MAPPING_COLOR_TO_VECTOR4 } GRAPHICS_EFFECT_PROPERTY_MAPPING; //+----------------------------------------------------------------------------- // // Interface: // IGraphicsEffectD2D1Interop // // Synopsis: // An interface providing a Interop counterpart to IGraphicsEffect // and allowing for metadata queries. // //------------------------------------------------------------------------------ #undef INTERFACE #define INTERFACE IGraphicsEffectD2D1Interop DECLARE_INTERFACE_IID_(IGraphicsEffectD2D1Interop, IUnknown, "2FC57384-A068-44D7-A331-30982FCF7177") { STDMETHOD(GetEffectId)( _Out_ GUID * id ) PURE; STDMETHOD(GetNamedPropertyMapping)( LPCWSTR name, _Out_ UINT * index, _Out_ GRAPHICS_EFFECT_PROPERTY_MAPPING * mapping ) PURE; STDMETHOD(GetPropertyCount)( _Out_ UINT * count ) PURE; STDMETHOD(GetProperty)( UINT index, _Outptr_ Windows::Foundation::IPropertyValue ** value ) PURE; STDMETHOD(GetSource)( UINT index, _Outptr_ IGraphicsEffectSource ** source ) PURE; STDMETHOD(GetSourceCount)( _Out_ UINT * count ) PURE; }; } // namespace Effects } // namespace Graphics } // namespace Windows #ifndef BUILD_WINDOWS } // namespace ABI #endif #endif // __WINDOWS_GRAPHICS_EFFECTS_INTEROP_H