diff --git a/mingw-w64-headers/include/d2d1.h b/mingw-w64-headers/include/d2d1.h index 964eb0484..66f3ee4dc 100644 --- a/mingw-w64-headers/include/d2d1.h +++ b/mingw-w64-headers/include/d2d1.h @@ -1,361 +1,346 @@ -/*** Autogenerated by WIDL 8.12 from include/d2d1.idl - Do not edit ***/ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the mingw-w64 runtime package. + * No warranty is given; refer to the file DISCLAIMER.PD within this package. -#ifdef _WIN32 -#ifndef __REQUIRED_RPCNDR_H_VERSION__ -#define __REQUIRED_RPCNDR_H_VERSION__ 475 -#endif -#include -#include -#endif + * d2d1.h - Header file for the Direct2D API + * No original Microsoft headers were used in the creation of this + * file. + *API docs available at: http://msdn.microsoft.com/en-us/library/dd372349%28v=VS.85%29.aspx + */ -#ifndef COM_NO_WINDOWS_H -#include -#include -#endif - -#ifndef __d2d1_h__ -#define __d2d1_h__ - -#ifndef __WIDL_INLINE -#if defined(__cplusplus) || defined(_MSC_VER) -#define __WIDL_INLINE inline -#elif defined(__GNUC__) -#define __WIDL_INLINE __inline__ -#endif -#endif - -/* Forward declarations */ - -#ifndef __ID2D1Resource_FWD_DEFINED__ -#define __ID2D1Resource_FWD_DEFINED__ -typedef interface ID2D1Resource ID2D1Resource; -#ifdef __cplusplus -interface ID2D1Resource; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1StrokeStyle_FWD_DEFINED__ -#define __ID2D1StrokeStyle_FWD_DEFINED__ -typedef interface ID2D1StrokeStyle ID2D1StrokeStyle; -#ifdef __cplusplus -interface ID2D1StrokeStyle; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1SimplifiedGeometrySink_FWD_DEFINED__ -#define __ID2D1SimplifiedGeometrySink_FWD_DEFINED__ -typedef interface ID2D1SimplifiedGeometrySink ID2D1SimplifiedGeometrySink; -#ifdef __cplusplus -interface ID2D1SimplifiedGeometrySink; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1TessellationSink_FWD_DEFINED__ -#define __ID2D1TessellationSink_FWD_DEFINED__ -typedef interface ID2D1TessellationSink ID2D1TessellationSink; -#ifdef __cplusplus -interface ID2D1TessellationSink; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Geometry_FWD_DEFINED__ -#define __ID2D1Geometry_FWD_DEFINED__ -typedef interface ID2D1Geometry ID2D1Geometry; -#ifdef __cplusplus -interface ID2D1Geometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1RectangleGeometry_FWD_DEFINED__ -#define __ID2D1RectangleGeometry_FWD_DEFINED__ -typedef interface ID2D1RectangleGeometry ID2D1RectangleGeometry; -#ifdef __cplusplus -interface ID2D1RectangleGeometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1RoundedRectangleGeometry_FWD_DEFINED__ -#define __ID2D1RoundedRectangleGeometry_FWD_DEFINED__ -typedef interface ID2D1RoundedRectangleGeometry ID2D1RoundedRectangleGeometry; -#ifdef __cplusplus -interface ID2D1RoundedRectangleGeometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1EllipseGeometry_FWD_DEFINED__ -#define __ID2D1EllipseGeometry_FWD_DEFINED__ -typedef interface ID2D1EllipseGeometry ID2D1EllipseGeometry; -#ifdef __cplusplus -interface ID2D1EllipseGeometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1GeometryGroup_FWD_DEFINED__ -#define __ID2D1GeometryGroup_FWD_DEFINED__ -typedef interface ID2D1GeometryGroup ID2D1GeometryGroup; -#ifdef __cplusplus -interface ID2D1GeometryGroup; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1TransformedGeometry_FWD_DEFINED__ -#define __ID2D1TransformedGeometry_FWD_DEFINED__ -typedef interface ID2D1TransformedGeometry ID2D1TransformedGeometry; -#ifdef __cplusplus -interface ID2D1TransformedGeometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1GeometrySink_FWD_DEFINED__ -#define __ID2D1GeometrySink_FWD_DEFINED__ -typedef interface ID2D1GeometrySink ID2D1GeometrySink; -#ifdef __cplusplus -interface ID2D1GeometrySink; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1PathGeometry_FWD_DEFINED__ -#define __ID2D1PathGeometry_FWD_DEFINED__ -typedef interface ID2D1PathGeometry ID2D1PathGeometry; -#ifdef __cplusplus -interface ID2D1PathGeometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1DrawingStateBlock_FWD_DEFINED__ -#define __ID2D1DrawingStateBlock_FWD_DEFINED__ -typedef interface ID2D1DrawingStateBlock ID2D1DrawingStateBlock; -#ifdef __cplusplus -interface ID2D1DrawingStateBlock; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Image_FWD_DEFINED__ -#define __ID2D1Image_FWD_DEFINED__ -typedef interface ID2D1Image ID2D1Image; -#ifdef __cplusplus -interface ID2D1Image; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Bitmap_FWD_DEFINED__ -#define __ID2D1Bitmap_FWD_DEFINED__ -typedef interface ID2D1Bitmap ID2D1Bitmap; -#ifdef __cplusplus -interface ID2D1Bitmap; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Brush_FWD_DEFINED__ -#define __ID2D1Brush_FWD_DEFINED__ -typedef interface ID2D1Brush ID2D1Brush; -#ifdef __cplusplus -interface ID2D1Brush; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BitmapBrush_FWD_DEFINED__ -#define __ID2D1BitmapBrush_FWD_DEFINED__ -typedef interface ID2D1BitmapBrush ID2D1BitmapBrush; -#ifdef __cplusplus -interface ID2D1BitmapBrush; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1SolidColorBrush_FWD_DEFINED__ -#define __ID2D1SolidColorBrush_FWD_DEFINED__ -typedef interface ID2D1SolidColorBrush ID2D1SolidColorBrush; -#ifdef __cplusplus -interface ID2D1SolidColorBrush; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1GradientStopCollection_FWD_DEFINED__ -#define __ID2D1GradientStopCollection_FWD_DEFINED__ -typedef interface ID2D1GradientStopCollection ID2D1GradientStopCollection; -#ifdef __cplusplus -interface ID2D1GradientStopCollection; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1LinearGradientBrush_FWD_DEFINED__ -#define __ID2D1LinearGradientBrush_FWD_DEFINED__ -typedef interface ID2D1LinearGradientBrush ID2D1LinearGradientBrush; -#ifdef __cplusplus -interface ID2D1LinearGradientBrush; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1RadialGradientBrush_FWD_DEFINED__ -#define __ID2D1RadialGradientBrush_FWD_DEFINED__ -typedef interface ID2D1RadialGradientBrush ID2D1RadialGradientBrush; -#ifdef __cplusplus -interface ID2D1RadialGradientBrush; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Layer_FWD_DEFINED__ -#define __ID2D1Layer_FWD_DEFINED__ -typedef interface ID2D1Layer ID2D1Layer; -#ifdef __cplusplus -interface ID2D1Layer; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Mesh_FWD_DEFINED__ -#define __ID2D1Mesh_FWD_DEFINED__ -typedef interface ID2D1Mesh ID2D1Mesh; -#ifdef __cplusplus -interface ID2D1Mesh; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1RenderTarget_FWD_DEFINED__ -#define __ID2D1RenderTarget_FWD_DEFINED__ -typedef interface ID2D1RenderTarget ID2D1RenderTarget; -#ifdef __cplusplus -interface ID2D1RenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BitmapRenderTarget_FWD_DEFINED__ -#define __ID2D1BitmapRenderTarget_FWD_DEFINED__ -typedef interface ID2D1BitmapRenderTarget ID2D1BitmapRenderTarget; -#ifdef __cplusplus -interface ID2D1BitmapRenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1HwndRenderTarget_FWD_DEFINED__ -#define __ID2D1HwndRenderTarget_FWD_DEFINED__ -typedef interface ID2D1HwndRenderTarget ID2D1HwndRenderTarget; -#ifdef __cplusplus -interface ID2D1HwndRenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1DCRenderTarget_FWD_DEFINED__ -#define __ID2D1DCRenderTarget_FWD_DEFINED__ -typedef interface ID2D1DCRenderTarget ID2D1DCRenderTarget; -#ifdef __cplusplus -interface ID2D1DCRenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1GdiInteropRenderTarget_FWD_DEFINED__ -#define __ID2D1GdiInteropRenderTarget_FWD_DEFINED__ -typedef interface ID2D1GdiInteropRenderTarget ID2D1GdiInteropRenderTarget; -#ifdef __cplusplus -interface ID2D1GdiInteropRenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Factory_FWD_DEFINED__ -#define __ID2D1Factory_FWD_DEFINED__ -typedef interface ID2D1Factory ID2D1Factory; -#ifdef __cplusplus -interface ID2D1Factory; -#endif /* __cplusplus */ -#endif - -/* Headers for imported files */ +#ifndef _D2D1_H +#define _D2D1_H #include #include -#include +#include #include +#include #include -#ifdef __cplusplus -extern "C" { +#ifndef _COM_interface +#define _COM_interface struct #endif -#ifdef WINE_NO_UNICODE_MACROS -#undef DrawText -#endif -#ifndef __ID2D1Factory_FWD_DEFINED__ -#define __ID2D1Factory_FWD_DEFINED__ -typedef interface ID2D1Factory ID2D1Factory; -#ifdef __cplusplus -interface ID2D1Factory; -#endif /* __cplusplus */ -#endif +typedef UINT64 D2D1_TAG; -#ifndef __ID2D1RenderTarget_FWD_DEFINED__ -#define __ID2D1RenderTarget_FWD_DEFINED__ -typedef interface ID2D1RenderTarget ID2D1RenderTarget; -#ifdef __cplusplus -interface ID2D1RenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BitmapRenderTarget_FWD_DEFINED__ -#define __ID2D1BitmapRenderTarget_FWD_DEFINED__ -typedef interface ID2D1BitmapRenderTarget ID2D1BitmapRenderTarget; -#ifdef __cplusplus -interface ID2D1BitmapRenderTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Geometry_FWD_DEFINED__ -#define __ID2D1Geometry_FWD_DEFINED__ -typedef interface ID2D1Geometry ID2D1Geometry; -#ifdef __cplusplus -interface ID2D1Geometry; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Brush_FWD_DEFINED__ -#define __ID2D1Brush_FWD_DEFINED__ -typedef interface ID2D1Brush ID2D1Brush; -#ifdef __cplusplus -interface ID2D1Brush; -#endif /* __cplusplus */ -#endif - -#ifndef __IDWriteRenderingParams_FWD_DEFINED__ -#define __IDWriteRenderingParams_FWD_DEFINED__ -typedef interface IDWriteRenderingParams IDWriteRenderingParams; -#ifdef __cplusplus -interface IDWriteRenderingParams; -#endif /* __cplusplus */ -#endif - -#ifndef __IDWriteTextFormat_FWD_DEFINED__ -#define __IDWriteTextFormat_FWD_DEFINED__ -typedef interface IDWriteTextFormat IDWriteTextFormat; -#ifdef __cplusplus -interface IDWriteTextFormat; -#endif /* __cplusplus */ -#endif - -#ifndef __IDWriteTextLayout_FWD_DEFINED__ -#define __IDWriteTextLayout_FWD_DEFINED__ -typedef interface IDWriteTextLayout IDWriteTextLayout; -#ifdef __cplusplus -interface IDWriteTextLayout; -#endif /* __cplusplus */ +#if !defined(D2D_USE_C_DEFINITIONS) && !defined(__cplusplus) +#define D2D_USE_C_DEFINITIONS #endif #ifndef __IWICBitmapSource_FWD_DEFINED__ #define __IWICBitmapSource_FWD_DEFINED__ typedef interface IWICBitmapSource IWICBitmapSource; -#ifdef __cplusplus -interface IWICBitmapSource; -#endif /* __cplusplus */ #endif #ifndef __IWICBitmap_FWD_DEFINED__ #define __IWICBitmap_FWD_DEFINED__ typedef interface IWICBitmap IWICBitmap; -#ifdef __cplusplus -interface IWICBitmap; -#endif /* __cplusplus */ #endif -#ifndef __dwrite_h__ typedef struct DWRITE_GLYPH_RUN DWRITE_GLYPH_RUN; -#endif /* __dwrite_h__ */ + +#define D2D1_INVALID_TAG ULONGLONG_MAX +#define D2D1_DEFAULT_FLATTENING_TOLERANCE (0.25f) + +#ifndef __IDWriteRenderingParams_FWD_DEFINED__ +#define __IDWriteRenderingParams_FWD_DEFINED__ +typedef struct IDWriteRenderingParams IDWriteRenderingParams; +#endif + +#ifndef __IDXGISurface_FWD_DEFINED__ +#define __IDXGISurface_FWD_DEFINED__ +typedef struct IDXGISurface IDXGISurface; +#endif + +#ifndef __IDWriteTextFormat_FWD_DEFINED__ +#define __IDWriteTextFormat_FWD_DEFINED__ +typedef struct IDWriteTextFormat IDWriteTextFormat; +#endif + +#ifndef __IDWriteTextLayout_FWD_DEFINED__ +#define __IDWriteTextLayout_FWD_DEFINED__ +typedef struct IDWriteTextLayout IDWriteTextLayout; +#endif + +#ifndef __IDWriteFontFace_FWD_DEFINED__ +#define __IDWriteFontFace_FWD_DEFINED__ +typedef struct IDWriteFontFace IDWriteFontFace; +#endif + +typedef enum D2D1_ANTIALIAS_MODE { + D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0, + D2D1_ANTIALIAS_MODE_ALIASED = 1, + D2D1_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff +} D2D1_ANTIALIAS_MODE; + +typedef enum D2D1_ARC_SIZE { + D2D1_ARC_SIZE_SMALL = 0, + D2D1_ARC_SIZE_LARGE = 1, + D2D1_ARC_SIZE_FORCE_DWORD = 0xffffffff +} D2D1_ARC_SIZE; + +enum { + D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR = 0, + D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR = 1, + D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC = 2, + D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR = 3, + D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC = 4, + D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC = 5, + D2D1_INTERPOLATION_MODE_DEFINITION_FANT = 6, + D2D1_INTERPOLATION_MODE_DEFINITION_MIPMAP_LINEAR = 7 +}; + +typedef enum D2D1_BITMAP_INTERPOLATION_MODE { + D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0, + D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = 1, + D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff +} D2D1_BITMAP_INTERPOLATION_MODE; + +typedef enum D2D1_CAP_STYLE { + D2D1_CAP_STYLE_FLAT = 0, + D2D1_CAP_STYLE_SQUARE = 1, + D2D1_CAP_STYLE_ROUND = 2, + D2D1_CAP_STYLE_TRIANGLE = 3, + D2D1_CAP_STYLE_FORCE_DWORD = 0xffffffff +} D2D1_CAP_STYLE; + +typedef enum D2D1_COMBINE_MODE { + D2D1_COMBINE_MODE_UNION = 0, + D2D1_COMBINE_MODE_INTERSECT = 1, + D2D1_COMBINE_MODE_XOR = 2, + D2D1_COMBINE_MODE_EXCLUDE = 3, + D2D1_COMBINE_MODE_FORCE_DWORD = 0xffffffff +} D2D1_COMBINE_MODE; + +typedef enum D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS { + D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE = 0x00000000, + D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE = 0x00000001, + D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS; + +typedef enum D2D1_DASH_STYLE { + D2D1_DASH_STYLE_SOLID = 0, + D2D1_DASH_STYLE_DASH = 1, + D2D1_DASH_STYLE_DOT = 2, + D2D1_DASH_STYLE_DASH_DOT = 3, + D2D1_DASH_STYLE_DASH_DOT_DOT = 4, + D2D1_DASH_STYLE_CUSTOM = 5, + D2D1_DASH_STYLE_FORCE_DWORD = 0xffffffff +} D2D1_DASH_STYLE; + +typedef enum D2D1_DC_INITIALIZE_MODE { + D2D1_DC_INITIALIZE_MODE_COPY = 0, + D2D1_DC_INITIALIZE_MODE_CLEAR = 1, + D2D1_DC_INITIALIZE_MODE_FORCE_DWORD = 0xffffffff +} D2D1_DC_INITIALIZE_MODE; + +typedef enum D2D1_DEBUG_LEVEL { + D2D1_DEBUG_LEVEL_NONE = 0, + D2D1_DEBUG_LEVEL_ERROR = 1, + D2D1_DEBUG_LEVEL_WARNING = 2, + D2D1_DEBUG_LEVEL_INFORMATION = 3, + D2D1_DEBUG_LEVEL_FORCE_DWORD = 0xffffffff +} D2D1_DEBUG_LEVEL; + +typedef enum D2D1_DRAW_TEXT_OPTIONS { + D2D1_DRAW_TEXT_OPTIONS_NO_SNAP = 0x00000001, + D2D1_DRAW_TEXT_OPTIONS_CLIP = 0x00000002, + D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT = 0x00000004, + D2D1_DRAW_TEXT_OPTIONS_DISABLE_COLOR_BITMAP_SNAPPING = 0x00000008, + D2D1_DRAW_TEXT_OPTIONS_NONE = 0x00000000, + D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_DRAW_TEXT_OPTIONS; + +typedef enum D2D1_EXTEND_MODE { + D2D1_EXTEND_MODE_CLAMP = 0, + D2D1_EXTEND_MODE_WRAP = 1, + D2D1_EXTEND_MODE_MIRROR = 2, + D2D1_EXTEND_MODE_FORCE_DWORD = 0xffffffff +} D2D1_EXTEND_MODE; + +typedef enum D2D1_FACTORY_TYPE { + D2D1_FACTORY_TYPE_SINGLE_THREADED = 0, + D2D1_FACTORY_TYPE_MULTI_THREADED = 1, + D2D1_FACTORY_TYPE_FORCE_DWORD = 0xffffffff +} D2D1_FACTORY_TYPE; + +typedef enum D2D1_FEATURE_LEVEL { + D2D1_FEATURE_LEVEL_DEFAULT = 0, + D2D1_FEATURE_LEVEL_9 = D3D10_FEATURE_LEVEL_9_1, + D2D1_FEATURE_LEVEL_10 = D3D10_FEATURE_LEVEL_10_0, + D2D1_FEATURE_LEVEL_FORCE_DWORD = 0xffffffff +} D2D1_FEATURE_LEVEL; + +typedef enum D2D1_FIGURE_BEGIN { + D2D1_FIGURE_BEGIN_FILLED = 0, + D2D1_FIGURE_BEGIN_HOLLOW = 1, + D2D1_FIGURE_BEGIN_FORCE_DWORD = 0xffffffff +} D2D1_FIGURE_BEGIN; + +typedef enum D2D1_FIGURE_END { + D2D1_FIGURE_END_OPEN = 0, + D2D1_FIGURE_END_CLOSED = 1, + D2D1_FIGURE_END_FORCE_DWORD = 0xffffffff +} D2D1_FIGURE_END; + +typedef enum D2D1_FILL_MODE { + D2D1_FILL_MODE_ALTERNATE = 0, + D2D1_FILL_MODE_WINDING = 1, + D2D1_FILL_MODE_FORCE_DWORD = 0xffffffff +} D2D1_FILL_MODE; + +typedef enum D2D1_GAMMA { + D2D1_GAMMA_2_2 = 0, + D2D1_GAMMA_1_0 = 1, + D2D1_GAMMA_FORCE_DWORD = 0xffffffff +} D2D1_GAMMA; + +typedef enum D2D1_GEOMETRY_RELATION { + D2D1_GEOMETRY_RELATION_UNKNOWN = 0, + D2D1_GEOMETRY_RELATION_DISJOINT = 1, + D2D1_GEOMETRY_RELATION_IS_CONTAINED = 2, + D2D1_GEOMETRY_RELATION_CONTAINS = 3, + D2D1_GEOMETRY_RELATION_OVERLAP = 4, + D2D1_GEOMETRY_RELATION_FORCE_DWORD = 0xffffffff +} D2D1_GEOMETRY_RELATION; + +typedef enum D2D1_GEOMETRY_SIMPLIFICATION_OPTION { + D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES = 0, + D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES = 1, + D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD = 0xffffffff +} D2D1_GEOMETRY_SIMPLIFICATION_OPTION; + +typedef enum D2D1_LAYER_OPTIONS { + D2D1_LAYER_OPTIONS_NONE = 0x00000000, + D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE = 0x00000001, + D2D1_LAYER_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_LAYER_OPTIONS; + +typedef enum D2D1_LINE_JOIN { + D2D1_LINE_JOIN_MITER = 0, + D2D1_LINE_JOIN_BEVEL = 1, + D2D1_LINE_JOIN_ROUND = 2, + D2D1_LINE_JOIN_MITER_OR_BEVEL = 3, + D2D1_LINE_JOIN_FORCE_DWORD = 0xffffffff +} D2D1_LINE_JOIN; + +typedef enum D2D1_OPACITY_MASK_CONTENT { + D2D1_OPACITY_MASK_CONTENT_GRAPHICS = 0, + D2D1_OPACITY_MASK_CONTENT_TEXT_NATURAL = 1, + D2D1_OPACITY_MASK_CONTENT_TEXT_GDI_COMPATIBLE = 2, + D2D1_OPACITY_MASK_CONTENT_FORCE_DWORD = 0xffffffff +} D2D1_OPACITY_MASK_CONTENT; + +typedef enum D2D1_PATH_SEGMENT { + D2D1_PATH_SEGMENT_NONE = 0x00000000, + D2D1_PATH_SEGMENT_FORCE_UNSTROKED = 0x00000001, + D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN = 0x00000002, + D2D1_PATH_SEGMENT_FORCE_DWORD = 0xffffffff +} D2D1_PATH_SEGMENT; + +typedef enum D2D1_PRESENT_OPTIONS { + D2D1_PRESENT_OPTIONS_NONE = 0x00000000, + D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS = 0x00000001, + D2D1_PRESENT_OPTIONS_IMMEDIATELY = 0x00000002, + D2D1_PRESENT_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_PRESENT_OPTIONS; + +typedef enum D2D1_RENDER_TARGET_TYPE { + D2D1_RENDER_TARGET_TYPE_DEFAULT = 0, + D2D1_RENDER_TARGET_TYPE_SOFTWARE = 1, + D2D1_RENDER_TARGET_TYPE_HARDWARE = 2, + D2D1_RENDER_TARGET_TYPE_FORCE_DWORD = 0xffffffff +} D2D1_RENDER_TARGET_TYPE; + +typedef enum D2D1_RENDER_TARGET_USAGE { + D2D1_RENDER_TARGET_USAGE_NONE = 0x00000000, + D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING = 0x00000001, + D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE = 0x00000002, + D2D1_RENDER_TARGET_USAGE_FORCE_DWORD = 0xffffffff +} D2D1_RENDER_TARGET_USAGE; + +typedef enum D2D1_SWEEP_DIRECTION { + D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE = 0, + D2D1_SWEEP_DIRECTION_CLOCKWISE = 1, + D2D1_SWEEP_DIRECTION_FORCE_DWORD = 0xffffffff +} D2D1_SWEEP_DIRECTION; + +typedef enum D2D1_TEXT_ANTIALIAS_MODE { + D2D1_TEXT_ANTIALIAS_MODE_DEFAULT = 0, + D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE = 1, + D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE = 2, + D2D1_TEXT_ANTIALIAS_MODE_ALIASED = 3, + D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff +} D2D1_TEXT_ANTIALIAS_MODE; + +typedef enum D2D1_WINDOW_STATE { + D2D1_WINDOW_STATE_NONE = 0x00000000, + D2D1_WINDOW_STATE_OCCLUDED = 0x00000001, + D2D1_WINDOW_STATE_FORCE_DWORD = 0xffffffff +} D2D1_WINDOW_STATE; + +/* this is a hack so we can use forward declares in C (easier than reordering interfaces) */ +#if !defined(__cplusplus) +#undef DECLARE_INTERFACE +#define DECLARE_INTERFACE(iface) struct iface { struct iface##Vtbl *lpVtbl; }; typedef struct iface##Vtbl iface##Vtbl; struct iface##Vtbl +#endif + +/* interface forward declares */ + +typedef _COM_interface ID2D1Bitmap ID2D1Bitmap; +typedef _COM_interface ID2D1BitmapBrush ID2D1BitmapBrush; +typedef _COM_interface ID2D1BitmapRenderTarget ID2D1BitmapRenderTarget; +typedef _COM_interface ID2D1Brush ID2D1Brush; +typedef _COM_interface ID2D1DCRenderTarget ID2D1DCRenderTarget; +typedef _COM_interface ID2D1DrawingStateBlock ID2D1DrawingStateBlock; +typedef _COM_interface ID2D1EllipseGeometry ID2D1EllipseGeometry; +typedef _COM_interface ID2D1Factory ID2D1Factory; +typedef _COM_interface ID2D1GdiInteropRenderTarget ID2D1GdiInteropRenderTarget; +typedef _COM_interface ID2D1Geometry ID2D1Geometry; +typedef _COM_interface ID2D1GeometryGroup ID2D1GeometryGroup; +typedef _COM_interface ID2D1GeometrySink ID2D1GeometrySink; +typedef _COM_interface ID2D1GradientStopCollection ID2D1GradientStopCollection; +typedef _COM_interface ID2D1HwndRenderTarget ID2D1HwndRenderTarget; +typedef _COM_interface ID2D1Layer ID2D1Layer; +typedef _COM_interface ID2D1LinearGradientBrush ID2D1LinearGradientBrush; +typedef _COM_interface ID2D1Mesh ID2D1Mesh; +typedef _COM_interface ID2D1PathGeometry ID2D1PathGeometry; +typedef _COM_interface ID2D1RadialGradientBrush ID2D1RadialGradientBrush; +typedef _COM_interface ID2D1RectangleGeometry ID2D1RectangleGeometry; +typedef _COM_interface ID2D1RenderTarget ID2D1RenderTarget; +typedef _COM_interface ID2D1Resource ID2D1Resource; +typedef _COM_interface ID2D1RoundedRectangleGeometry ID2D1RoundedRectangleGeometry; +typedef _COM_interface ID2D1SimplifiedGeometrySink ID2D1SimplifiedGeometrySink; +typedef _COM_interface ID2D1SolidColorBrush ID2D1SolidColorBrush; +typedef _COM_interface ID2D1StrokeStyle ID2D1StrokeStyle; +typedef _COM_interface ID2D1TessellationSink ID2D1TessellationSink; +typedef _COM_interface ID2D1TransformedGeometry ID2D1TransformedGeometry; + +/* structures */ + +typedef struct D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F; + +typedef struct D2D1_ARC_SEGMENT D2D1_ARC_SEGMENT; +typedef struct D2D1_BEZIER_SEGMENT D2D1_BEZIER_SEGMENT; +typedef struct D2D1_BITMAP_BRUSH_PROPERTIES D2D1_BITMAP_BRUSH_PROPERTIES; +typedef struct D2D1_BITMAP_PROPERTIES D2D1_BITMAP_PROPERTIES; +typedef struct D2D1_BRUSH_PROPERTIES D2D1_BRUSH_PROPERTIES; +typedef struct D2D1_DRAWING_STATE_DESCRIPTION D2D1_DRAWING_STATE_DESCRIPTION; +typedef struct D2D1_ELLIPSE D2D1_ELLIPSE; +typedef struct D2D1_FACTORY_OPTIONS D2D1_FACTORY_OPTIONS; +typedef struct D2D1_GRADIENT_STOP D2D1_GRADIENT_STOP; +typedef struct D2D1_HWND_RENDER_TARGET_PROPERTIES D2D1_HWND_RENDER_TARGET_PROPERTIES; +typedef struct D2D1_LAYER_PARAMETERS D2D1_LAYER_PARAMETERS; +typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES; +typedef struct D2D1_QUADRATIC_BEZIER_SEGMENT D2D1_QUADRATIC_BEZIER_SEGMENT; +typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES; +typedef struct D2D1_RENDER_TARGET_PROPERTIES D2D1_RENDER_TARGET_PROPERTIES; +typedef struct D2D1_ROUNDED_RECT D2D1_ROUNDED_RECT; +typedef struct D2D1_STROKE_STYLE_PROPERTIES D2D1_STROKE_STYLE_PROPERTIES; +typedef struct D2D1_TRIANGLE D2D1_TRIANGLE; + typedef D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F; typedef D2D_RECT_F D2D1_RECT_F; typedef D2D_SIZE_F D2D1_SIZE_F; @@ -363,7326 +348,2184 @@ typedef UINT64 D2D1_TAG; typedef D2D_POINT_2U D2D1_POINT_2U; typedef D2D_RECT_U D2D1_RECT_U; typedef D2D_COLOR_F D2D1_COLOR_F; -#define D2D1_DEFAULT_FLATTENING_TOLERANCE (0.25f) -enum { - D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR = 0, - D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR = 1, - D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC = 2, - D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR = 3, - D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC = 4, - D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC = 5, - D2D1_INTERPOLATION_MODE_DEFINITION_FANT = 6, - D2D1_INTERPOLATION_MODE_DEFINITION_MIPMAP_LINEAR = 7 + +struct D2D1_ARC_SEGMENT { + D2D1_POINT_2F point; + D2D1_SIZE_F size; + FLOAT rotationAngle; + D2D1_SWEEP_DIRECTION sweepDirection; + D2D1_ARC_SIZE arcSize; }; -typedef enum D2D1_DEBUG_LEVEL { - D2D1_DEBUG_LEVEL_NONE = 0, - D2D1_DEBUG_LEVEL_ERROR = 1, - D2D1_DEBUG_LEVEL_WARNING = 2, - D2D1_DEBUG_LEVEL_INFORMATION = 3, - D2D1_DEBUG_LEVEL_FORCE_DWORD = 0xffffffff -} D2D1_DEBUG_LEVEL; -typedef enum D2D1_FACTORY_TYPE { - D2D1_FACTORY_TYPE_SINGLE_THREADED = 0, - D2D1_FACTORY_TYPE_MULTI_THREADED = 1, - D2D1_FACTORY_TYPE_FORCE_DWORD = 0xfffffff -} D2D1_FACTORY_TYPE; -typedef enum D2D1_FILL_MODE { - D2D1_FILL_MODE_ALTERNATE = 0, - D2D1_FILL_MODE_WINDING = 1, - D2D1_FILL_MODE_FORCE_DWORD = 0xffffffff -} D2D1_FILL_MODE; -typedef enum D2D1_PATH_SEGMENT { - D2D1_PATH_SEGMENT_NONE = 0, - D2D1_PATH_SEGMENT_FORCE_UNSTROKED = 1, - D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN = 2, - D2D1_PATH_SEGMENT_FORCE_DWORD = 0xffffffff -} D2D1_PATH_SEGMENT; -typedef enum D2D1_FIGURE_BEGIN { - D2D1_FIGURE_BEGIN_FILLED = 0, - D2D1_FIGURE_BEGIN_HOLLOW = 1, - D2D1_FIGURE_BEGIN_FORCE_DWORD = 0xffffffff -} D2D1_FIGURE_BEGIN; -typedef enum D2D1_FIGURE_END { - D2D1_FIGURE_END_OPEN = 0, - D2D1_FIGURE_END_CLOSED = 1, - D2D1_FIGURE_END_FORCE_DWORD = 0xffffffff -} D2D1_FIGURE_END; -typedef enum D2D1_CAP_STYLE { - D2D1_CAP_STYLE_FLAT = 0, - D2D1_CAP_STYLE_SQUARE = 1, - D2D1_CAP_STYLE_ROUND = 2, - D2D1_CAP_STYLE_TRIANGLE = 3, - D2D1_CAP_STYLE_FORCE_DWORD = 0xffffffff -} D2D1_CAP_STYLE; -typedef enum D2D1_LINE_JOIN { - D2D1_LINE_JOIN_MITER = 0, - D2D1_LINE_JOIN_BEVEL = 1, - D2D1_LINE_JOIN_ROUND = 2, - D2D1_LINE_JOIN_MITER_OR_BEVEL = 3, - D2D1_LINE_JOIN_FORCE_DWORD = 0xffffffff -} D2D1_LINE_JOIN; -typedef enum D2D1_DASH_STYLE { - D2D1_DASH_STYLE_SOLID = 0, - D2D1_DASH_STYLE_DASH = 1, - D2D1_DASH_STYLE_DOT = 2, - D2D1_DASH_STYLE_DASH_DOT = 3, - D2D1_DASH_STYLE_DASH_DOT_DOT = 4, - D2D1_DASH_STYLE_CUSTOM = 5, - D2D1_DASH_STYLE_FORCE_DWORD = 0xffffffff -} D2D1_DASH_STYLE; -typedef enum D2D1_GEOMETRY_RELATION { - D2D1_GEOMETRY_RELATION_UNKNOWN = 0, - D2D1_GEOMETRY_RELATION_DISJOINT = 1, - D2D1_GEOMETRY_RELATION_IS_CONTAINED = 2, - D2D1_GEOMETRY_RELATION_CONTAINS = 3, - D2D1_GEOMETRY_RELATION_OVERLAP = 4, - D2D1_GEOMETRY_RELATION_FORCE_DWORD = 0xffffffff -} D2D1_GEOMETRY_RELATION; -typedef enum D2D1_GEOMETRY_SIMPLIFICATION_OPTION { - D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES = 0, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES = 1, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD = 0xffffffff -} D2D1_GEOMETRY_SIMPLIFICATION_OPTION; -typedef enum D2D1_COMBINE_MODE { - D2D1_COMBINE_MODE_UNION = 0, - D2D1_COMBINE_MODE_INTERSECT = 1, - D2D1_COMBINE_MODE_XOR = 2, - D2D1_COMBINE_MODE_EXCLUDE = 3, - D2D1_COMBINE_MODE_FORCE_DWORD = 0xffffffff -} D2D1_COMBINE_MODE; -typedef enum D2D1_SWEEP_DIRECTION { - D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE = 0, - D2D1_SWEEP_DIRECTION_CLOCKWISE = 1, - D2D1_SWEEP_DIRECTION_FORCE_DWORD = 0xffffffff -} D2D1_SWEEP_DIRECTION; -typedef enum D2D1_ARC_SIZE { - D2D1_ARC_SIZE_SMALL = 0, - D2D1_ARC_SIZE_LARGE = 1, - D2D1_ARC_SIZE_FORCE_DWORD = 0xffffffff -} D2D1_ARC_SIZE; -typedef enum D2D1_ANTIALIAS_MODE { - D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0, - D2D1_ANTIALIAS_MODE_ALIASED = 1, - D2D1_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff -} D2D1_ANTIALIAS_MODE; -typedef enum D2D1_TEXT_ANTIALIAS_MODE { - D2D1_TEXT_ANTIALIAS_MODE_DEFAULT = 0, - D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE = 1, - D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE = 2, - D2D1_TEXT_ANTIALIAS_MODE_ALIASED = 3, - D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff -} D2D1_TEXT_ANTIALIAS_MODE; -typedef enum D2D1_EXTEND_MODE { - D2D1_EXTEND_MODE_CLAMP = 0, - D2D1_EXTEND_MODE_WRAP = 1, - D2D1_EXTEND_MODE_MIRROR = 2, - D2D1_EXTEND_MODE_FORCE_DWORD = 0xffffffff -} D2D1_EXTEND_MODE; -typedef enum D2D1_BITMAP_INTERPOLATION_MODE { - D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, - D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, - D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_BITMAP_INTERPOLATION_MODE; -typedef enum D2D1_GAMMA { - D2D1_GAMMA_2_2 = 0, - D2D1_GAMMA_1_0 = 1, - D2D1_GAMMA_FORCE_DWORD = 0xffffffff -} D2D1_GAMMA; -typedef enum D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS { - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE = 0x0, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE = 0x1, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS; -typedef enum D2D1_OPACITY_MASK_CONTENT { - D2D1_OPACITY_MASK_CONTENT_GRAPHICS = 0, - D2D1_OPACITY_MASK_CONTENT_TEXT_NATURAL = 1, - D2D1_OPACITY_MASK_CONTENT_TEXT_GDI_COMPATIBLE = 2, - D2D1_OPACITY_MASK_CONTENT_FORCE_DWORD = 0xffffffff -} D2D1_OPACITY_MASK_CONTENT; -typedef enum D2D1_DRAW_TEXT_OPTIONS { - D2D1_DRAW_TEXT_OPTIONS_NO_SNAP = 0x1, - D2D1_DRAW_TEXT_OPTIONS_CLIP = 0x2, - D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT = 0x4, - D2D1_DRAW_TEXT_OPTIONS_DISABLE_COLOR_BITMAP_SNAPPING = 0x8, - D2D1_DRAW_TEXT_OPTIONS_NONE = 0x0, - D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_DRAW_TEXT_OPTIONS; -typedef enum D2D1_LAYER_OPTIONS { - D2D1_LAYER_OPTIONS_NONE = 0x0, - D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE = 0x1, - D2D1_LAYER_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_LAYER_OPTIONS; -typedef enum D2D1_RENDER_TARGET_TYPE { - D2D1_RENDER_TARGET_TYPE_DEFAULT = 0, - D2D1_RENDER_TARGET_TYPE_SOFTWARE = 1, - D2D1_RENDER_TARGET_TYPE_HARDWARE = 2, - D2D1_RENDER_TARGET_TYPE_FORCE_DWORD = 0xffffffff -} D2D1_RENDER_TARGET_TYPE; -typedef enum D2D1_RENDER_TARGET_USAGE { - D2D1_RENDER_TARGET_USAGE_NONE = 0x0, - D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING = 0x1, - D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE = 0x2, - D2D1_RENDER_TARGET_USAGE_FORCE_DWORD = 0xffffffff -} D2D1_RENDER_TARGET_USAGE; -typedef enum D2D1_FEATURE_LEVEL { - D2D1_FEATURE_LEVEL_DEFAULT = 0, - D2D1_FEATURE_LEVEL_9 = D3D_FEATURE_LEVEL_9_1, - D2D1_FEATURE_LEVEL_10 = D3D_FEATURE_LEVEL_10_0, - D2D1_FEATURE_LEVEL_FORCE_DWORD = 0xffffffff -} D2D1_FEATURE_LEVEL; -typedef enum D2D1_WINDOW_STATE { - D2D1_WINDOW_STATE_NONE = 0, - D2D1_WINDOW_STATE_OCCLUDED = 1, - D2D1_WINDOW_STATE_FORCE_DWORD = 0xffffffff -} D2D1_WINDOW_STATE; -typedef enum D2D1_DC_INITIALIZE_MODE { - D2D1_DC_INITIALIZE_MODE_COPY = 0, - D2D1_DC_INITIALIZE_MODE_CLEAR = 1, - D2D1_DC_INITIALIZE_MODE_FORCE_DWORD = 0xffffffff -} D2D1_DC_INITIALIZE_MODE; -typedef enum D2D1_PRESENT_OPTIONS { - D2D1_PRESENT_OPTIONS_NONE = 0x0, - D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS = 0x1, - D2D1_PRESENT_OPTIONS_IMMEDIATELY = 0x2, - D2D1_PRESENT_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_PRESENT_OPTIONS; -typedef struct D2D1_BEZIER_SEGMENT { - D2D1_POINT_2F point1; - D2D1_POINT_2F point2; - D2D1_POINT_2F point3; -} D2D1_BEZIER_SEGMENT; -typedef struct D2D1_FACTORY_OPTIONS { - D2D1_DEBUG_LEVEL debugLevel; -} D2D1_FACTORY_OPTIONS; -typedef struct D2D1_TRIANGLE { - D2D1_POINT_2F point1; - D2D1_POINT_2F point2; - D2D1_POINT_2F point3; -} D2D1_TRIANGLE; -typedef struct D2D1_ROUNDED_RECT { - D2D1_RECT_F rect; - float radiusX; - float radiusY; -} D2D1_ROUNDED_RECT; -typedef struct D2D1_ELLIPSE { - D2D1_POINT_2F point; - float radiusX; - float radiusY; -} D2D1_ELLIPSE; -typedef struct D2D1_QUADRATIC_BEZIER_SEGMENT { - D2D1_POINT_2F point1; - D2D1_POINT_2F point2; -} D2D1_QUADRATIC_BEZIER_SEGMENT; -typedef struct D2D1_ARC_SEGMENT { - D2D1_POINT_2F point; - D2D1_SIZE_F size; - float rotationAngle; - D2D1_SWEEP_DIRECTION sweepDirection; - D2D1_ARC_SIZE arcSize; -} D2D1_ARC_SEGMENT; -typedef struct D2D1_DRAWING_STATE_DESCRIPTION { - D2D1_ANTIALIAS_MODE antialiasMode; - D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode; - D2D1_TAG tag1; - D2D1_TAG tag2; - D2D1_MATRIX_3X2_F transform; -} D2D1_DRAWING_STATE_DESCRIPTION; -typedef struct D2D1_GRADIENT_STOP { - float position; - D2D1_COLOR_F color; -} D2D1_GRADIENT_STOP; -typedef struct D2D1_BITMAP_PROPERTIES { - D2D1_PIXEL_FORMAT pixelFormat; - float dpiX; - float dpiY; -} D2D1_BITMAP_PROPERTIES; -typedef struct D2D1_BITMAP_BRUSH_PROPERTIES { - D2D1_EXTEND_MODE extendModeX; - D2D1_EXTEND_MODE extendModeY; - D2D1_BITMAP_INTERPOLATION_MODE interpolationMode; -} D2D1_BITMAP_BRUSH_PROPERTIES; -typedef struct D2D1_BRUSH_PROPERTIES { - float opacity; - D2D1_MATRIX_3X2_F transform; -} D2D1_BRUSH_PROPERTIES; -typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES { - D2D1_POINT_2F startPoint; - D2D1_POINT_2F endPoint; -} D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES; -typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES { - D2D1_POINT_2F center; - D2D1_POINT_2F gradientOriginOffset; - float radiusX; - float radiusY; -} D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES; -typedef struct D2D1_LAYER_PARAMETERS { - D2D1_RECT_F contentBounds; - ID2D1Geometry *geometricMask; - D2D1_ANTIALIAS_MODE maskAntialiasMode; - D2D1_MATRIX_3X2_F maskTransform; - float opacity; - ID2D1Brush *opacityBrush; - D2D1_LAYER_OPTIONS layerOptions; -} D2D1_LAYER_PARAMETERS; -typedef struct D2D1_RENDER_TARGET_PROPERTIES { - D2D1_RENDER_TARGET_TYPE type; - D2D1_PIXEL_FORMAT pixelFormat; - float dpiX; - float dpiY; - D2D1_RENDER_TARGET_USAGE usage; - D2D1_FEATURE_LEVEL minLevel; -} D2D1_RENDER_TARGET_PROPERTIES; -typedef struct D2D1_STROKE_STYLE_PROPERTIES { - D2D1_CAP_STYLE startCap; - D2D1_CAP_STYLE endCap; - D2D1_CAP_STYLE dashCap; - D2D1_LINE_JOIN lineJoin; - float miterLimit; - D2D1_DASH_STYLE dashStyle; - float dashOffset; -} D2D1_STROKE_STYLE_PROPERTIES; -typedef struct D2D1_HWND_RENDER_TARGET_PROPERTIES { - HWND hwnd; - D2D1_SIZE_U pixelSize; - D2D1_PRESENT_OPTIONS presentOptions; -} D2D1_HWND_RENDER_TARGET_PROPERTIES; -/***************************************************************************** - * ID2D1Resource interface + +struct D2D1_BEZIER_SEGMENT { + D2D1_POINT_2F point1; + D2D1_POINT_2F point2; + D2D1_POINT_2F point3; +}; + +struct D2D1_BITMAP_BRUSH_PROPERTIES { + D2D1_EXTEND_MODE extendModeX; + D2D1_EXTEND_MODE extendModeY; + D2D1_BITMAP_INTERPOLATION_MODE interpolationMode; +}; + +struct D2D1_BITMAP_PROPERTIES { + D2D1_PIXEL_FORMAT pixelFormat; + FLOAT dpiX; + FLOAT dpiY; +}; + +struct D2D1_BRUSH_PROPERTIES { + FLOAT opacity; + D2D1_MATRIX_3X2_F transform; +}; + +struct D2D1_DRAWING_STATE_DESCRIPTION { + D2D1_ANTIALIAS_MODE antialiasMode; + D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode; + D2D1_TAG tag1; + D2D1_TAG tag2; + D2D1_MATRIX_3X2_F transform; +}; + +struct D2D1_ELLIPSE { + D2D1_POINT_2F point; + FLOAT radiusX; + FLOAT radiusY; +}; + +struct D2D1_FACTORY_OPTIONS { + D2D1_DEBUG_LEVEL debugLevel; +}; + +struct D2D1_GRADIENT_STOP { + FLOAT position; + D2D1_COLOR_F color; +}; + +struct D2D1_HWND_RENDER_TARGET_PROPERTIES { + HWND hwnd; + D2D1_SIZE_U pixelSize; + D2D1_PRESENT_OPTIONS presentOptions; +}; + +struct D2D1_LAYER_PARAMETERS { + D2D1_RECT_F contentBounds; + ID2D1Geometry *geometricMask; + D2D1_ANTIALIAS_MODE maskAntialiasMode; + D2D1_MATRIX_3X2_F maskTransform; + FLOAT opacity; + ID2D1Brush *opacityBrush; + D2D1_LAYER_OPTIONS layerOptions; +}; + +struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES { + D2D1_POINT_2F startPoint; + D2D1_POINT_2F endPoint; +}; + +struct D2D1_QUADRATIC_BEZIER_SEGMENT { + D2D1_POINT_2F point1; + D2D1_POINT_2F point2; +}; + +struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES { + D2D1_POINT_2F center; + D2D1_POINT_2F gradientOriginOffset; + FLOAT radiusX; + FLOAT radiusY; +}; + +struct D2D1_RENDER_TARGET_PROPERTIES { + D2D1_RENDER_TARGET_TYPE type; + D2D1_PIXEL_FORMAT pixelFormat; + FLOAT dpiX; + FLOAT dpiY; + D2D1_RENDER_TARGET_USAGE usage; + D2D1_FEATURE_LEVEL minLevel; +}; + +struct D2D1_ROUNDED_RECT { + D2D1_RECT_F rect; + FLOAT radiusX; + FLOAT radiusY; +}; + +struct D2D1_STROKE_STYLE_PROPERTIES { + D2D1_CAP_STYLE startCap; + D2D1_CAP_STYLE endCap; + D2D1_CAP_STYLE dashCap; + D2D1_LINE_JOIN lineJoin; + FLOAT miterLimit; + D2D1_DASH_STYLE dashStyle; + FLOAT dashOffset; +}; + +struct D2D1_TRIANGLE { + D2D1_POINT_2F point1; + D2D1_POINT_2F point2; + D2D1_POINT_2F point3; +}; + +/* interfaces */ + +/** + * Header generated from msdn for the purposes of allowing + * 3rd party compiler compatibility with the Microsoft API */ -#ifndef __ID2D1Resource_INTERFACE_DEFINED__ -#define __ID2D1Resource_INTERFACE_DEFINED__ +DEFINE_GUID(IID_ID2D1Resource, 0x2cd90691,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); -DEFINE_GUID(IID_ID2D1Resource, 0x2cd90691, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd90691-12e2-11dc-9fed-001143a055f9") -ID2D1Resource : public IUnknown -{ - virtual void STDMETHODCALLTYPE GetFactory( - ID2D1Factory **factory) = 0; +#ifndef D2D_USE_C_DEFINITIONS +interface ID2D1Resource : public IUnknown { + STDMETHOD_(void, GetFactory)(ID2D1Factory **factory) const PURE; }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Resource, 0x2cd90691, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif + #else + typedef struct ID2D1ResourceVtbl { - BEGIN_INTERFACE + IUnknownVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Resource *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Resource *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Resource *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Resource *This, - ID2D1Factory **factory); - - END_INTERFACE + STDMETHOD_(void, GetFactory)(ID2D1Resource *This, ID2D1Factory **factory) PURE; } ID2D1ResourceVtbl; interface ID2D1Resource { - CONST_VTBL ID2D1ResourceVtbl* lpVtbl; + const ID2D1ResourceVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Resource_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Resource_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Resource_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Resource_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Resource_QueryInterface(ID2D1Resource* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Resource_AddRef(ID2D1Resource* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Resource_Release(ID2D1Resource* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Resource_GetFactory(ID2D1Resource* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -#endif -#endif +#define ID2D1Resource_QueryInterface(this,A,B) (this)->lpVtbl->Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1Resource_AddRef(this) (this)->lpVtbl->Base.AddRef((IUnknown*)(this)) +#define ID2D1Resource_Release(this) (this)->lpVtbl->Base.Release((IUnknown*)(this)) +#define ID2D1Resource_GetFactory(this,A) (this)->lpVtbl->GetFactory(this,A) #endif +DEFINE_GUID(IID_ID2D1Brush, 0x2cd906a8,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); -#endif /* __ID2D1Resource_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1StrokeStyle interface - */ -#ifndef __ID2D1StrokeStyle_INTERFACE_DEFINED__ -#define __ID2D1StrokeStyle_INTERFACE_DEFINED__ +interface ID2D1Brush : public ID2D1Resource { + STDMETHOD_(void, SetOpacity)(FLOAT opacity) PURE; + STDMETHOD_(void, SetTransform)(const D2D1_MATRIX_3X2_F *transform) PURE; + STDMETHOD_(FLOAT, GetOpacity)(void) const PURE; + STDMETHOD_(void, GetTransform)(D2D1_MATRIX_3X2_F *transform) const PURE; -DEFINE_GUID(IID_ID2D1StrokeStyle, 0x2cd9069d, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd9069d-12e2-11dc-9fed-001143a055f9") -ID2D1StrokeStyle : public ID2D1Resource -{ - virtual D2D1_CAP_STYLE STDMETHODCALLTYPE GetStartCap( - ) = 0; - - virtual D2D1_CAP_STYLE STDMETHODCALLTYPE GetEndCap( - ) = 0; - - virtual D2D1_CAP_STYLE STDMETHODCALLTYPE GetDashCap( - ) = 0; - - virtual float STDMETHODCALLTYPE GetMiterLimit( - ) = 0; - - virtual D2D1_LINE_JOIN STDMETHODCALLTYPE GetLineJoin( - ) = 0; - - virtual float STDMETHODCALLTYPE GetDashOffset( - ) = 0; - - virtual D2D1_DASH_STYLE STDMETHODCALLTYPE GetDashStyle( - ) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetDashesCount( - ) = 0; - - virtual void STDMETHODCALLTYPE GetDashes( - float *dashes, - UINT32 count) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1StrokeStyle, 0x2cd9069d, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1StrokeStyleVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1StrokeStyle *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1StrokeStyle *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1StrokeStyle *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1StrokeStyle *This, - ID2D1Factory **factory); - - /*** ID2D1StrokeStyle methods ***/ - D2D1_CAP_STYLE (STDMETHODCALLTYPE *GetStartCap)( - ID2D1StrokeStyle *This); - - D2D1_CAP_STYLE (STDMETHODCALLTYPE *GetEndCap)( - ID2D1StrokeStyle *This); - - D2D1_CAP_STYLE (STDMETHODCALLTYPE *GetDashCap)( - ID2D1StrokeStyle *This); - - float (STDMETHODCALLTYPE *GetMiterLimit)( - ID2D1StrokeStyle *This); - - D2D1_LINE_JOIN (STDMETHODCALLTYPE *GetLineJoin)( - ID2D1StrokeStyle *This); - - float (STDMETHODCALLTYPE *GetDashOffset)( - ID2D1StrokeStyle *This); - - D2D1_DASH_STYLE (STDMETHODCALLTYPE *GetDashStyle)( - ID2D1StrokeStyle *This); - - UINT32 (STDMETHODCALLTYPE *GetDashesCount)( - ID2D1StrokeStyle *This); - - void (STDMETHODCALLTYPE *GetDashes)( - ID2D1StrokeStyle *This, - float *dashes, - UINT32 count); - - END_INTERFACE -} ID2D1StrokeStyleVtbl; - -interface ID2D1StrokeStyle { - CONST_VTBL ID2D1StrokeStyleVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1StrokeStyle_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1StrokeStyle_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1StrokeStyle_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1StrokeStyle_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1StrokeStyle methods ***/ -#define ID2D1StrokeStyle_GetStartCap(This) (This)->lpVtbl->GetStartCap(This) -#define ID2D1StrokeStyle_GetEndCap(This) (This)->lpVtbl->GetEndCap(This) -#define ID2D1StrokeStyle_GetDashCap(This) (This)->lpVtbl->GetDashCap(This) -#define ID2D1StrokeStyle_GetMiterLimit(This) (This)->lpVtbl->GetMiterLimit(This) -#define ID2D1StrokeStyle_GetLineJoin(This) (This)->lpVtbl->GetLineJoin(This) -#define ID2D1StrokeStyle_GetDashOffset(This) (This)->lpVtbl->GetDashOffset(This) -#define ID2D1StrokeStyle_GetDashStyle(This) (This)->lpVtbl->GetDashStyle(This) -#define ID2D1StrokeStyle_GetDashesCount(This) (This)->lpVtbl->GetDashesCount(This) -#define ID2D1StrokeStyle_GetDashes(This,dashes,count) (This)->lpVtbl->GetDashes(This,dashes,count) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1StrokeStyle_QueryInterface(ID2D1StrokeStyle* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1StrokeStyle_AddRef(ID2D1StrokeStyle* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1StrokeStyle_Release(ID2D1StrokeStyle* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1StrokeStyle_GetFactory(ID2D1StrokeStyle* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1StrokeStyle methods ***/ -static __WIDL_INLINE D2D1_CAP_STYLE ID2D1StrokeStyle_GetStartCap(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetStartCap(This); -} -static __WIDL_INLINE D2D1_CAP_STYLE ID2D1StrokeStyle_GetEndCap(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetEndCap(This); -} -static __WIDL_INLINE D2D1_CAP_STYLE ID2D1StrokeStyle_GetDashCap(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetDashCap(This); -} -static __WIDL_INLINE float ID2D1StrokeStyle_GetMiterLimit(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetMiterLimit(This); -} -static __WIDL_INLINE D2D1_LINE_JOIN ID2D1StrokeStyle_GetLineJoin(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetLineJoin(This); -} -static __WIDL_INLINE float ID2D1StrokeStyle_GetDashOffset(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetDashOffset(This); -} -static __WIDL_INLINE D2D1_DASH_STYLE ID2D1StrokeStyle_GetDashStyle(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetDashStyle(This); -} -static __WIDL_INLINE UINT32 ID2D1StrokeStyle_GetDashesCount(ID2D1StrokeStyle* This) { - return This->lpVtbl->GetDashesCount(This); -} -static __WIDL_INLINE void ID2D1StrokeStyle_GetDashes(ID2D1StrokeStyle* This,float *dashes,UINT32 count) { - This->lpVtbl->GetDashes(This,dashes,count); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1StrokeStyle_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1SimplifiedGeometrySink interface - */ -#ifndef __ID2D1SimplifiedGeometrySink_INTERFACE_DEFINED__ -#define __ID2D1SimplifiedGeometrySink_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1SimplifiedGeometrySink, 0x2cd9069e, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd9069e-12e2-11dc-9fed-001143a055f9") -ID2D1SimplifiedGeometrySink : public IUnknown -{ - virtual void STDMETHODCALLTYPE SetFillMode( - D2D1_FILL_MODE mode) = 0; - - virtual void STDMETHODCALLTYPE SetSegmentFlags( - D2D1_PATH_SEGMENT vertexFlags) = 0; - - virtual void STDMETHODCALLTYPE BeginFigure( - D2D1_POINT_2F startPoint, - D2D1_FIGURE_BEGIN figureBegin) = 0; - - virtual void STDMETHODCALLTYPE AddLines( - const D2D1_POINT_2F *points, - UINT32 count) = 0; - - virtual void STDMETHODCALLTYPE AddBeziers( - const D2D1_BEZIER_SEGMENT *beziers, - UINT32 count) = 0; - - virtual void STDMETHODCALLTYPE EndFigure( - D2D1_FIGURE_END figureEnd) = 0; - - virtual HRESULT STDMETHODCALLTYPE Close( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1SimplifiedGeometrySink, 0x2cd9069e, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1SimplifiedGeometrySinkVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1SimplifiedGeometrySink *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1SimplifiedGeometrySink *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1SimplifiedGeometrySink *This); - - /*** ID2D1SimplifiedGeometrySink methods ***/ - void (STDMETHODCALLTYPE *SetFillMode)( - ID2D1SimplifiedGeometrySink *This, - D2D1_FILL_MODE mode); - - void (STDMETHODCALLTYPE *SetSegmentFlags)( - ID2D1SimplifiedGeometrySink *This, - D2D1_PATH_SEGMENT vertexFlags); - - void (STDMETHODCALLTYPE *BeginFigure)( - ID2D1SimplifiedGeometrySink *This, - D2D1_POINT_2F startPoint, - D2D1_FIGURE_BEGIN figureBegin); - - void (STDMETHODCALLTYPE *AddLines)( - ID2D1SimplifiedGeometrySink *This, - const D2D1_POINT_2F *points, - UINT32 count); - - void (STDMETHODCALLTYPE *AddBeziers)( - ID2D1SimplifiedGeometrySink *This, - const D2D1_BEZIER_SEGMENT *beziers, - UINT32 count); - - void (STDMETHODCALLTYPE *EndFigure)( - ID2D1SimplifiedGeometrySink *This, - D2D1_FIGURE_END figureEnd); - - HRESULT (STDMETHODCALLTYPE *Close)( - ID2D1SimplifiedGeometrySink *This); - - END_INTERFACE -} ID2D1SimplifiedGeometrySinkVtbl; - -interface ID2D1SimplifiedGeometrySink { - CONST_VTBL ID2D1SimplifiedGeometrySinkVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1SimplifiedGeometrySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1SimplifiedGeometrySink_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1SimplifiedGeometrySink_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1SimplifiedGeometrySink methods ***/ -#define ID2D1SimplifiedGeometrySink_SetFillMode(This,mode) (This)->lpVtbl->SetFillMode(This,mode) -#define ID2D1SimplifiedGeometrySink_SetSegmentFlags(This,vertexFlags) (This)->lpVtbl->SetSegmentFlags(This,vertexFlags) -#define ID2D1SimplifiedGeometrySink_BeginFigure(This,startPoint,figureBegin) (This)->lpVtbl->BeginFigure(This,startPoint,figureBegin) -#define ID2D1SimplifiedGeometrySink_AddLines(This,points,count) (This)->lpVtbl->AddLines(This,points,count) -#define ID2D1SimplifiedGeometrySink_AddBeziers(This,beziers,count) (This)->lpVtbl->AddBeziers(This,beziers,count) -#define ID2D1SimplifiedGeometrySink_EndFigure(This,figureEnd) (This)->lpVtbl->EndFigure(This,figureEnd) -#define ID2D1SimplifiedGeometrySink_Close(This) (This)->lpVtbl->Close(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1SimplifiedGeometrySink_QueryInterface(ID2D1SimplifiedGeometrySink* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1SimplifiedGeometrySink_AddRef(ID2D1SimplifiedGeometrySink* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1SimplifiedGeometrySink_Release(ID2D1SimplifiedGeometrySink* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1SimplifiedGeometrySink methods ***/ -static __WIDL_INLINE void ID2D1SimplifiedGeometrySink_SetFillMode(ID2D1SimplifiedGeometrySink* This,D2D1_FILL_MODE mode) { - This->lpVtbl->SetFillMode(This,mode); -} -static __WIDL_INLINE void ID2D1SimplifiedGeometrySink_SetSegmentFlags(ID2D1SimplifiedGeometrySink* This,D2D1_PATH_SEGMENT vertexFlags) { - This->lpVtbl->SetSegmentFlags(This,vertexFlags); -} -static __WIDL_INLINE void ID2D1SimplifiedGeometrySink_BeginFigure(ID2D1SimplifiedGeometrySink* This,D2D1_POINT_2F startPoint,D2D1_FIGURE_BEGIN figureBegin) { - This->lpVtbl->BeginFigure(This,startPoint,figureBegin); -} -static __WIDL_INLINE void ID2D1SimplifiedGeometrySink_AddLines(ID2D1SimplifiedGeometrySink* This,const D2D1_POINT_2F *points,UINT32 count) { - This->lpVtbl->AddLines(This,points,count); -} -static __WIDL_INLINE void ID2D1SimplifiedGeometrySink_AddBeziers(ID2D1SimplifiedGeometrySink* This,const D2D1_BEZIER_SEGMENT *beziers,UINT32 count) { - This->lpVtbl->AddBeziers(This,beziers,count); -} -static __WIDL_INLINE void ID2D1SimplifiedGeometrySink_EndFigure(ID2D1SimplifiedGeometrySink* This,D2D1_FIGURE_END figureEnd) { - This->lpVtbl->EndFigure(This,figureEnd); -} -static __WIDL_INLINE HRESULT ID2D1SimplifiedGeometrySink_Close(ID2D1SimplifiedGeometrySink* This) { - return This->lpVtbl->Close(This); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1SimplifiedGeometrySink_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1TessellationSink interface - */ -#ifndef __ID2D1TessellationSink_INTERFACE_DEFINED__ -#define __ID2D1TessellationSink_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1TessellationSink, 0x2cd906c1, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906c1-12e2-11dc-9fed-001143a055f9") -ID2D1TessellationSink : public IUnknown -{ - virtual void STDMETHODCALLTYPE AddTriangles( - const D2D1_TRIANGLE *triangles, - UINT32 count) = 0; - - virtual HRESULT STDMETHODCALLTYPE Close( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1TessellationSink, 0x2cd906c1, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1TessellationSinkVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1TessellationSink *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1TessellationSink *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1TessellationSink *This); - - /*** ID2D1TessellationSink methods ***/ - void (STDMETHODCALLTYPE *AddTriangles)( - ID2D1TessellationSink *This, - const D2D1_TRIANGLE *triangles, - UINT32 count); - - HRESULT (STDMETHODCALLTYPE *Close)( - ID2D1TessellationSink *This); - - END_INTERFACE -} ID2D1TessellationSinkVtbl; - -interface ID2D1TessellationSink { - CONST_VTBL ID2D1TessellationSinkVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1TessellationSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1TessellationSink_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1TessellationSink_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TessellationSink methods ***/ -#define ID2D1TessellationSink_AddTriangles(This,triangles,count) (This)->lpVtbl->AddTriangles(This,triangles,count) -#define ID2D1TessellationSink_Close(This) (This)->lpVtbl->Close(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1TessellationSink_QueryInterface(ID2D1TessellationSink* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1TessellationSink_AddRef(ID2D1TessellationSink* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1TessellationSink_Release(ID2D1TessellationSink* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TessellationSink methods ***/ -static __WIDL_INLINE void ID2D1TessellationSink_AddTriangles(ID2D1TessellationSink* This,const D2D1_TRIANGLE *triangles,UINT32 count) { - This->lpVtbl->AddTriangles(This,triangles,count); -} -static __WIDL_INLINE HRESULT ID2D1TessellationSink_Close(ID2D1TessellationSink* This) { - return This->lpVtbl->Close(This); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1TessellationSink_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1Geometry interface - */ -#ifndef __ID2D1Geometry_INTERFACE_DEFINED__ -#define __ID2D1Geometry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Geometry, 0x2cd906a1, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a1-12e2-11dc-9fed-001143a055f9") -ID2D1Geometry : public ID2D1Resource -{ - virtual HRESULT STDMETHODCALLTYPE GetBounds( - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetWidenedBounds( - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds) = 0; - - virtual HRESULT STDMETHODCALLTYPE StrokeContainsPoint( - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains) = 0; - - virtual HRESULT STDMETHODCALLTYPE FillContainsPoint( - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains) = 0; - - virtual HRESULT STDMETHODCALLTYPE CompareWithGeometry( - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation) = 0; - - virtual HRESULT STDMETHODCALLTYPE Simplify( - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE Tessellate( - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE CombineWithGeometry( - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE Outline( - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE ComputeArea( - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area) = 0; - - virtual HRESULT STDMETHODCALLTYPE ComputeLength( - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length) = 0; - - virtual HRESULT STDMETHODCALLTYPE ComputePointAtLength( - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent) = 0; - - virtual HRESULT STDMETHODCALLTYPE Widen( - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Geometry, 0x2cd906a1, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1GeometryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Geometry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Geometry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Geometry *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Geometry *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1Geometry *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1Geometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1Geometry *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1Geometry *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1Geometry *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1Geometry *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1Geometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1Geometry *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1Geometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1Geometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1Geometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1Geometry *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1Geometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - END_INTERFACE -} ID2D1GeometryVtbl; - -interface ID2D1Geometry { - CONST_VTBL ID2D1GeometryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Geometry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Geometry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Geometry_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Geometry_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1Geometry_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1Geometry_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1Geometry_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1Geometry_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1Geometry_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1Geometry_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1Geometry_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1Geometry_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1Geometry_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1Geometry_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1Geometry_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1Geometry_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1Geometry_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Geometry_QueryInterface(ID2D1Geometry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Geometry_AddRef(ID2D1Geometry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Geometry_Release(ID2D1Geometry* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Geometry_GetFactory(ID2D1Geometry* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1Geometry_GetBounds(ID2D1Geometry* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_GetWidenedBounds(ID2D1Geometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_StrokeContainsPoint(ID2D1Geometry* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_FillContainsPoint(ID2D1Geometry* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_CompareWithGeometry(ID2D1Geometry* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_Simplify(ID2D1Geometry* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_Tessellate(ID2D1Geometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_CombineWithGeometry(ID2D1Geometry* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_Outline(ID2D1Geometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_ComputeArea(ID2D1Geometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_ComputeLength(ID2D1Geometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_ComputePointAtLength(ID2D1Geometry* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1Geometry_Widen(ID2D1Geometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1Geometry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1RectangleGeometry interface - */ -#ifndef __ID2D1RectangleGeometry_INTERFACE_DEFINED__ -#define __ID2D1RectangleGeometry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1RectangleGeometry, 0x2cd906a2, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a2-12e2-11dc-9fed-001143a055f9") -ID2D1RectangleGeometry : public ID2D1Geometry -{ - virtual void STDMETHODCALLTYPE GetRect( - D2D1_RECT_F *rect) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1RectangleGeometry, 0x2cd906a2, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1RectangleGeometryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1RectangleGeometry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1RectangleGeometry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1RectangleGeometry *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1RectangleGeometry *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1RectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1RectangleGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1RectangleGeometry *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1RectangleGeometry *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1RectangleGeometry *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1RectangleGeometry *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1RectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1RectangleGeometry *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1RectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1RectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1RectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1RectangleGeometry *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1RectangleGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1RectangleGeometry methods ***/ - void (STDMETHODCALLTYPE *GetRect)( - ID2D1RectangleGeometry *This, - D2D1_RECT_F *rect); - - END_INTERFACE -} ID2D1RectangleGeometryVtbl; - -interface ID2D1RectangleGeometry { - CONST_VTBL ID2D1RectangleGeometryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1RectangleGeometry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1RectangleGeometry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1RectangleGeometry_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1RectangleGeometry_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1RectangleGeometry_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1RectangleGeometry_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1RectangleGeometry_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1RectangleGeometry_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1RectangleGeometry_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1RectangleGeometry_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1RectangleGeometry_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1RectangleGeometry_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1RectangleGeometry_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1RectangleGeometry_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1RectangleGeometry_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1RectangleGeometry_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1RectangleGeometry_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1RectangleGeometry methods ***/ -#define ID2D1RectangleGeometry_GetRect(This,rect) (This)->lpVtbl->GetRect(This,rect) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_QueryInterface(ID2D1RectangleGeometry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1RectangleGeometry_AddRef(ID2D1RectangleGeometry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1RectangleGeometry_Release(ID2D1RectangleGeometry* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1RectangleGeometry_GetFactory(ID2D1RectangleGeometry* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_GetBounds(ID2D1RectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_GetWidenedBounds(ID2D1RectangleGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_StrokeContainsPoint(ID2D1RectangleGeometry* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_FillContainsPoint(ID2D1RectangleGeometry* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_CompareWithGeometry(ID2D1RectangleGeometry* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_Simplify(ID2D1RectangleGeometry* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_Tessellate(ID2D1RectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_CombineWithGeometry(ID2D1RectangleGeometry* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_Outline(ID2D1RectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_ComputeArea(ID2D1RectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_ComputeLength(ID2D1RectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_ComputePointAtLength(ID2D1RectangleGeometry* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1RectangleGeometry_Widen(ID2D1RectangleGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1RectangleGeometry methods ***/ -static __WIDL_INLINE void ID2D1RectangleGeometry_GetRect(ID2D1RectangleGeometry* This,D2D1_RECT_F *rect) { - This->lpVtbl->GetRect(This,rect); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1RectangleGeometry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1RoundedRectangleGeometry interface - */ -#ifndef __ID2D1RoundedRectangleGeometry_INTERFACE_DEFINED__ -#define __ID2D1RoundedRectangleGeometry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1RoundedRectangleGeometry, 0x2cd906a3, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a3-12e2-11dc-9fed-001143a055f9") -ID2D1RoundedRectangleGeometry : public ID2D1Geometry -{ - virtual void STDMETHODCALLTYPE GetRoundedRect( - D2D1_ROUNDED_RECT *rect) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1RoundedRectangleGeometry, 0x2cd906a3, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1RoundedRectangleGeometryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1RoundedRectangleGeometry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1RoundedRectangleGeometry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1RoundedRectangleGeometry *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1RoundedRectangleGeometry *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1RoundedRectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1RoundedRectangleGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1RoundedRectangleGeometry *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1RoundedRectangleGeometry *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1RoundedRectangleGeometry *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1RoundedRectangleGeometry *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1RoundedRectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1RoundedRectangleGeometry *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1RoundedRectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1RoundedRectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1RoundedRectangleGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1RoundedRectangleGeometry *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1RoundedRectangleGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1RoundedRectangleGeometry methods ***/ - void (STDMETHODCALLTYPE *GetRoundedRect)( - ID2D1RoundedRectangleGeometry *This, - D2D1_ROUNDED_RECT *rect); - - END_INTERFACE -} ID2D1RoundedRectangleGeometryVtbl; - -interface ID2D1RoundedRectangleGeometry { - CONST_VTBL ID2D1RoundedRectangleGeometryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1RoundedRectangleGeometry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1RoundedRectangleGeometry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1RoundedRectangleGeometry_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1RoundedRectangleGeometry_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1RoundedRectangleGeometry_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1RoundedRectangleGeometry_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1RoundedRectangleGeometry_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1RoundedRectangleGeometry_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1RoundedRectangleGeometry_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1RoundedRectangleGeometry_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1RoundedRectangleGeometry_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1RoundedRectangleGeometry_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1RoundedRectangleGeometry_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1RoundedRectangleGeometry_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1RoundedRectangleGeometry_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1RoundedRectangleGeometry_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1RoundedRectangleGeometry_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1RoundedRectangleGeometry methods ***/ -#define ID2D1RoundedRectangleGeometry_GetRoundedRect(This,rect) (This)->lpVtbl->GetRoundedRect(This,rect) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_QueryInterface(ID2D1RoundedRectangleGeometry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1RoundedRectangleGeometry_AddRef(ID2D1RoundedRectangleGeometry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1RoundedRectangleGeometry_Release(ID2D1RoundedRectangleGeometry* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1RoundedRectangleGeometry_GetFactory(ID2D1RoundedRectangleGeometry* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_GetBounds(ID2D1RoundedRectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_GetWidenedBounds(ID2D1RoundedRectangleGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_StrokeContainsPoint(ID2D1RoundedRectangleGeometry* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_FillContainsPoint(ID2D1RoundedRectangleGeometry* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_CompareWithGeometry(ID2D1RoundedRectangleGeometry* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_Simplify(ID2D1RoundedRectangleGeometry* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_Tessellate(ID2D1RoundedRectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_CombineWithGeometry(ID2D1RoundedRectangleGeometry* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_Outline(ID2D1RoundedRectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_ComputeArea(ID2D1RoundedRectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_ComputeLength(ID2D1RoundedRectangleGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_ComputePointAtLength(ID2D1RoundedRectangleGeometry* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1RoundedRectangleGeometry_Widen(ID2D1RoundedRectangleGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1RoundedRectangleGeometry methods ***/ -static __WIDL_INLINE void ID2D1RoundedRectangleGeometry_GetRoundedRect(ID2D1RoundedRectangleGeometry* This,D2D1_ROUNDED_RECT *rect) { - This->lpVtbl->GetRoundedRect(This,rect); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1RoundedRectangleGeometry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1EllipseGeometry interface - */ -#ifndef __ID2D1EllipseGeometry_INTERFACE_DEFINED__ -#define __ID2D1EllipseGeometry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1EllipseGeometry, 0x2cd906a4, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a4-12e2-11dc-9fed-001143a055f9") -ID2D1EllipseGeometry : public ID2D1Geometry -{ - virtual void STDMETHODCALLTYPE GetEllipse( - D2D1_ELLIPSE *ellipse) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1EllipseGeometry, 0x2cd906a4, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1EllipseGeometryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1EllipseGeometry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1EllipseGeometry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1EllipseGeometry *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1EllipseGeometry *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1EllipseGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1EllipseGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1EllipseGeometry *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1EllipseGeometry *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1EllipseGeometry *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1EllipseGeometry *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1EllipseGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1EllipseGeometry *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1EllipseGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1EllipseGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1EllipseGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1EllipseGeometry *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1EllipseGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1EllipseGeometry methods ***/ - void (STDMETHODCALLTYPE *GetEllipse)( - ID2D1EllipseGeometry *This, - D2D1_ELLIPSE *ellipse); - - END_INTERFACE -} ID2D1EllipseGeometryVtbl; - -interface ID2D1EllipseGeometry { - CONST_VTBL ID2D1EllipseGeometryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1EllipseGeometry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1EllipseGeometry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1EllipseGeometry_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1EllipseGeometry_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1EllipseGeometry_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1EllipseGeometry_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1EllipseGeometry_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1EllipseGeometry_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1EllipseGeometry_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1EllipseGeometry_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1EllipseGeometry_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1EllipseGeometry_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1EllipseGeometry_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1EllipseGeometry_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1EllipseGeometry_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1EllipseGeometry_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1EllipseGeometry_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1EllipseGeometry methods ***/ -#define ID2D1EllipseGeometry_GetEllipse(This,ellipse) (This)->lpVtbl->GetEllipse(This,ellipse) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_QueryInterface(ID2D1EllipseGeometry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1EllipseGeometry_AddRef(ID2D1EllipseGeometry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1EllipseGeometry_Release(ID2D1EllipseGeometry* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1EllipseGeometry_GetFactory(ID2D1EllipseGeometry* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_GetBounds(ID2D1EllipseGeometry* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_GetWidenedBounds(ID2D1EllipseGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_StrokeContainsPoint(ID2D1EllipseGeometry* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_FillContainsPoint(ID2D1EllipseGeometry* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_CompareWithGeometry(ID2D1EllipseGeometry* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_Simplify(ID2D1EllipseGeometry* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_Tessellate(ID2D1EllipseGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_CombineWithGeometry(ID2D1EllipseGeometry* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_Outline(ID2D1EllipseGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_ComputeArea(ID2D1EllipseGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_ComputeLength(ID2D1EllipseGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_ComputePointAtLength(ID2D1EllipseGeometry* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1EllipseGeometry_Widen(ID2D1EllipseGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1EllipseGeometry methods ***/ -static __WIDL_INLINE void ID2D1EllipseGeometry_GetEllipse(ID2D1EllipseGeometry* This,D2D1_ELLIPSE *ellipse) { - This->lpVtbl->GetEllipse(This,ellipse); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1EllipseGeometry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1GeometryGroup interface - */ -#ifndef __ID2D1GeometryGroup_INTERFACE_DEFINED__ -#define __ID2D1GeometryGroup_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1GeometryGroup, 0x2cd906a6, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a6-12e2-11dc-9fed-001143a055f9") -ID2D1GeometryGroup : public ID2D1Geometry -{ - virtual D2D1_FILL_MODE STDMETHODCALLTYPE GetFillMode( - ) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetSourceGeometryCount( - ) = 0; - - virtual void STDMETHODCALLTYPE GetSourceGeometries( - ID2D1Geometry **geometry, - UINT32 geometry_count) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GeometryGroup, 0x2cd906a6, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1GeometryGroupVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GeometryGroup *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GeometryGroup *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GeometryGroup *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1GeometryGroup *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1GeometryGroup *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1GeometryGroup *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1GeometryGroup *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1GeometryGroup *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1GeometryGroup *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1GeometryGroup *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1GeometryGroup *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1GeometryGroup *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1GeometryGroup *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1GeometryGroup *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1GeometryGroup *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1GeometryGroup *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1GeometryGroup *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1GeometryGroup methods ***/ - D2D1_FILL_MODE (STDMETHODCALLTYPE *GetFillMode)( - ID2D1GeometryGroup *This); - - UINT32 (STDMETHODCALLTYPE *GetSourceGeometryCount)( - ID2D1GeometryGroup *This); - - void (STDMETHODCALLTYPE *GetSourceGeometries)( - ID2D1GeometryGroup *This, - ID2D1Geometry **geometry, - UINT32 geometry_count); - - END_INTERFACE -} ID2D1GeometryGroupVtbl; - -interface ID2D1GeometryGroup { - CONST_VTBL ID2D1GeometryGroupVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GeometryGroup_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GeometryGroup_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GeometryGroup_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1GeometryGroup_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1GeometryGroup_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1GeometryGroup_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1GeometryGroup_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1GeometryGroup_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1GeometryGroup_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1GeometryGroup_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1GeometryGroup_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1GeometryGroup_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1GeometryGroup_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1GeometryGroup_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1GeometryGroup_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1GeometryGroup_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1GeometryGroup_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1GeometryGroup methods ***/ -#define ID2D1GeometryGroup_GetFillMode(This) (This)->lpVtbl->GetFillMode(This) -#define ID2D1GeometryGroup_GetSourceGeometryCount(This) (This)->lpVtbl->GetSourceGeometryCount(This) -#define ID2D1GeometryGroup_GetSourceGeometries(This,geometry,geometry_count) (This)->lpVtbl->GetSourceGeometries(This,geometry,geometry_count) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_QueryInterface(ID2D1GeometryGroup* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GeometryGroup_AddRef(ID2D1GeometryGroup* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GeometryGroup_Release(ID2D1GeometryGroup* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1GeometryGroup_GetFactory(ID2D1GeometryGroup* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_GetBounds(ID2D1GeometryGroup* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_GetWidenedBounds(ID2D1GeometryGroup* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_StrokeContainsPoint(ID2D1GeometryGroup* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_FillContainsPoint(ID2D1GeometryGroup* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_CompareWithGeometry(ID2D1GeometryGroup* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_Simplify(ID2D1GeometryGroup* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_Tessellate(ID2D1GeometryGroup* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_CombineWithGeometry(ID2D1GeometryGroup* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_Outline(ID2D1GeometryGroup* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_ComputeArea(ID2D1GeometryGroup* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_ComputeLength(ID2D1GeometryGroup* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_ComputePointAtLength(ID2D1GeometryGroup* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1GeometryGroup_Widen(ID2D1GeometryGroup* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1GeometryGroup methods ***/ -static __WIDL_INLINE D2D1_FILL_MODE ID2D1GeometryGroup_GetFillMode(ID2D1GeometryGroup* This) { - return This->lpVtbl->GetFillMode(This); -} -static __WIDL_INLINE UINT32 ID2D1GeometryGroup_GetSourceGeometryCount(ID2D1GeometryGroup* This) { - return This->lpVtbl->GetSourceGeometryCount(This); -} -static __WIDL_INLINE void ID2D1GeometryGroup_GetSourceGeometries(ID2D1GeometryGroup* This,ID2D1Geometry **geometry,UINT32 geometry_count) { - This->lpVtbl->GetSourceGeometries(This,geometry,geometry_count); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1GeometryGroup_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1TransformedGeometry interface - */ -#ifndef __ID2D1TransformedGeometry_INTERFACE_DEFINED__ -#define __ID2D1TransformedGeometry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1TransformedGeometry, 0x2cd906bb, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906bb-12e2-11dc-9fed-001143a055f9") -ID2D1TransformedGeometry : public ID2D1Geometry -{ - virtual void STDMETHODCALLTYPE GetSourceGeometry( - ID2D1Geometry **geometry) = 0; - - virtual void STDMETHODCALLTYPE GetTransform( - D2D1_MATRIX_3X2_F *transform) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1TransformedGeometry, 0x2cd906bb, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1TransformedGeometryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1TransformedGeometry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1TransformedGeometry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1TransformedGeometry *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1TransformedGeometry *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1TransformedGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1TransformedGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1TransformedGeometry *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1TransformedGeometry *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1TransformedGeometry *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1TransformedGeometry *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1TransformedGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1TransformedGeometry *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1TransformedGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1TransformedGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1TransformedGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1TransformedGeometry *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1TransformedGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1TransformedGeometry methods ***/ - void (STDMETHODCALLTYPE *GetSourceGeometry)( - ID2D1TransformedGeometry *This, - ID2D1Geometry **geometry); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1TransformedGeometry *This, - D2D1_MATRIX_3X2_F *transform); - - END_INTERFACE -} ID2D1TransformedGeometryVtbl; - -interface ID2D1TransformedGeometry { - CONST_VTBL ID2D1TransformedGeometryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1TransformedGeometry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1TransformedGeometry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1TransformedGeometry_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1TransformedGeometry_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1TransformedGeometry_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1TransformedGeometry_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1TransformedGeometry_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1TransformedGeometry_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1TransformedGeometry_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1TransformedGeometry_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1TransformedGeometry_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1TransformedGeometry_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1TransformedGeometry_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1TransformedGeometry_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1TransformedGeometry_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1TransformedGeometry_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1TransformedGeometry_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1TransformedGeometry methods ***/ -#define ID2D1TransformedGeometry_GetSourceGeometry(This,geometry) (This)->lpVtbl->GetSourceGeometry(This,geometry) -#define ID2D1TransformedGeometry_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_QueryInterface(ID2D1TransformedGeometry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1TransformedGeometry_AddRef(ID2D1TransformedGeometry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1TransformedGeometry_Release(ID2D1TransformedGeometry* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1TransformedGeometry_GetFactory(ID2D1TransformedGeometry* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_GetBounds(ID2D1TransformedGeometry* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_GetWidenedBounds(ID2D1TransformedGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_StrokeContainsPoint(ID2D1TransformedGeometry* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_FillContainsPoint(ID2D1TransformedGeometry* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_CompareWithGeometry(ID2D1TransformedGeometry* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_Simplify(ID2D1TransformedGeometry* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_Tessellate(ID2D1TransformedGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_CombineWithGeometry(ID2D1TransformedGeometry* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_Outline(ID2D1TransformedGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_ComputeArea(ID2D1TransformedGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_ComputeLength(ID2D1TransformedGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_ComputePointAtLength(ID2D1TransformedGeometry* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1TransformedGeometry_Widen(ID2D1TransformedGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1TransformedGeometry methods ***/ -static __WIDL_INLINE void ID2D1TransformedGeometry_GetSourceGeometry(ID2D1TransformedGeometry* This,ID2D1Geometry **geometry) { - This->lpVtbl->GetSourceGeometry(This,geometry); -} -static __WIDL_INLINE void ID2D1TransformedGeometry_GetTransform(ID2D1TransformedGeometry* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1TransformedGeometry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1GeometrySink interface - */ -#ifndef __ID2D1GeometrySink_INTERFACE_DEFINED__ -#define __ID2D1GeometrySink_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1GeometrySink, 0x2cd9069f, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd9069f-12e2-11dc-9fed-001143a055f9") -ID2D1GeometrySink : public ID2D1SimplifiedGeometrySink -{ - virtual void STDMETHODCALLTYPE AddLine( - D2D1_POINT_2F point) = 0; - - virtual void STDMETHODCALLTYPE AddBezier( - const D2D1_BEZIER_SEGMENT *bezier) = 0; - - virtual void STDMETHODCALLTYPE AddQuadraticBezier( - const D2D1_QUADRATIC_BEZIER_SEGMENT *bezier) = 0; - - virtual void STDMETHODCALLTYPE AddQuadraticBeziers( - const D2D1_QUADRATIC_BEZIER_SEGMENT *beziers, - UINT32 bezier_count) = 0; - - virtual void STDMETHODCALLTYPE AddArc( - const D2D1_ARC_SEGMENT *arc) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GeometrySink, 0x2cd9069f, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1GeometrySinkVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GeometrySink *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GeometrySink *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GeometrySink *This); - - /*** ID2D1SimplifiedGeometrySink methods ***/ - void (STDMETHODCALLTYPE *SetFillMode)( - ID2D1GeometrySink *This, - D2D1_FILL_MODE mode); - - void (STDMETHODCALLTYPE *SetSegmentFlags)( - ID2D1GeometrySink *This, - D2D1_PATH_SEGMENT vertexFlags); - - void (STDMETHODCALLTYPE *BeginFigure)( - ID2D1GeometrySink *This, - D2D1_POINT_2F startPoint, - D2D1_FIGURE_BEGIN figureBegin); - - void (STDMETHODCALLTYPE *AddLines)( - ID2D1GeometrySink *This, - const D2D1_POINT_2F *points, - UINT32 count); - - void (STDMETHODCALLTYPE *AddBeziers)( - ID2D1GeometrySink *This, - const D2D1_BEZIER_SEGMENT *beziers, - UINT32 count); - - void (STDMETHODCALLTYPE *EndFigure)( - ID2D1GeometrySink *This, - D2D1_FIGURE_END figureEnd); - - HRESULT (STDMETHODCALLTYPE *Close)( - ID2D1GeometrySink *This); - - /*** ID2D1GeometrySink methods ***/ - void (STDMETHODCALLTYPE *AddLine)( - ID2D1GeometrySink *This, - D2D1_POINT_2F point); - - void (STDMETHODCALLTYPE *AddBezier)( - ID2D1GeometrySink *This, - const D2D1_BEZIER_SEGMENT *bezier); - - void (STDMETHODCALLTYPE *AddQuadraticBezier)( - ID2D1GeometrySink *This, - const D2D1_QUADRATIC_BEZIER_SEGMENT *bezier); - - void (STDMETHODCALLTYPE *AddQuadraticBeziers)( - ID2D1GeometrySink *This, - const D2D1_QUADRATIC_BEZIER_SEGMENT *beziers, - UINT32 bezier_count); - - void (STDMETHODCALLTYPE *AddArc)( - ID2D1GeometrySink *This, - const D2D1_ARC_SEGMENT *arc); - - END_INTERFACE -} ID2D1GeometrySinkVtbl; - -interface ID2D1GeometrySink { - CONST_VTBL ID2D1GeometrySinkVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GeometrySink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GeometrySink_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GeometrySink_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1SimplifiedGeometrySink methods ***/ -#define ID2D1GeometrySink_SetFillMode(This,mode) (This)->lpVtbl->SetFillMode(This,mode) -#define ID2D1GeometrySink_SetSegmentFlags(This,vertexFlags) (This)->lpVtbl->SetSegmentFlags(This,vertexFlags) -#define ID2D1GeometrySink_BeginFigure(This,startPoint,figureBegin) (This)->lpVtbl->BeginFigure(This,startPoint,figureBegin) -#define ID2D1GeometrySink_AddLines(This,points,count) (This)->lpVtbl->AddLines(This,points,count) -#define ID2D1GeometrySink_AddBeziers(This,beziers,count) (This)->lpVtbl->AddBeziers(This,beziers,count) -#define ID2D1GeometrySink_EndFigure(This,figureEnd) (This)->lpVtbl->EndFigure(This,figureEnd) -#define ID2D1GeometrySink_Close(This) (This)->lpVtbl->Close(This) -/*** ID2D1GeometrySink methods ***/ -#define ID2D1GeometrySink_AddLine(This,point) (This)->lpVtbl->AddLine(This,point) -#define ID2D1GeometrySink_AddBezier(This,bezier) (This)->lpVtbl->AddBezier(This,bezier) -#define ID2D1GeometrySink_AddQuadraticBezier(This,bezier) (This)->lpVtbl->AddQuadraticBezier(This,bezier) -#define ID2D1GeometrySink_AddQuadraticBeziers(This,beziers,bezier_count) (This)->lpVtbl->AddQuadraticBeziers(This,beziers,bezier_count) -#define ID2D1GeometrySink_AddArc(This,arc) (This)->lpVtbl->AddArc(This,arc) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GeometrySink_QueryInterface(ID2D1GeometrySink* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GeometrySink_AddRef(ID2D1GeometrySink* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GeometrySink_Release(ID2D1GeometrySink* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1SimplifiedGeometrySink methods ***/ -static __WIDL_INLINE void ID2D1GeometrySink_SetFillMode(ID2D1GeometrySink* This,D2D1_FILL_MODE mode) { - This->lpVtbl->SetFillMode(This,mode); -} -static __WIDL_INLINE void ID2D1GeometrySink_SetSegmentFlags(ID2D1GeometrySink* This,D2D1_PATH_SEGMENT vertexFlags) { - This->lpVtbl->SetSegmentFlags(This,vertexFlags); -} -static __WIDL_INLINE void ID2D1GeometrySink_BeginFigure(ID2D1GeometrySink* This,D2D1_POINT_2F startPoint,D2D1_FIGURE_BEGIN figureBegin) { - This->lpVtbl->BeginFigure(This,startPoint,figureBegin); -} -static __WIDL_INLINE void ID2D1GeometrySink_AddLines(ID2D1GeometrySink* This,const D2D1_POINT_2F *points,UINT32 count) { - This->lpVtbl->AddLines(This,points,count); -} -static __WIDL_INLINE void ID2D1GeometrySink_AddBeziers(ID2D1GeometrySink* This,const D2D1_BEZIER_SEGMENT *beziers,UINT32 count) { - This->lpVtbl->AddBeziers(This,beziers,count); -} -static __WIDL_INLINE void ID2D1GeometrySink_EndFigure(ID2D1GeometrySink* This,D2D1_FIGURE_END figureEnd) { - This->lpVtbl->EndFigure(This,figureEnd); -} -static __WIDL_INLINE HRESULT ID2D1GeometrySink_Close(ID2D1GeometrySink* This) { - return This->lpVtbl->Close(This); -} -/*** ID2D1GeometrySink methods ***/ -static __WIDL_INLINE void ID2D1GeometrySink_AddLine(ID2D1GeometrySink* This,D2D1_POINT_2F point) { - This->lpVtbl->AddLine(This,point); -} -static __WIDL_INLINE void ID2D1GeometrySink_AddBezier(ID2D1GeometrySink* This,const D2D1_BEZIER_SEGMENT *bezier) { - This->lpVtbl->AddBezier(This,bezier); -} -static __WIDL_INLINE void ID2D1GeometrySink_AddQuadraticBezier(ID2D1GeometrySink* This,const D2D1_QUADRATIC_BEZIER_SEGMENT *bezier) { - This->lpVtbl->AddQuadraticBezier(This,bezier); -} -static __WIDL_INLINE void ID2D1GeometrySink_AddQuadraticBeziers(ID2D1GeometrySink* This,const D2D1_QUADRATIC_BEZIER_SEGMENT *beziers,UINT32 bezier_count) { - This->lpVtbl->AddQuadraticBeziers(This,beziers,bezier_count); -} -static __WIDL_INLINE void ID2D1GeometrySink_AddArc(ID2D1GeometrySink* This,const D2D1_ARC_SEGMENT *arc) { - This->lpVtbl->AddArc(This,arc); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1GeometrySink_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1PathGeometry interface - */ -#ifndef __ID2D1PathGeometry_INTERFACE_DEFINED__ -#define __ID2D1PathGeometry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1PathGeometry, 0x2cd906a5, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a5-12e2-11dc-9fed-001143a055f9") -ID2D1PathGeometry : public ID2D1Geometry -{ - virtual HRESULT STDMETHODCALLTYPE Open( - ID2D1GeometrySink **sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE Stream( - ID2D1GeometrySink *sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetSegmentCount( - UINT32 *count) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetFigureCount( - UINT32 *count) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1PathGeometry, 0x2cd906a5, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1PathGeometryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1PathGeometry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1PathGeometry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1PathGeometry *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1PathGeometry *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1PathGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1PathGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1PathGeometry *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1PathGeometry *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1PathGeometry *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1PathGeometry *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1PathGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1PathGeometry *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1PathGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1PathGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1PathGeometry *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1PathGeometry *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1PathGeometry *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1PathGeometry methods ***/ - HRESULT (STDMETHODCALLTYPE *Open)( - ID2D1PathGeometry *This, - ID2D1GeometrySink **sink); - - HRESULT (STDMETHODCALLTYPE *Stream)( - ID2D1PathGeometry *This, - ID2D1GeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *GetSegmentCount)( - ID2D1PathGeometry *This, - UINT32 *count); - - HRESULT (STDMETHODCALLTYPE *GetFigureCount)( - ID2D1PathGeometry *This, - UINT32 *count); - - END_INTERFACE -} ID2D1PathGeometryVtbl; - -interface ID2D1PathGeometry { - CONST_VTBL ID2D1PathGeometryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1PathGeometry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1PathGeometry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1PathGeometry_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1PathGeometry_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1PathGeometry_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1PathGeometry_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1PathGeometry_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1PathGeometry_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1PathGeometry_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1PathGeometry_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1PathGeometry_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1PathGeometry_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1PathGeometry_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1PathGeometry_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1PathGeometry_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1PathGeometry_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1PathGeometry_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1PathGeometry methods ***/ -#define ID2D1PathGeometry_Open(This,sink) (This)->lpVtbl->Open(This,sink) -#define ID2D1PathGeometry_Stream(This,sink) (This)->lpVtbl->Stream(This,sink) -#define ID2D1PathGeometry_GetSegmentCount(This,count) (This)->lpVtbl->GetSegmentCount(This,count) -#define ID2D1PathGeometry_GetFigureCount(This,count) (This)->lpVtbl->GetFigureCount(This,count) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry_QueryInterface(ID2D1PathGeometry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1PathGeometry_AddRef(ID2D1PathGeometry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1PathGeometry_Release(ID2D1PathGeometry* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1PathGeometry_GetFactory(ID2D1PathGeometry* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry_GetBounds(ID2D1PathGeometry* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_GetWidenedBounds(ID2D1PathGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_StrokeContainsPoint(ID2D1PathGeometry* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_FillContainsPoint(ID2D1PathGeometry* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_CompareWithGeometry(ID2D1PathGeometry* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_Simplify(ID2D1PathGeometry* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_Tessellate(ID2D1PathGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_CombineWithGeometry(ID2D1PathGeometry* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_Outline(ID2D1PathGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_ComputeArea(ID2D1PathGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_ComputeLength(ID2D1PathGeometry* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_ComputePointAtLength(ID2D1PathGeometry* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_Widen(ID2D1PathGeometry* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1PathGeometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry_Open(ID2D1PathGeometry* This,ID2D1GeometrySink **sink) { - return This->lpVtbl->Open(This,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_Stream(ID2D1PathGeometry* This,ID2D1GeometrySink *sink) { - return This->lpVtbl->Stream(This,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_GetSegmentCount(ID2D1PathGeometry* This,UINT32 *count) { - return This->lpVtbl->GetSegmentCount(This,count); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry_GetFigureCount(ID2D1PathGeometry* This,UINT32 *count) { - return This->lpVtbl->GetFigureCount(This,count); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1PathGeometry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1DrawingStateBlock interface - */ -#ifndef __ID2D1DrawingStateBlock_INTERFACE_DEFINED__ -#define __ID2D1DrawingStateBlock_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1DrawingStateBlock, 0x28506e39, 0xebf6, 0x46a1, 0xbb,0x47, 0xfd,0x85,0x56,0x5a,0xb9,0x57); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("28506e39-ebf6-46a1-bb47-fd85565ab957") -ID2D1DrawingStateBlock : public ID2D1Resource -{ - virtual void STDMETHODCALLTYPE GetDescription( - D2D1_DRAWING_STATE_DESCRIPTION *desc) = 0; - - virtual void STDMETHODCALLTYPE SetDescription( - const D2D1_DRAWING_STATE_DESCRIPTION *desc) = 0; - - virtual void STDMETHODCALLTYPE SetTextRenderingParams( - IDWriteRenderingParams *text_rendering_params) = 0; - - virtual void STDMETHODCALLTYPE GetTextRenderingParams( - IDWriteRenderingParams **text_rendering_params) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1DrawingStateBlock, 0x28506e39, 0xebf6, 0x46a1, 0xbb,0x47, 0xfd,0x85,0x56,0x5a,0xb9,0x57) -#endif -#else -typedef struct ID2D1DrawingStateBlockVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1DrawingStateBlock *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1DrawingStateBlock *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1DrawingStateBlock *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1DrawingStateBlock *This, - ID2D1Factory **factory); - - /*** ID2D1DrawingStateBlock methods ***/ - void (STDMETHODCALLTYPE *GetDescription)( - ID2D1DrawingStateBlock *This, - D2D1_DRAWING_STATE_DESCRIPTION *desc); - - void (STDMETHODCALLTYPE *SetDescription)( - ID2D1DrawingStateBlock *This, - const D2D1_DRAWING_STATE_DESCRIPTION *desc); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1DrawingStateBlock *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1DrawingStateBlock *This, - IDWriteRenderingParams **text_rendering_params); - - END_INTERFACE -} ID2D1DrawingStateBlockVtbl; - -interface ID2D1DrawingStateBlock { - CONST_VTBL ID2D1DrawingStateBlockVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1DrawingStateBlock_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1DrawingStateBlock_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1DrawingStateBlock_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1DrawingStateBlock_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1DrawingStateBlock methods ***/ -#define ID2D1DrawingStateBlock_GetDescription(This,desc) (This)->lpVtbl->GetDescription(This,desc) -#define ID2D1DrawingStateBlock_SetDescription(This,desc) (This)->lpVtbl->SetDescription(This,desc) -#define ID2D1DrawingStateBlock_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1DrawingStateBlock_GetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->GetTextRenderingParams(This,text_rendering_params) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawingStateBlock_QueryInterface(ID2D1DrawingStateBlock* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1DrawingStateBlock_AddRef(ID2D1DrawingStateBlock* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1DrawingStateBlock_Release(ID2D1DrawingStateBlock* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1DrawingStateBlock_GetFactory(ID2D1DrawingStateBlock* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1DrawingStateBlock methods ***/ -static __WIDL_INLINE void ID2D1DrawingStateBlock_GetDescription(ID2D1DrawingStateBlock* This,D2D1_DRAWING_STATE_DESCRIPTION *desc) { - This->lpVtbl->GetDescription(This,desc); -} -static __WIDL_INLINE void ID2D1DrawingStateBlock_SetDescription(ID2D1DrawingStateBlock* This,const D2D1_DRAWING_STATE_DESCRIPTION *desc) { - This->lpVtbl->SetDescription(This,desc); -} -static __WIDL_INLINE void ID2D1DrawingStateBlock_SetTextRenderingParams(ID2D1DrawingStateBlock* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1DrawingStateBlock_GetTextRenderingParams(ID2D1DrawingStateBlock* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1DrawingStateBlock_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1Image interface - */ -#ifndef __ID2D1Image_INTERFACE_DEFINED__ -#define __ID2D1Image_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Image, 0x65019f75, 0x8da2, 0x497c, 0xb3,0x2c, 0xdf,0xa3,0x4e,0x48,0xed,0xe6); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("65019f75-8da2-497c-b32c-dfa34e48ede6") -ID2D1Image : public ID2D1Resource -{ -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Image, 0x65019f75, 0x8da2, 0x497c, 0xb3,0x2c, 0xdf,0xa3,0x4e,0x48,0xed,0xe6) -#endif -#else -typedef struct ID2D1ImageVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Image *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Image *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Image *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Image *This, - ID2D1Factory **factory); - - END_INTERFACE -} ID2D1ImageVtbl; - -interface ID2D1Image { - CONST_VTBL ID2D1ImageVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Image_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Image_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Image_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Image_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Image_QueryInterface(ID2D1Image* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Image_AddRef(ID2D1Image* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Image_Release(ID2D1Image* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Image_GetFactory(ID2D1Image* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1Image_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1Bitmap interface - */ -#ifndef __ID2D1Bitmap_INTERFACE_DEFINED__ -#define __ID2D1Bitmap_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Bitmap, 0xa2296057, 0xea42, 0x4099, 0x98,0x3b, 0x53,0x9f,0xb6,0x50,0x54,0x26); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("a2296057-ea42-4099-983b-539fb6505426") -ID2D1Bitmap : public ID2D1Image -{ -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize( - D2D1_SIZE_F *__ret) = 0; - D2D1_SIZE_F STDMETHODCALLTYPE GetSize( - ) - { - D2D1_SIZE_F __ret; - return *GetSize(&__ret); + void SetTransform(const D2D1_MATRIX_3X2_F &transform) { + SetTransform(&transform); } -#else - virtual D2D1_SIZE_F STDMETHODCALLTYPE GetSize( - ) = 0; -#endif - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_SIZE_U* STDMETHODCALLTYPE GetPixelSize( - D2D1_SIZE_U *__ret) = 0; - D2D1_SIZE_U STDMETHODCALLTYPE GetPixelSize( - ) - { - D2D1_SIZE_U __ret; - return *GetPixelSize(&__ret); - } -#else - virtual D2D1_SIZE_U STDMETHODCALLTYPE GetPixelSize( - ) = 0; -#endif - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_PIXEL_FORMAT* STDMETHODCALLTYPE GetPixelFormat( - D2D1_PIXEL_FORMAT *__ret) = 0; - D2D1_PIXEL_FORMAT STDMETHODCALLTYPE GetPixelFormat( - ) - { - D2D1_PIXEL_FORMAT __ret; - return *GetPixelFormat(&__ret); - } -#else - virtual D2D1_PIXEL_FORMAT STDMETHODCALLTYPE GetPixelFormat( - ) = 0; -#endif - - virtual void STDMETHODCALLTYPE GetDpi( - float *dpi_x, - float *dpi_y) = 0; - - virtual HRESULT STDMETHODCALLTYPE CopyFromBitmap( - const D2D1_POINT_2U *dst_point, - ID2D1Bitmap *bitmap, - const D2D1_RECT_U *src_rect) = 0; - - virtual HRESULT STDMETHODCALLTYPE CopyFromRenderTarget( - const D2D1_POINT_2U *dst_point, - ID2D1RenderTarget *render_target, - const D2D1_RECT_U *src_rect) = 0; - - virtual HRESULT STDMETHODCALLTYPE CopyFromMemory( - const D2D1_RECT_U *dst_rect, - const void *src_data, - UINT32 pitch) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Bitmap, 0xa2296057, 0xea42, 0x4099, 0x98,0x3b, 0x53,0x9f,0xb6,0x50,0x54,0x26) -#endif -#else -typedef struct ID2D1BitmapVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Bitmap *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Bitmap *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Bitmap *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Bitmap *This, - ID2D1Factory **factory); - - /*** ID2D1Bitmap methods ***/ - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1Bitmap *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1Bitmap *This, - D2D1_SIZE_U *__ret); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1Bitmap *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1Bitmap *This, - float *dpi_x, - float *dpi_y); - - HRESULT (STDMETHODCALLTYPE *CopyFromBitmap)( - ID2D1Bitmap *This, - const D2D1_POINT_2U *dst_point, - ID2D1Bitmap *bitmap, - const D2D1_RECT_U *src_rect); - - HRESULT (STDMETHODCALLTYPE *CopyFromRenderTarget)( - ID2D1Bitmap *This, - const D2D1_POINT_2U *dst_point, - ID2D1RenderTarget *render_target, - const D2D1_RECT_U *src_rect); - - HRESULT (STDMETHODCALLTYPE *CopyFromMemory)( - ID2D1Bitmap *This, - const D2D1_RECT_U *dst_rect, - const void *src_data, - UINT32 pitch); - - END_INTERFACE -} ID2D1BitmapVtbl; - -interface ID2D1Bitmap { - CONST_VTBL ID2D1BitmapVtbl* lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Bitmap_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Bitmap_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Bitmap_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Bitmap_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Bitmap methods ***/ -#define ID2D1Bitmap_GetSize(This) ID2D1Bitmap_GetSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1Bitmap_GetPixelSize(This) ID2D1Bitmap_GetPixelSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1Bitmap_GetPixelFormat(This) ID2D1Bitmap_GetPixelFormat_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1Bitmap_GetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDpi(This,dpi_x,dpi_y) -#define ID2D1Bitmap_CopyFromBitmap(This,dst_point,bitmap,src_rect) (This)->lpVtbl->CopyFromBitmap(This,dst_point,bitmap,src_rect) -#define ID2D1Bitmap_CopyFromRenderTarget(This,dst_point,render_target,src_rect) (This)->lpVtbl->CopyFromRenderTarget(This,dst_point,render_target,src_rect) -#define ID2D1Bitmap_CopyFromMemory(This,dst_rect,src_data,pitch) (This)->lpVtbl->CopyFromMemory(This,dst_rect,src_data,pitch) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Bitmap_QueryInterface(ID2D1Bitmap* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Bitmap_AddRef(ID2D1Bitmap* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Bitmap_Release(ID2D1Bitmap* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Bitmap_GetFactory(ID2D1Bitmap* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Bitmap methods ***/ -static __WIDL_INLINE D2D1_SIZE_F ID2D1Bitmap_GetSize(ID2D1Bitmap* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1Bitmap_GetPixelSize(ID2D1Bitmap* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1Bitmap_GetPixelFormat(ID2D1Bitmap* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1Bitmap_GetDpi(ID2D1Bitmap* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap_CopyFromBitmap(ID2D1Bitmap* This,const D2D1_POINT_2U *dst_point,ID2D1Bitmap *bitmap,const D2D1_RECT_U *src_rect) { - return This->lpVtbl->CopyFromBitmap(This,dst_point,bitmap,src_rect); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap_CopyFromRenderTarget(ID2D1Bitmap* This,const D2D1_POINT_2U *dst_point,ID2D1RenderTarget *render_target,const D2D1_RECT_U *src_rect) { - return This->lpVtbl->CopyFromRenderTarget(This,dst_point,render_target,src_rect); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap_CopyFromMemory(ID2D1Bitmap* This,const D2D1_RECT_U *dst_rect,const void *src_data,UINT32 pitch) { - return This->lpVtbl->CopyFromMemory(This,dst_rect,src_data,pitch); -} -#endif -#endif -#endif - - -#endif /* __ID2D1Bitmap_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1Brush interface - */ -#ifndef __ID2D1Brush_INTERFACE_DEFINED__ -#define __ID2D1Brush_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Brush, 0x2cd906a8, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a8-12e2-11dc-9fed-001143a055f9") -ID2D1Brush : public ID2D1Resource -{ - virtual void STDMETHODCALLTYPE SetOpacity( - float opacity) = 0; - - virtual void STDMETHODCALLTYPE SetTransform( - const D2D1_MATRIX_3X2_F *transform) = 0; - - virtual float STDMETHODCALLTYPE GetOpacity( - ) = 0; - - virtual void STDMETHODCALLTYPE GetTransform( - D2D1_MATRIX_3X2_F *transform) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Brush, 0x2cd906a8, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else typedef struct ID2D1BrushVtbl { - BEGIN_INTERFACE + ID2D1ResourceVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Brush *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Brush *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Brush *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Brush *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1Brush *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1Brush *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1Brush *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1Brush *This, - D2D1_MATRIX_3X2_F *transform); - - END_INTERFACE + STDMETHOD_(void, SetOpacity)(ID2D1Brush *This, FLOAT opacity) PURE; + STDMETHOD_(void, SetTransform)(ID2D1Brush *This, const D2D1_MATRIX_3X2_F *transform) PURE; + STDMETHOD_(FLOAT, GetOpacity)(ID2D1Brush *This) PURE; + STDMETHOD_(void, GetTransform)(ID2D1Brush *This, D2D1_MATRIX_3X2_F *transform) PURE; } ID2D1BrushVtbl; interface ID2D1Brush { - CONST_VTBL ID2D1BrushVtbl* lpVtbl; + const ID2D1BrushVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Brush_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Brush_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Brush_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Brush_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1Brush_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1Brush_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1Brush_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1Brush_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) +#define ID2D1Brush_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1Brush_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1Brush_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1Brush_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1Brush_SetOpacity(this,A) (this)->lpVtbl->SetOpacity(this,A) +#define ID2D1Brush_SetTransform(this,A) (this)->lpVtbl->SetTransform(this,A) +#define ID2D1Brush_GetOpacity(this) (this)->lpVtbl->GetOpacity(this) +#define ID2D1Brush_GetTransform(this,A) (this)->lpVtbl->GetTransform(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1Image, 0x65019f75,0x8da2,0x497c,0xb3,0x2c,0xdf,0xa3,0x4e,0x48,0xed,0xe6); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Image : public ID2D1Resource {}; + #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Brush_QueryInterface(ID2D1Brush* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Brush_AddRef(ID2D1Brush* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Brush_Release(ID2D1Brush* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Brush_GetFactory(ID2D1Brush* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1Brush_SetOpacity(ID2D1Brush* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1Brush_SetTransform(ID2D1Brush* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1Brush_GetOpacity(ID2D1Brush* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1Brush_GetTransform(ID2D1Brush* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -#endif -#endif -#endif - - -#endif /* __ID2D1Brush_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1BitmapBrush interface - */ -#ifndef __ID2D1BitmapBrush_INTERFACE_DEFINED__ -#define __ID2D1BitmapBrush_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1BitmapBrush, 0x2cd906aa, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906aa-12e2-11dc-9fed-001143a055f9") -ID2D1BitmapBrush : public ID2D1Brush -{ - virtual void STDMETHODCALLTYPE SetExtendModeX( - D2D1_EXTEND_MODE mode) = 0; - - virtual void STDMETHODCALLTYPE SetExtendModeY( - D2D1_EXTEND_MODE mode) = 0; - - virtual void STDMETHODCALLTYPE SetInterpolationMode( - D2D1_BITMAP_INTERPOLATION_MODE mode) = 0; - - virtual void STDMETHODCALLTYPE SetBitmap( - ID2D1Bitmap *bitmap) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendModeX( - ) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendModeY( - ) = 0; - - virtual D2D1_BITMAP_INTERPOLATION_MODE STDMETHODCALLTYPE GetInterpolationMode( - ) = 0; - - virtual void STDMETHODCALLTYPE GetBitmap( - ID2D1Bitmap **bitmap) = 0; +typedef struct ID2D1ImageVtbl { + ID2D1ResourceVtbl Base; +} ID2D1ImageVtbl; +interface ID2D1Image { + const ID2D1ImageVtbl *lpVtbl; }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1BitmapBrush, 0x2cd906aa, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) + +#define ID2D1Image_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnkwnown*)(this),A,B) +#define ID2D1Image_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1Image_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1Image_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) + #endif + +DEFINE_GUID(IID_ID2D1Bitmap, 0xa2296057,0xea42,0x4099,0x98,0x3b,0x53,0x9f,0xb6,0x50,0x54,0x26); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Bitmap : public ID2D1Image { +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_SIZE_F, GetSize)(void) const PURE; #else + virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize(D2D1_SIZE_F*) const = 0; + D2D1_SIZE_F STDMETHODCALLTYPE GetSize() const { + D2D1_SIZE_F __ret; + GetSize(&__ret); + return __ret; + } +#endif + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_SIZE_U, GetPixelSize)(void) const PURE; +#else + virtual D2D1_SIZE_U* STDMETHODCALLTYPE GetPixelSize(D2D1_SIZE_U*) const = 0; + D2D1_SIZE_U STDMETHODCALLTYPE GetPixelSize() const { + D2D1_SIZE_U __ret; + GetPixelSize(&__ret); + return __ret; + } +#endif + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_PIXEL_FORMAT, GetPixelFormat)(void) const PURE; +#else + virtual D2D1_PIXEL_FORMAT* STDMETHODCALLTYPE GetPixelFormat(D2D1_PIXEL_FORMAT*) const = 0; + D2D1_PIXEL_FORMAT STDMETHODCALLTYPE GetPixelFormat() const { + D2D1_PIXEL_FORMAT __ret; + GetPixelFormat(&__ret); + return __ret; + } +#endif + + STDMETHOD_(void, GetDpi)(FLOAT *dpiX, FLOAT *dpiY) const PURE; + STDMETHOD(CopyFromBitmap)(const D2D1_POINT_2U *destPoint, ID2D1Bitmap *bitmap, const D2D1_RECT_U *srcRect) PURE; + STDMETHOD(CopyFromRenderTarget)(const D2D1_POINT_2U *destPoint, ID2D1RenderTarget *renderTarget, const D2D1_RECT_U *srcRect) PURE; + STDMETHOD(CopyFromMemory)(const D2D1_RECT_U *dstRect, const void *srcData, UINT32 pitch) PURE; +}; + +#else + +typedef struct ID2D1BitmapVtbl { + ID2D1ImageVtbl Base; + + STDMETHOD_(D2D1_SIZE_F, GetSize)(ID2D1Bitmap *This) PURE; + STDMETHOD_(D2D1_SIZE_U, GetPixelSize)(ID2D1Bitmap *This) PURE; + STDMETHOD_(D2D1_PIXEL_FORMAT, GetPixelFormat)(ID2D1Bitmap *This) PURE; + STDMETHOD_(void, GetDpi)(ID2D1Bitmap *This, FLOAT *dpiX, FLOAT *dpiY) PURE; + STDMETHOD(CopyFromBitmap)(ID2D1Bitmap *This, const D2D1_POINT_2U *destPoint, ID2D1Bitmap *bitmap, const D2D1_RECT_U *srcRect) PURE; + STDMETHOD(CopyFromRenderTarget)(ID2D1Bitmap *This, const D2D1_POINT_2U *destPoint, ID2D1RenderTarget *renderTarget, const D2D1_RECT_U *srcRect) PURE; + STDMETHOD(CopyFromMemory)(ID2D1Bitmap *This, const D2D1_RECT_U *dstRect, const void *srcData, UINT32 pitch) PURE; +} ID2D1BitmapVtbl; + +interface ID2D1Bitmap { + const ID2D1BitmapVtbl *lpVtbl; +}; + +#define ID2D1Bitmap_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnkwnown*)(this),A,B) +#define ID2D1Bitmap_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1Bitmap_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1Bitmap_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1Bitmap_GetSize(this) (this)->lpVtbl->GetSize(this) +#define ID2D1Bitmap_GetPixelSize(this) (this)->lpVtbl->GetPixelSize(this) +#define ID2D1Bitmap_GetPixelFormat(this) (this)->lpVtbl->GetPixelFormat(this) +#define ID2D1Bitmap_GetDpi(this,A,B) (this)->lpVtbl->GetDpi(this,A,B) +#define ID2D1Bitmap_CopyFromBitmap(this,A,B,C) (this)->lpVtbl->CopyFromBitmap(this,A,B,C) +#define ID2D1Bitmap_CopyFromRenderTarget(this,A,B,C) (this)->lpVtbl->CopyFromRenderTarget(this,A,B,C) +#define ID2D1Bitmap_CopyFromMemory(this,A,B,C) (this)->lpVtbl->CopyFromMemory(this,A,B,C) + +#endif + +DEFINE_GUID(IID_ID2D1BitmapBrush, 0x2cd906aa,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1BitmapBrush : public ID2D1Brush { + STDMETHOD_(void, SetExtendModeX)(D2D1_EXTEND_MODE extendModeX) PURE; + STDMETHOD_(void, SetExtendModeY)(D2D1_EXTEND_MODE extendModeY) PURE; + STDMETHOD_(void, SetInterpolationMode)(D2D1_BITMAP_INTERPOLATION_MODE interpolationMode) PURE; + STDMETHOD_(void, SetBitmap)(ID2D1Bitmap *bitmap) PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeX)(void) const PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeY)(void) const PURE; + STDMETHOD_(D2D1_BITMAP_INTERPOLATION_MODE, GetInterpolationMode)(void) const PURE; + STDMETHOD_(void, GetBitmap)(ID2D1Bitmap **bitmap) const PURE; +}; + +#else + typedef struct ID2D1BitmapBrushVtbl { - BEGIN_INTERFACE + ID2D1BrushVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1BitmapBrush *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1BitmapBrush *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1BitmapBrush *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1BitmapBrush *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1BitmapBrush *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1BitmapBrush *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1BitmapBrush *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1BitmapBrush *This, - D2D1_MATRIX_3X2_F *transform); - - /*** ID2D1BitmapBrush methods ***/ - void (STDMETHODCALLTYPE *SetExtendModeX)( - ID2D1BitmapBrush *This, - D2D1_EXTEND_MODE mode); - - void (STDMETHODCALLTYPE *SetExtendModeY)( - ID2D1BitmapBrush *This, - D2D1_EXTEND_MODE mode); - - void (STDMETHODCALLTYPE *SetInterpolationMode)( - ID2D1BitmapBrush *This, - D2D1_BITMAP_INTERPOLATION_MODE mode); - - void (STDMETHODCALLTYPE *SetBitmap)( - ID2D1BitmapBrush *This, - ID2D1Bitmap *bitmap); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeX)( - ID2D1BitmapBrush *This); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeY)( - ID2D1BitmapBrush *This); - - D2D1_BITMAP_INTERPOLATION_MODE (STDMETHODCALLTYPE *GetInterpolationMode)( - ID2D1BitmapBrush *This); - - void (STDMETHODCALLTYPE *GetBitmap)( - ID2D1BitmapBrush *This, - ID2D1Bitmap **bitmap); - - END_INTERFACE + STDMETHOD_(void, SetExtendModeX)(ID2D1BitmapBrush *This, D2D1_EXTEND_MODE extendModeX) PURE; + STDMETHOD_(void, SetExtendModeY)(ID2D1BitmapBrush *This, D2D1_EXTEND_MODE extendModeY) PURE; + STDMETHOD_(void, SetInterpolationMode)(ID2D1BitmapBrush *This, D2D1_BITMAP_INTERPOLATION_MODE interpolationMode) PURE; + STDMETHOD_(void, SetBitmap)(ID2D1BitmapBrush *This, ID2D1Bitmap *bitmap) PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeX)(ID2D1BitmapBrush *This) PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeY)(ID2D1BitmapBrush *This) PURE; + STDMETHOD_(D2D1_BITMAP_INTERPOLATION_MODE, GetInterpolationMode)(ID2D1BitmapBrush *This) PURE; + STDMETHOD_(void, GetBitmap)(ID2D1BitmapBrush *This, ID2D1Bitmap **bitmap) PURE; } ID2D1BitmapBrushVtbl; interface ID2D1BitmapBrush { - CONST_VTBL ID2D1BitmapBrushVtbl* lpVtbl; + const ID2D1BitmapBrushVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1BitmapBrush_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1BitmapBrush_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1BitmapBrush_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1BitmapBrush_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1BitmapBrush_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1BitmapBrush_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1BitmapBrush_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1BitmapBrush_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -/*** ID2D1BitmapBrush methods ***/ -#define ID2D1BitmapBrush_SetExtendModeX(This,mode) (This)->lpVtbl->SetExtendModeX(This,mode) -#define ID2D1BitmapBrush_SetExtendModeY(This,mode) (This)->lpVtbl->SetExtendModeY(This,mode) -#define ID2D1BitmapBrush_SetInterpolationMode(This,mode) (This)->lpVtbl->SetInterpolationMode(This,mode) -#define ID2D1BitmapBrush_SetBitmap(This,bitmap) (This)->lpVtbl->SetBitmap(This,bitmap) -#define ID2D1BitmapBrush_GetExtendModeX(This) (This)->lpVtbl->GetExtendModeX(This) -#define ID2D1BitmapBrush_GetExtendModeY(This) (This)->lpVtbl->GetExtendModeY(This) -#define ID2D1BitmapBrush_GetInterpolationMode(This) (This)->lpVtbl->GetInterpolationMode(This) -#define ID2D1BitmapBrush_GetBitmap(This,bitmap) (This)->lpVtbl->GetBitmap(This,bitmap) +#define ID2D1BitmapBrush_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnkwnown*)(this),A,B) +#define ID2D1BitmapBrush_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1BitmapBrush_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1BitmapBrush_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1BitmapBrush_SetOpacity(this,A) (this)->lpVtbl->Base.SetOpacity((ID2D1Brush*)(this),A) +#define ID2D1BitmapBrush_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1Brush*)(this),A) +#define ID2D1BitmapBrush_GetOpacity(this) (this)->lpVtbl->Base.GetOpacity((ID2D1Brush*)(this)) +#define ID2D1BitmapBrush_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1Brush*)(this),A) +#define ID2D1BitmapBrush_SetExtendModeX(this,A) (this)->lpVtbl->SetExtendModeX(this,A) +#define ID2D1BitmapBrush_SetExtendModeY(this,A) (this)->lpVtbl->SetExtendModeY(this,A) +#define ID2D1BitmapBrush_SetInterpolationMode(this,A) (this)->lpVtbl->SetInterpolationMode(this,A) +#define ID2D1BitmapBrush_SetBitmap(this,A) (this)->lpVtbl->SetBitmap(this,A) +#define ID2D1BitmapBrush_GetExtendModeX(this) (this)->lpVtbl->GetExtendModeX(this) +#define ID2D1BitmapBrush_GetExtendModeY(this) (this)->lpVtbl->GetExtendModeY(this) +#define ID2D1BitmapBrush_GetInterpolationMode(this) (this)->lpVtbl->GetInterpolationMode(this) +#define ID2D1BitmapBrush_GetBitmap(this,A) (this)->lpVtbl->GetBitmap(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1RenderTarget, 0x2cd90694,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1RenderTarget : public ID2D1Resource { + STDMETHOD(CreateBitmap)(D2D1_SIZE_U size, const void *srcData, UINT32 pitch, const D2D1_BITMAP_PROPERTIES *bitmapProperties, ID2D1Bitmap **bitmap) PURE; + STDMETHOD(CreateBitmapFromWicBitmap)(IWICBitmapSource *wicBitmapSource, const D2D1_BITMAP_PROPERTIES *bitmapProperties, ID2D1Bitmap **bitmap) PURE; + STDMETHOD(CreateSharedBitmap)(REFIID riid, void *data, const D2D1_BITMAP_PROPERTIES *bitmapProperties, ID2D1Bitmap **bitmap) PURE; + STDMETHOD(CreateBitmapBrush)(ID2D1Bitmap *bitmap, const D2D1_BITMAP_BRUSH_PROPERTIES *bitmapBrushProperties, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1BitmapBrush **bitmapBrush) PURE; + STDMETHOD(CreateSolidColorBrush)(const D2D1_COLOR_F *color, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1SolidColorBrush **solidColorBrush) PURE; + STDMETHOD(CreateGradientStopCollection)(const D2D1_GRADIENT_STOP *gradientStops, UINT gradientStopsCount, D2D1_GAMMA colorInterpolationGamma, D2D1_EXTEND_MODE extendMode, ID2D1GradientStopCollection **gradientStopCollection) PURE; + STDMETHOD(CreateLinearGradientBrush)(const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *linearGradientBrushProperties, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1LinearGradientBrush **linearGradientBrush) PURE; + STDMETHOD(CreateRadialGradientBrush)(const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *radialGradientBrushProperties, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1RadialGradientBrush **radialGradientBrush) PURE; + STDMETHOD(CreateCompatibleRenderTarget)(const D2D1_SIZE_F *desiredSize, const D2D1_SIZE_U *desiredPixelSize, const D2D1_PIXEL_FORMAT *desiredFormat, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, ID2D1BitmapRenderTarget **bitmapRenderTarget) PURE; + STDMETHOD(CreateLayer)(const D2D1_SIZE_F *size, ID2D1Layer **layer) PURE; + STDMETHOD(CreateMesh)(ID2D1Mesh **mesh) PURE; + STDMETHOD_(void, DrawLine)(D2D1_POINT_2F point0, D2D1_POINT_2F point1, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) PURE; + STDMETHOD_(void, DrawRectangle)(const D2D1_RECT_F *rect, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) PURE; + STDMETHOD_(void, FillRectangle)(const D2D1_RECT_F *rect, ID2D1Brush *brush) PURE; + STDMETHOD_(void, DrawRoundedRectangle)(const D2D1_ROUNDED_RECT *roundedRect, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) PURE; + STDMETHOD_(void, FillRoundedRectangle)(const D2D1_ROUNDED_RECT *roundedRect, ID2D1Brush *brush) PURE; + STDMETHOD_(void, DrawEllipse)(const D2D1_ELLIPSE *ellipse, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) PURE; + STDMETHOD_(void, FillEllipse)(const D2D1_ELLIPSE *ellipse, ID2D1Brush *brush) PURE; + STDMETHOD_(void, DrawGeometry)(ID2D1Geometry *geometry, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) PURE; + STDMETHOD_(void, FillGeometry)(ID2D1Geometry *geometry, ID2D1Brush *brush, ID2D1Brush *opacityBrush = NULL) PURE; + STDMETHOD_(void, FillMesh)(ID2D1Mesh *mesh, ID2D1Brush *brush) PURE; + STDMETHOD_(void, FillOpacityMask)(ID2D1Bitmap *opacityMask, ID2D1Brush *brush, D2D1_OPACITY_MASK_CONTENT content, const D2D1_RECT_F *destinationRectangle = NULL, const D2D1_RECT_F *sourceRectangle = NULL) PURE; + STDMETHOD_(void, DrawBitmap)(ID2D1Bitmap *bitmap, const D2D1_RECT_F *destinationRectangle = NULL, FLOAT opacity = 1.0f, D2D1_BITMAP_INTERPOLATION_MODE interpolationMode = D2D1_BITMAP_INTERPOLATION_MODE_LINEAR, const D2D1_RECT_F *sourceRectangle = NULL) PURE; + STDMETHOD_(void, DrawText)(const WCHAR *string, UINT stringLength, IDWriteTextFormat *textFormat, const D2D1_RECT_F *layoutRect, ID2D1Brush *defaultForegroundBrush, D2D1_DRAW_TEXT_OPTIONS options = D2D1_DRAW_TEXT_OPTIONS_NONE, DWRITE_MEASURING_MODE measuringMode = DWRITE_MEASURING_MODE_NATURAL) PURE; + STDMETHOD_(void, DrawTextLayout)(D2D1_POINT_2F origin, IDWriteTextLayout *textLayout, ID2D1Brush *defaultForegroundBrush, D2D1_DRAW_TEXT_OPTIONS options = D2D1_DRAW_TEXT_OPTIONS_NONE) PURE; + STDMETHOD_(void, DrawGlyphRun)(D2D1_POINT_2F baselineOrigin, CONST DWRITE_GLYPH_RUN *glyphRun, ID2D1Brush *foregroundBrush, DWRITE_MEASURING_MODE measuringMode = DWRITE_MEASURING_MODE_NATURAL) PURE; + STDMETHOD_(void, SetTransform)(const D2D1_MATRIX_3X2_F *transform) PURE; + STDMETHOD_(void, GetTransform)(D2D1_MATRIX_3X2_F *transform) const PURE; + STDMETHOD_(void, SetAntialiasMode)(D2D1_ANTIALIAS_MODE antialiasMode) PURE; + STDMETHOD_(D2D1_ANTIALIAS_MODE, GetAntialiasMode)(void) const PURE; + STDMETHOD_(void, SetTextAntialiasMode)(D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode) PURE; + STDMETHOD_(D2D1_TEXT_ANTIALIAS_MODE, GetTextAntialiasMode)(void) const PURE; + STDMETHOD_(void, SetTextRenderingParams)(IDWriteRenderingParams *textRenderingParams = NULL) PURE; + STDMETHOD_(void, GetTextRenderingParams)(IDWriteRenderingParams **textRenderingParams) const PURE; + STDMETHOD_(void, SetTags)(D2D1_TAG tag1, D2D1_TAG tag2) PURE; + STDMETHOD_(void, GetTags)(D2D1_TAG *tag1 = NULL, D2D1_TAG *tag2 = NULL) const PURE; + STDMETHOD_(void, PushLayer)(const D2D1_LAYER_PARAMETERS *layerParameters, ID2D1Layer *layer) PURE; + STDMETHOD_(void, PopLayer)(void) PURE; + STDMETHOD(Flush)(D2D1_TAG *tag1 = NULL, D2D1_TAG *tag2 = NULL) PURE; + STDMETHOD_(void, SaveDrawingState)(ID2D1DrawingStateBlock *drawingStateBlock) const PURE; + STDMETHOD_(void, RestoreDrawingState)(ID2D1DrawingStateBlock *drawingStateBlock) PURE; + STDMETHOD_(void, PushAxisAlignedClip)(const D2D1_RECT_F *clipRect, D2D1_ANTIALIAS_MODE antialiasMode) PURE; + STDMETHOD_(void, PopAxisAlignedClip)(void) PURE; + STDMETHOD_(void, Clear)(const D2D1_COLOR_F *clearColor = NULL) PURE; + STDMETHOD_(void, BeginDraw)(void) PURE; + STDMETHOD(EndDraw)(D2D1_TAG *tag1 = NULL, D2D1_TAG *tag2 = NULL) PURE; + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_PIXEL_FORMAT, GetPixelFormat)(void) const PURE; #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1BitmapBrush_QueryInterface(ID2D1BitmapBrush* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1BitmapBrush_AddRef(ID2D1BitmapBrush* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1BitmapBrush_Release(ID2D1BitmapBrush* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush_GetFactory(ID2D1BitmapBrush* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush_SetOpacity(ID2D1BitmapBrush* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1BitmapBrush_SetTransform(ID2D1BitmapBrush* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1BitmapBrush_GetOpacity(ID2D1BitmapBrush* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1BitmapBrush_GetTransform(ID2D1BitmapBrush* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -/*** ID2D1BitmapBrush methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush_SetExtendModeX(ID2D1BitmapBrush* This,D2D1_EXTEND_MODE mode) { - This->lpVtbl->SetExtendModeX(This,mode); -} -static __WIDL_INLINE void ID2D1BitmapBrush_SetExtendModeY(ID2D1BitmapBrush* This,D2D1_EXTEND_MODE mode) { - This->lpVtbl->SetExtendModeY(This,mode); -} -static __WIDL_INLINE void ID2D1BitmapBrush_SetInterpolationMode(ID2D1BitmapBrush* This,D2D1_BITMAP_INTERPOLATION_MODE mode) { - This->lpVtbl->SetInterpolationMode(This,mode); -} -static __WIDL_INLINE void ID2D1BitmapBrush_SetBitmap(ID2D1BitmapBrush* This,ID2D1Bitmap *bitmap) { - This->lpVtbl->SetBitmap(This,bitmap); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1BitmapBrush_GetExtendModeX(ID2D1BitmapBrush* This) { - return This->lpVtbl->GetExtendModeX(This); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1BitmapBrush_GetExtendModeY(ID2D1BitmapBrush* This) { - return This->lpVtbl->GetExtendModeY(This); -} -static __WIDL_INLINE D2D1_BITMAP_INTERPOLATION_MODE ID2D1BitmapBrush_GetInterpolationMode(ID2D1BitmapBrush* This) { - return This->lpVtbl->GetInterpolationMode(This); -} -static __WIDL_INLINE void ID2D1BitmapBrush_GetBitmap(ID2D1BitmapBrush* This,ID2D1Bitmap **bitmap) { - This->lpVtbl->GetBitmap(This,bitmap); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1BitmapBrush_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1SolidColorBrush interface - */ -#ifndef __ID2D1SolidColorBrush_INTERFACE_DEFINED__ -#define __ID2D1SolidColorBrush_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1SolidColorBrush, 0x2cd906a9, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a9-12e2-11dc-9fed-001143a055f9") -ID2D1SolidColorBrush : public ID2D1Brush -{ - virtual void STDMETHODCALLTYPE SetColor( - const D2D1_COLOR_F *color) = 0; - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_COLOR_F* STDMETHODCALLTYPE GetColor( - D2D1_COLOR_F *__ret) = 0; - D2D1_COLOR_F STDMETHODCALLTYPE GetColor( - ) - { - D2D1_COLOR_F __ret; - return *GetColor(&__ret); - } -#else - virtual D2D1_COLOR_F STDMETHODCALLTYPE GetColor( - ) = 0; -#endif - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1SolidColorBrush, 0x2cd906a9, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1SolidColorBrushVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1SolidColorBrush *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1SolidColorBrush *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1SolidColorBrush *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1SolidColorBrush *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1SolidColorBrush *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1SolidColorBrush *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1SolidColorBrush *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1SolidColorBrush *This, - D2D1_MATRIX_3X2_F *transform); - - /*** ID2D1SolidColorBrush methods ***/ - void (STDMETHODCALLTYPE *SetColor)( - ID2D1SolidColorBrush *This, - const D2D1_COLOR_F *color); - - D2D1_COLOR_F * (STDMETHODCALLTYPE *GetColor)( - ID2D1SolidColorBrush *This, - D2D1_COLOR_F *__ret); - - END_INTERFACE -} ID2D1SolidColorBrushVtbl; - -interface ID2D1SolidColorBrush { - CONST_VTBL ID2D1SolidColorBrushVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1SolidColorBrush_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1SolidColorBrush_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1SolidColorBrush_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1SolidColorBrush_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1SolidColorBrush_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1SolidColorBrush_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1SolidColorBrush_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1SolidColorBrush_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -/*** ID2D1SolidColorBrush methods ***/ -#define ID2D1SolidColorBrush_SetColor(This,color) (This)->lpVtbl->SetColor(This,color) -#define ID2D1SolidColorBrush_GetColor(This) ID2D1SolidColorBrush_GetColor_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1SolidColorBrush_QueryInterface(ID2D1SolidColorBrush* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1SolidColorBrush_AddRef(ID2D1SolidColorBrush* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1SolidColorBrush_Release(ID2D1SolidColorBrush* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1SolidColorBrush_GetFactory(ID2D1SolidColorBrush* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1SolidColorBrush_SetOpacity(ID2D1SolidColorBrush* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1SolidColorBrush_SetTransform(ID2D1SolidColorBrush* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1SolidColorBrush_GetOpacity(ID2D1SolidColorBrush* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1SolidColorBrush_GetTransform(ID2D1SolidColorBrush* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -/*** ID2D1SolidColorBrush methods ***/ -static __WIDL_INLINE void ID2D1SolidColorBrush_SetColor(ID2D1SolidColorBrush* This,const D2D1_COLOR_F *color) { - This->lpVtbl->SetColor(This,color); -} -static __WIDL_INLINE D2D1_COLOR_F ID2D1SolidColorBrush_GetColor(ID2D1SolidColorBrush* This) { - D2D1_COLOR_F __ret; - return *This->lpVtbl->GetColor(This,&__ret); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1SolidColorBrush_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1GradientStopCollection interface - */ -#ifndef __ID2D1GradientStopCollection_INTERFACE_DEFINED__ -#define __ID2D1GradientStopCollection_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1GradientStopCollection, 0x2cd906a7, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906a7-12e2-11dc-9fed-001143a055f9") -ID2D1GradientStopCollection : public ID2D1Resource -{ - virtual UINT32 STDMETHODCALLTYPE GetGradientStopCount( - ) = 0; - - virtual void STDMETHODCALLTYPE GetGradientStops( - D2D1_GRADIENT_STOP *stops, - UINT32 stop_count) = 0; - - virtual D2D1_GAMMA STDMETHODCALLTYPE GetColorInterpolationGamma( - ) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendMode( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GradientStopCollection, 0x2cd906a7, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1GradientStopCollectionVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GradientStopCollection *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GradientStopCollection *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GradientStopCollection *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1GradientStopCollection *This, - ID2D1Factory **factory); - - /*** ID2D1GradientStopCollection methods ***/ - UINT32 (STDMETHODCALLTYPE *GetGradientStopCount)( - ID2D1GradientStopCollection *This); - - void (STDMETHODCALLTYPE *GetGradientStops)( - ID2D1GradientStopCollection *This, - D2D1_GRADIENT_STOP *stops, - UINT32 stop_count); - - D2D1_GAMMA (STDMETHODCALLTYPE *GetColorInterpolationGamma)( - ID2D1GradientStopCollection *This); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendMode)( - ID2D1GradientStopCollection *This); - - END_INTERFACE -} ID2D1GradientStopCollectionVtbl; - -interface ID2D1GradientStopCollection { - CONST_VTBL ID2D1GradientStopCollectionVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GradientStopCollection_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GradientStopCollection_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GradientStopCollection_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1GradientStopCollection_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1GradientStopCollection methods ***/ -#define ID2D1GradientStopCollection_GetGradientStopCount(This) (This)->lpVtbl->GetGradientStopCount(This) -#define ID2D1GradientStopCollection_GetGradientStops(This,stops,stop_count) (This)->lpVtbl->GetGradientStops(This,stops,stop_count) -#define ID2D1GradientStopCollection_GetColorInterpolationGamma(This) (This)->lpVtbl->GetColorInterpolationGamma(This) -#define ID2D1GradientStopCollection_GetExtendMode(This) (This)->lpVtbl->GetExtendMode(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GradientStopCollection_QueryInterface(ID2D1GradientStopCollection* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GradientStopCollection_AddRef(ID2D1GradientStopCollection* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GradientStopCollection_Release(ID2D1GradientStopCollection* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1GradientStopCollection_GetFactory(ID2D1GradientStopCollection* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1GradientStopCollection methods ***/ -static __WIDL_INLINE UINT32 ID2D1GradientStopCollection_GetGradientStopCount(ID2D1GradientStopCollection* This) { - return This->lpVtbl->GetGradientStopCount(This); -} -static __WIDL_INLINE void ID2D1GradientStopCollection_GetGradientStops(ID2D1GradientStopCollection* This,D2D1_GRADIENT_STOP *stops,UINT32 stop_count) { - This->lpVtbl->GetGradientStops(This,stops,stop_count); -} -static __WIDL_INLINE D2D1_GAMMA ID2D1GradientStopCollection_GetColorInterpolationGamma(ID2D1GradientStopCollection* This) { - return This->lpVtbl->GetColorInterpolationGamma(This); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1GradientStopCollection_GetExtendMode(ID2D1GradientStopCollection* This) { - return This->lpVtbl->GetExtendMode(This); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1GradientStopCollection_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1LinearGradientBrush interface - */ -#ifndef __ID2D1LinearGradientBrush_INTERFACE_DEFINED__ -#define __ID2D1LinearGradientBrush_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1LinearGradientBrush, 0x2cd906ab, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906ab-12e2-11dc-9fed-001143a055f9") -ID2D1LinearGradientBrush : public ID2D1Brush -{ - virtual void STDMETHODCALLTYPE SetStartPoint( - D2D1_POINT_2F start_point) = 0; - - virtual void STDMETHODCALLTYPE SetEndPoint( - D2D1_POINT_2F end_point) = 0; - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetStartPoint( - D2D1_POINT_2F *__ret) = 0; - D2D1_POINT_2F STDMETHODCALLTYPE GetStartPoint( - ) - { - D2D1_POINT_2F __ret; - return *GetStartPoint(&__ret); - } -#else - virtual D2D1_POINT_2F STDMETHODCALLTYPE GetStartPoint( - ) = 0; -#endif - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetEndPoint( - D2D1_POINT_2F *__ret) = 0; - D2D1_POINT_2F STDMETHODCALLTYPE GetEndPoint( - ) - { - D2D1_POINT_2F __ret; - return *GetEndPoint(&__ret); - } -#else - virtual D2D1_POINT_2F STDMETHODCALLTYPE GetEndPoint( - ) = 0; -#endif - - virtual void STDMETHODCALLTYPE GetGradientStopCollection( - ID2D1GradientStopCollection **gradient) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1LinearGradientBrush, 0x2cd906ab, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1LinearGradientBrushVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1LinearGradientBrush *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1LinearGradientBrush *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1LinearGradientBrush *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1LinearGradientBrush *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1LinearGradientBrush *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1LinearGradientBrush *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1LinearGradientBrush *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1LinearGradientBrush *This, - D2D1_MATRIX_3X2_F *transform); - - /*** ID2D1LinearGradientBrush methods ***/ - void (STDMETHODCALLTYPE *SetStartPoint)( - ID2D1LinearGradientBrush *This, - D2D1_POINT_2F start_point); - - void (STDMETHODCALLTYPE *SetEndPoint)( - ID2D1LinearGradientBrush *This, - D2D1_POINT_2F end_point); - - D2D1_POINT_2F * (STDMETHODCALLTYPE *GetStartPoint)( - ID2D1LinearGradientBrush *This, - D2D1_POINT_2F *__ret); - - D2D1_POINT_2F * (STDMETHODCALLTYPE *GetEndPoint)( - ID2D1LinearGradientBrush *This, - D2D1_POINT_2F *__ret); - - void (STDMETHODCALLTYPE *GetGradientStopCollection)( - ID2D1LinearGradientBrush *This, - ID2D1GradientStopCollection **gradient); - - END_INTERFACE -} ID2D1LinearGradientBrushVtbl; - -interface ID2D1LinearGradientBrush { - CONST_VTBL ID2D1LinearGradientBrushVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1LinearGradientBrush_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1LinearGradientBrush_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1LinearGradientBrush_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1LinearGradientBrush_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1LinearGradientBrush_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1LinearGradientBrush_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1LinearGradientBrush_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1LinearGradientBrush_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -/*** ID2D1LinearGradientBrush methods ***/ -#define ID2D1LinearGradientBrush_SetStartPoint(This,start_point) (This)->lpVtbl->SetStartPoint(This,start_point) -#define ID2D1LinearGradientBrush_SetEndPoint(This,end_point) (This)->lpVtbl->SetEndPoint(This,end_point) -#define ID2D1LinearGradientBrush_GetStartPoint(This) ID2D1LinearGradientBrush_GetStartPoint_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1LinearGradientBrush_GetEndPoint(This) ID2D1LinearGradientBrush_GetEndPoint_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1LinearGradientBrush_GetGradientStopCollection(This,gradient) (This)->lpVtbl->GetGradientStopCollection(This,gradient) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1LinearGradientBrush_QueryInterface(ID2D1LinearGradientBrush* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1LinearGradientBrush_AddRef(ID2D1LinearGradientBrush* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1LinearGradientBrush_Release(ID2D1LinearGradientBrush* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1LinearGradientBrush_GetFactory(ID2D1LinearGradientBrush* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1LinearGradientBrush_SetOpacity(ID2D1LinearGradientBrush* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1LinearGradientBrush_SetTransform(ID2D1LinearGradientBrush* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1LinearGradientBrush_GetOpacity(ID2D1LinearGradientBrush* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1LinearGradientBrush_GetTransform(ID2D1LinearGradientBrush* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -/*** ID2D1LinearGradientBrush methods ***/ -static __WIDL_INLINE void ID2D1LinearGradientBrush_SetStartPoint(ID2D1LinearGradientBrush* This,D2D1_POINT_2F start_point) { - This->lpVtbl->SetStartPoint(This,start_point); -} -static __WIDL_INLINE void ID2D1LinearGradientBrush_SetEndPoint(ID2D1LinearGradientBrush* This,D2D1_POINT_2F end_point) { - This->lpVtbl->SetEndPoint(This,end_point); -} -static __WIDL_INLINE D2D1_POINT_2F ID2D1LinearGradientBrush_GetStartPoint(ID2D1LinearGradientBrush* This) { - D2D1_POINT_2F __ret; - return *This->lpVtbl->GetStartPoint(This,&__ret); -} -static __WIDL_INLINE D2D1_POINT_2F ID2D1LinearGradientBrush_GetEndPoint(ID2D1LinearGradientBrush* This) { - D2D1_POINT_2F __ret; - return *This->lpVtbl->GetEndPoint(This,&__ret); -} -static __WIDL_INLINE void ID2D1LinearGradientBrush_GetGradientStopCollection(ID2D1LinearGradientBrush* This,ID2D1GradientStopCollection **gradient) { - This->lpVtbl->GetGradientStopCollection(This,gradient); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1LinearGradientBrush_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1RadialGradientBrush interface - */ -#ifndef __ID2D1RadialGradientBrush_INTERFACE_DEFINED__ -#define __ID2D1RadialGradientBrush_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1RadialGradientBrush, 0x2cd906ac, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906ac-12e2-11dc-9fed-001143a055f9") -ID2D1RadialGradientBrush : public ID2D1Brush -{ - virtual void STDMETHODCALLTYPE SetCenter( - D2D1_POINT_2F center) = 0; - - virtual void STDMETHODCALLTYPE SetGradientOriginOffset( - D2D1_POINT_2F offset) = 0; - - virtual void STDMETHODCALLTYPE SetRadiusX( - float radius) = 0; - - virtual void STDMETHODCALLTYPE SetRadiusY( - float radius) = 0; - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetCenter( - D2D1_POINT_2F *__ret) = 0; - D2D1_POINT_2F STDMETHODCALLTYPE GetCenter( - ) - { - D2D1_POINT_2F __ret; - return *GetCenter(&__ret); - } -#else - virtual D2D1_POINT_2F STDMETHODCALLTYPE GetCenter( - ) = 0; -#endif - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetGradientOriginOffset( - D2D1_POINT_2F *__ret) = 0; - D2D1_POINT_2F STDMETHODCALLTYPE GetGradientOriginOffset( - ) - { - D2D1_POINT_2F __ret; - return *GetGradientOriginOffset(&__ret); - } -#else - virtual D2D1_POINT_2F STDMETHODCALLTYPE GetGradientOriginOffset( - ) = 0; -#endif - - virtual float STDMETHODCALLTYPE GetRadiusX( - ) = 0; - - virtual float STDMETHODCALLTYPE GetRadiusY( - ) = 0; - - virtual void STDMETHODCALLTYPE GetGradientStopCollection( - ID2D1GradientStopCollection **gradient) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1RadialGradientBrush, 0x2cd906ac, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1RadialGradientBrushVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1RadialGradientBrush *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1RadialGradientBrush *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1RadialGradientBrush *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1RadialGradientBrush *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1RadialGradientBrush *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1RadialGradientBrush *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1RadialGradientBrush *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1RadialGradientBrush *This, - D2D1_MATRIX_3X2_F *transform); - - /*** ID2D1RadialGradientBrush methods ***/ - void (STDMETHODCALLTYPE *SetCenter)( - ID2D1RadialGradientBrush *This, - D2D1_POINT_2F center); - - void (STDMETHODCALLTYPE *SetGradientOriginOffset)( - ID2D1RadialGradientBrush *This, - D2D1_POINT_2F offset); - - void (STDMETHODCALLTYPE *SetRadiusX)( - ID2D1RadialGradientBrush *This, - float radius); - - void (STDMETHODCALLTYPE *SetRadiusY)( - ID2D1RadialGradientBrush *This, - float radius); - - D2D1_POINT_2F * (STDMETHODCALLTYPE *GetCenter)( - ID2D1RadialGradientBrush *This, - D2D1_POINT_2F *__ret); - - D2D1_POINT_2F * (STDMETHODCALLTYPE *GetGradientOriginOffset)( - ID2D1RadialGradientBrush *This, - D2D1_POINT_2F *__ret); - - float (STDMETHODCALLTYPE *GetRadiusX)( - ID2D1RadialGradientBrush *This); - - float (STDMETHODCALLTYPE *GetRadiusY)( - ID2D1RadialGradientBrush *This); - - void (STDMETHODCALLTYPE *GetGradientStopCollection)( - ID2D1RadialGradientBrush *This, - ID2D1GradientStopCollection **gradient); - - END_INTERFACE -} ID2D1RadialGradientBrushVtbl; - -interface ID2D1RadialGradientBrush { - CONST_VTBL ID2D1RadialGradientBrushVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1RadialGradientBrush_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1RadialGradientBrush_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1RadialGradientBrush_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1RadialGradientBrush_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1RadialGradientBrush_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1RadialGradientBrush_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1RadialGradientBrush_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1RadialGradientBrush_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -/*** ID2D1RadialGradientBrush methods ***/ -#define ID2D1RadialGradientBrush_SetCenter(This,center) (This)->lpVtbl->SetCenter(This,center) -#define ID2D1RadialGradientBrush_SetGradientOriginOffset(This,offset) (This)->lpVtbl->SetGradientOriginOffset(This,offset) -#define ID2D1RadialGradientBrush_SetRadiusX(This,radius) (This)->lpVtbl->SetRadiusX(This,radius) -#define ID2D1RadialGradientBrush_SetRadiusY(This,radius) (This)->lpVtbl->SetRadiusY(This,radius) -#define ID2D1RadialGradientBrush_GetCenter(This) ID2D1RadialGradientBrush_GetCenter_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1RadialGradientBrush_GetGradientOriginOffset(This) ID2D1RadialGradientBrush_GetGradientOriginOffset_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1RadialGradientBrush_GetRadiusX(This) (This)->lpVtbl->GetRadiusX(This) -#define ID2D1RadialGradientBrush_GetRadiusY(This) (This)->lpVtbl->GetRadiusY(This) -#define ID2D1RadialGradientBrush_GetGradientStopCollection(This,gradient) (This)->lpVtbl->GetGradientStopCollection(This,gradient) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1RadialGradientBrush_QueryInterface(ID2D1RadialGradientBrush* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1RadialGradientBrush_AddRef(ID2D1RadialGradientBrush* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1RadialGradientBrush_Release(ID2D1RadialGradientBrush* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1RadialGradientBrush_GetFactory(ID2D1RadialGradientBrush* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1RadialGradientBrush_SetOpacity(ID2D1RadialGradientBrush* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1RadialGradientBrush_SetTransform(ID2D1RadialGradientBrush* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1RadialGradientBrush_GetOpacity(ID2D1RadialGradientBrush* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1RadialGradientBrush_GetTransform(ID2D1RadialGradientBrush* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -/*** ID2D1RadialGradientBrush methods ***/ -static __WIDL_INLINE void ID2D1RadialGradientBrush_SetCenter(ID2D1RadialGradientBrush* This,D2D1_POINT_2F center) { - This->lpVtbl->SetCenter(This,center); -} -static __WIDL_INLINE void ID2D1RadialGradientBrush_SetGradientOriginOffset(ID2D1RadialGradientBrush* This,D2D1_POINT_2F offset) { - This->lpVtbl->SetGradientOriginOffset(This,offset); -} -static __WIDL_INLINE void ID2D1RadialGradientBrush_SetRadiusX(ID2D1RadialGradientBrush* This,float radius) { - This->lpVtbl->SetRadiusX(This,radius); -} -static __WIDL_INLINE void ID2D1RadialGradientBrush_SetRadiusY(ID2D1RadialGradientBrush* This,float radius) { - This->lpVtbl->SetRadiusY(This,radius); -} -static __WIDL_INLINE D2D1_POINT_2F ID2D1RadialGradientBrush_GetCenter(ID2D1RadialGradientBrush* This) { - D2D1_POINT_2F __ret; - return *This->lpVtbl->GetCenter(This,&__ret); -} -static __WIDL_INLINE D2D1_POINT_2F ID2D1RadialGradientBrush_GetGradientOriginOffset(ID2D1RadialGradientBrush* This) { - D2D1_POINT_2F __ret; - return *This->lpVtbl->GetGradientOriginOffset(This,&__ret); -} -static __WIDL_INLINE float ID2D1RadialGradientBrush_GetRadiusX(ID2D1RadialGradientBrush* This) { - return This->lpVtbl->GetRadiusX(This); -} -static __WIDL_INLINE float ID2D1RadialGradientBrush_GetRadiusY(ID2D1RadialGradientBrush* This) { - return This->lpVtbl->GetRadiusY(This); -} -static __WIDL_INLINE void ID2D1RadialGradientBrush_GetGradientStopCollection(ID2D1RadialGradientBrush* This,ID2D1GradientStopCollection **gradient) { - This->lpVtbl->GetGradientStopCollection(This,gradient); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1RadialGradientBrush_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1Layer interface - */ -#ifndef __ID2D1Layer_INTERFACE_DEFINED__ -#define __ID2D1Layer_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Layer, 0x2cd9069b, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd9069b-12e2-11dc-9fed-001143a055f9") -ID2D1Layer : public ID2D1Resource -{ -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize( - D2D1_SIZE_F *__ret) = 0; - D2D1_SIZE_F STDMETHODCALLTYPE GetSize( - ) - { - D2D1_SIZE_F __ret; - return *GetSize(&__ret); - } -#else - virtual D2D1_SIZE_F STDMETHODCALLTYPE GetSize( - ) = 0; -#endif - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Layer, 0x2cd9069b, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1LayerVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Layer *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Layer *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Layer *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Layer *This, - ID2D1Factory **factory); - - /*** ID2D1Layer methods ***/ - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1Layer *This, - D2D1_SIZE_F *__ret); - - END_INTERFACE -} ID2D1LayerVtbl; - -interface ID2D1Layer { - CONST_VTBL ID2D1LayerVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Layer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Layer_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Layer_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Layer_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Layer methods ***/ -#define ID2D1Layer_GetSize(This) ID2D1Layer_GetSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Layer_QueryInterface(ID2D1Layer* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Layer_AddRef(ID2D1Layer* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Layer_Release(ID2D1Layer* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Layer_GetFactory(ID2D1Layer* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Layer methods ***/ -static __WIDL_INLINE D2D1_SIZE_F ID2D1Layer_GetSize(ID2D1Layer* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1Layer_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1Mesh interface - */ -#ifndef __ID2D1Mesh_INTERFACE_DEFINED__ -#define __ID2D1Mesh_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Mesh, 0x2cd906c2, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd906c2-12e2-11dc-9fed-001143a055f9") -ID2D1Mesh : public ID2D1Resource -{ - virtual HRESULT STDMETHODCALLTYPE Open( - ID2D1TessellationSink **sink) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Mesh, 0x2cd906c2, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1MeshVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Mesh *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Mesh *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Mesh *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Mesh *This, - ID2D1Factory **factory); - - /*** ID2D1Mesh methods ***/ - HRESULT (STDMETHODCALLTYPE *Open)( - ID2D1Mesh *This, - ID2D1TessellationSink **sink); - - END_INTERFACE -} ID2D1MeshVtbl; - -interface ID2D1Mesh { - CONST_VTBL ID2D1MeshVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Mesh_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Mesh_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Mesh_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Mesh_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Mesh methods ***/ -#define ID2D1Mesh_Open(This,sink) (This)->lpVtbl->Open(This,sink) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Mesh_QueryInterface(ID2D1Mesh* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Mesh_AddRef(ID2D1Mesh* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Mesh_Release(ID2D1Mesh* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Mesh_GetFactory(ID2D1Mesh* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Mesh methods ***/ -static __WIDL_INLINE HRESULT ID2D1Mesh_Open(ID2D1Mesh* This,ID2D1TessellationSink **sink) { - return This->lpVtbl->Open(This,sink); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1Mesh_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1RenderTarget interface - */ -#ifndef __ID2D1RenderTarget_INTERFACE_DEFINED__ -#define __ID2D1RenderTarget_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1RenderTarget, 0x2cd90694, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd90694-12e2-11dc-9fed-001143a055f9") -ID2D1RenderTarget : public ID2D1Resource -{ - virtual HRESULT STDMETHODCALLTYPE CreateBitmap( - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBitmapFromWicBitmap( - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateSharedBitmap( - REFIID iid, - void *data, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBitmapBrush( - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush **brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateSolidColorBrush( - const D2D1_COLOR_F *color, - const D2D1_BRUSH_PROPERTIES *desc, - ID2D1SolidColorBrush **brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateGradientStopCollection( - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_GAMMA gamma, - D2D1_EXTEND_MODE extend_mode, - ID2D1GradientStopCollection **gradient) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateLinearGradientBrush( - const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1LinearGradientBrush **brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateRadialGradientBrush( - const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1RadialGradientBrush **brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateCompatibleRenderTarget( - const D2D1_SIZE_F *size, - const D2D1_SIZE_U *pixel_size, - const D2D1_PIXEL_FORMAT *format, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - ID2D1BitmapRenderTarget **render_target) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateLayer( - const D2D1_SIZE_F *size, - ID2D1Layer **layer) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateMesh( - ID2D1Mesh **mesh) = 0; - - virtual void STDMETHODCALLTYPE DrawLine( - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual void STDMETHODCALLTYPE DrawRectangle( - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual void STDMETHODCALLTYPE FillRectangle( - const D2D1_RECT_F *rect, - ID2D1Brush *brush) = 0; - - virtual void STDMETHODCALLTYPE DrawRoundedRectangle( - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual void STDMETHODCALLTYPE FillRoundedRectangle( - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush) = 0; - - virtual void STDMETHODCALLTYPE DrawEllipse( - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual void STDMETHODCALLTYPE FillEllipse( - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush) = 0; - - virtual void STDMETHODCALLTYPE DrawGeometry( - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual void STDMETHODCALLTYPE FillGeometry( - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush) = 0; - - virtual void STDMETHODCALLTYPE FillMesh( - ID2D1Mesh *mesh, - ID2D1Brush *brush) = 0; - - virtual void STDMETHODCALLTYPE FillOpacityMask( - ID2D1Bitmap *mask, - ID2D1Brush *brush, - D2D1_OPACITY_MASK_CONTENT content, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect) = 0; - - virtual void STDMETHODCALLTYPE DrawBitmap( - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect) = 0; - - virtual void STDMETHODCALLTYPE DrawText( - const WCHAR *string, - UINT32 string_len, - IDWriteTextFormat *text_format, - const D2D1_RECT_F *layout_rect, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options, - DWRITE_MEASURING_MODE measuring_mode) = 0; - - virtual void STDMETHODCALLTYPE DrawTextLayout( - D2D1_POINT_2F origin, - IDWriteTextLayout *layout, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options) = 0; - - virtual void STDMETHODCALLTYPE DrawGlyphRun( - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode) = 0; - - virtual void STDMETHODCALLTYPE SetTransform( - const D2D1_MATRIX_3X2_F *transform) = 0; - - virtual void STDMETHODCALLTYPE GetTransform( - D2D1_MATRIX_3X2_F *transform) = 0; - - virtual void STDMETHODCALLTYPE SetAntialiasMode( - D2D1_ANTIALIAS_MODE antialias_mode) = 0; - - virtual D2D1_ANTIALIAS_MODE STDMETHODCALLTYPE GetAntialiasMode( - ) = 0; - - virtual void STDMETHODCALLTYPE SetTextAntialiasMode( - D2D1_TEXT_ANTIALIAS_MODE antialias_mode) = 0; - - virtual D2D1_TEXT_ANTIALIAS_MODE STDMETHODCALLTYPE GetTextAntialiasMode( - ) = 0; - - virtual void STDMETHODCALLTYPE SetTextRenderingParams( - IDWriteRenderingParams *text_rendering_params) = 0; - - virtual void STDMETHODCALLTYPE GetTextRenderingParams( - IDWriteRenderingParams **text_rendering_params) = 0; - - virtual void STDMETHODCALLTYPE SetTags( - D2D1_TAG tag1, - D2D1_TAG tag2) = 0; - - virtual void STDMETHODCALLTYPE GetTags( - D2D1_TAG *tag1, - D2D1_TAG *tag2) = 0; - - virtual void STDMETHODCALLTYPE PushLayer( - const D2D1_LAYER_PARAMETERS *layer_parameters, - ID2D1Layer *layer) = 0; - - virtual void STDMETHODCALLTYPE PopLayer( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE Flush( - D2D1_TAG *tag1, - D2D1_TAG *tag2) = 0; - - virtual void STDMETHODCALLTYPE SaveDrawingState( - ID2D1DrawingStateBlock *state_block) = 0; - - virtual void STDMETHODCALLTYPE RestoreDrawingState( - ID2D1DrawingStateBlock *state_block) = 0; - - virtual void STDMETHODCALLTYPE PushAxisAlignedClip( - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode) = 0; - - virtual void STDMETHODCALLTYPE PopAxisAlignedClip( - ) = 0; - - virtual void STDMETHODCALLTYPE Clear( - const D2D1_COLOR_F *color) = 0; - - virtual void STDMETHODCALLTYPE BeginDraw( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE EndDraw( - D2D1_TAG *tag1, - D2D1_TAG *tag2) = 0; - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_PIXEL_FORMAT* STDMETHODCALLTYPE GetPixelFormat( - D2D1_PIXEL_FORMAT *__ret) = 0; - D2D1_PIXEL_FORMAT STDMETHODCALLTYPE GetPixelFormat( - ) - { + virtual D2D1_PIXEL_FORMAT* STDMETHODCALLTYPE GetPixelFormat(D2D1_PIXEL_FORMAT*) const = 0; + D2D1_PIXEL_FORMAT STDMETHODCALLTYPE GetPixelFormat() const { D2D1_PIXEL_FORMAT __ret; - return *GetPixelFormat(&__ret); + GetPixelFormat(&__ret); + return __ret; } -#else - virtual D2D1_PIXEL_FORMAT STDMETHODCALLTYPE GetPixelFormat( - ) = 0; #endif - virtual void STDMETHODCALLTYPE SetDpi( - float dpi_x, - float dpi_y) = 0; + STDMETHOD_(void, SetDpi)(FLOAT dpiX, FLOAT dpiY) PURE; + STDMETHOD_(void, GetDpi)(FLOAT *dpiX, FLOAT *dpiY) const PURE; - virtual void STDMETHODCALLTYPE GetDpi( - float *dpi_x, - float *dpi_y) = 0; - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize( - D2D1_SIZE_F *__ret) = 0; - D2D1_SIZE_F STDMETHODCALLTYPE GetSize( - ) - { +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_SIZE_F, GetSize)(void) const PURE; +#else + virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize(D2D1_SIZE_F*) const = 0; + D2D1_SIZE_F STDMETHODCALLTYPE GetSize() const { D2D1_SIZE_F __ret; - return *GetSize(&__ret); + GetSize(&__ret); + return __ret; } -#else - virtual D2D1_SIZE_F STDMETHODCALLTYPE GetSize( - ) = 0; #endif -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_SIZE_U* STDMETHODCALLTYPE GetPixelSize( - D2D1_SIZE_U *__ret) = 0; - D2D1_SIZE_U STDMETHODCALLTYPE GetPixelSize( - ) - { +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_SIZE_U, GetPixelSize)(void) const PURE; +#else + virtual D2D1_SIZE_U* STDMETHODCALLTYPE GetPixelSize(D2D1_SIZE_U*) const = 0; + D2D1_SIZE_U STDMETHODCALLTYPE GetPixelSize() const { D2D1_SIZE_U __ret; - return *GetPixelSize(&__ret); + GetPixelSize(&__ret); + return __ret; } -#else - virtual D2D1_SIZE_U STDMETHODCALLTYPE GetPixelSize( - ) = 0; #endif - virtual UINT32 STDMETHODCALLTYPE GetMaximumBitmapSize( - ) = 0; + STDMETHOD_(UINT32, GetMaximumBitmapSize)(void) const PURE; + STDMETHOD_(BOOL, IsSupported)(const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties) const PURE; - virtual WINBOOL STDMETHODCALLTYPE IsSupported( - const D2D1_RENDER_TARGET_PROPERTIES *desc) = 0; + HRESULT CreateBitmap(D2D1_SIZE_U size, const void *srcData, UINT32 pitch, const D2D1_BITMAP_PROPERTIES &bitmapProperties, ID2D1Bitmap **bitmap) { + return CreateBitmap(size, srcData, pitch, &bitmapProperties, bitmap); + } + HRESULT CreateBitmap(D2D1_SIZE_U size, const D2D1_BITMAP_PROPERTIES &bitmapProperties, ID2D1Bitmap **bitmap) { + return CreateBitmap(size, NULL, 0, &bitmapProperties, bitmap); + } + + HRESULT CreateBitmapFromWicBitmap(IWICBitmapSource *wicBitmapSource, const D2D1_BITMAP_PROPERTIES &bitmapProperties, ID2D1Bitmap **bitmap) { + return CreateBitmapFromWicBitmap(wicBitmapSource, &bitmapProperties, bitmap); + } + + HRESULT CreateBitmapFromWicBitmap(IWICBitmapSource *wicBitmapSource, ID2D1Bitmap **bitmap) { + return CreateBitmapFromWicBitmap(wicBitmapSource, NULL, bitmap); + } + + HRESULT CreateBitmapBrush(ID2D1Bitmap *bitmap, ID2D1BitmapBrush **bitmapBrush) { + return CreateBitmapBrush(bitmap, NULL, NULL, bitmapBrush); + } + + HRESULT CreateBitmapBrush(ID2D1Bitmap *bitmap, const D2D1_BITMAP_BRUSH_PROPERTIES &bitmapBrushProperties, ID2D1BitmapBrush **bitmapBrush) { + return CreateBitmapBrush(bitmap, &bitmapBrushProperties, NULL, bitmapBrush); + } + + HRESULT CreateBitmapBrush(ID2D1Bitmap *bitmap, const D2D1_BITMAP_BRUSH_PROPERTIES &bitmapBrushProperties, const D2D1_BRUSH_PROPERTIES &brushProperties, ID2D1BitmapBrush **bitmapBrush) { + return CreateBitmapBrush(bitmap, &bitmapBrushProperties, &brushProperties, bitmapBrush); + } + + HRESULT CreateSolidColorBrush(const D2D1_COLOR_F &color, ID2D1SolidColorBrush **solidColorBrush) { + return CreateSolidColorBrush(&color, NULL, solidColorBrush); + } + + HRESULT CreateSolidColorBrush(const D2D1_COLOR_F &color, const D2D1_BRUSH_PROPERTIES &brushProperties, ID2D1SolidColorBrush **solidColorBrush) { + return CreateSolidColorBrush(&color, &brushProperties, solidColorBrush); + } + + HRESULT CreateGradientStopCollection(const D2D1_GRADIENT_STOP *gradientStops, UINT gradientStopsCount, ID2D1GradientStopCollection **gradientStopCollection) { + return CreateGradientStopCollection(gradientStops, gradientStopsCount, D2D1_GAMMA_2_2, D2D1_EXTEND_MODE_CLAMP, gradientStopCollection); + } + + HRESULT CreateLinearGradientBrush(const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES &linearGradientBrushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1LinearGradientBrush **linearGradientBrush) { + return CreateLinearGradientBrush(&linearGradientBrushProperties, NULL, gradientStopCollection, linearGradientBrush); + } + + HRESULT CreateLinearGradientBrush(const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES &linearGradientBrushProperties, const D2D1_BRUSH_PROPERTIES &brushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1LinearGradientBrush **linearGradientBrush) { + return CreateLinearGradientBrush(&linearGradientBrushProperties, &brushProperties, gradientStopCollection, linearGradientBrush); + } + + HRESULT CreateRadialGradientBrush(const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES &radialGradientBrushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1RadialGradientBrush **radialGradientBrush) { + return CreateRadialGradientBrush(&radialGradientBrushProperties, NULL, gradientStopCollection, radialGradientBrush); + } + + HRESULT CreateRadialGradientBrush(const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES &radialGradientBrushProperties, const D2D1_BRUSH_PROPERTIES &brushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1RadialGradientBrush **radialGradientBrush) { + return CreateRadialGradientBrush(&radialGradientBrushProperties, &brushProperties, gradientStopCollection, radialGradientBrush); + } + + HRESULT CreateCompatibleRenderTarget(ID2D1BitmapRenderTarget **bitmapRenderTarget) { + return CreateCompatibleRenderTarget(NULL, NULL, NULL, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE, bitmapRenderTarget); + } + + HRESULT CreateCompatibleRenderTarget(D2D1_SIZE_F desiredSize, ID2D1BitmapRenderTarget **bitmapRenderTarget) { + return CreateCompatibleRenderTarget(&desiredSize, NULL, NULL, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE, bitmapRenderTarget); + } + + HRESULT CreateCompatibleRenderTarget(D2D1_SIZE_F desiredSize, D2D1_SIZE_U desiredPixelSize, ID2D1BitmapRenderTarget **bitmapRenderTarget){ + return CreateCompatibleRenderTarget(&desiredSize, &desiredPixelSize, NULL, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE, bitmapRenderTarget); + } + + HRESULT CreateCompatibleRenderTarget(D2D1_SIZE_F desiredSize, D2D1_SIZE_U desiredPixelSize, D2D1_PIXEL_FORMAT desiredFormat, ID2D1BitmapRenderTarget **bitmapRenderTarget) { + return CreateCompatibleRenderTarget(&desiredSize, &desiredPixelSize, &desiredFormat, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE, bitmapRenderTarget); + } + + HRESULT CreateCompatibleRenderTarget(D2D1_SIZE_F desiredSize, D2D1_SIZE_U desiredPixelSize, D2D1_PIXEL_FORMAT desiredFormat, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, ID2D1BitmapRenderTarget **bitmapRenderTarget) { + return CreateCompatibleRenderTarget(&desiredSize, &desiredPixelSize, &desiredFormat, options, bitmapRenderTarget); + } + + HRESULT CreateLayer(D2D1_SIZE_F size, ID2D1Layer **layer) { + return CreateLayer(&size, layer); + } + + HRESULT CreateLayer(ID2D1Layer **layer) { + return CreateLayer(NULL, layer); + } + + void DrawRectangle(const D2D1_RECT_F &rect, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) { + DrawRectangle(&rect, brush, strokeWidth, strokeStyle); + } + + void FillRectangle(const D2D1_RECT_F &rect, ID2D1Brush *brush) { + FillRectangle(&rect, brush); + } + + void DrawRoundedRectangle(const D2D1_ROUNDED_RECT &roundedRect, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) { + DrawRoundedRectangle(&roundedRect, brush, strokeWidth, strokeStyle); + } + + void FillRoundedRectangle(const D2D1_ROUNDED_RECT &roundedRect, ID2D1Brush *brush) { + FillRoundedRectangle(&roundedRect, brush); + } + + void DrawEllipse(const D2D1_ELLIPSE &ellipse, ID2D1Brush *brush, FLOAT strokeWidth = 1.0f, ID2D1StrokeStyle *strokeStyle = NULL) { + DrawEllipse(&ellipse, brush, strokeWidth, strokeStyle); + } + + void FillEllipse(const D2D1_ELLIPSE &ellipse, ID2D1Brush *brush) { + FillEllipse(&ellipse, brush); + } + + void FillOpacityMask(ID2D1Bitmap *opacityMask, ID2D1Brush *brush, D2D1_OPACITY_MASK_CONTENT content, const D2D1_RECT_F &destinationRectangle, const D2D1_RECT_F &sourceRectangle) { + FillOpacityMask(opacityMask, brush, content, &destinationRectangle, &sourceRectangle); + } + + void DrawBitmap(ID2D1Bitmap *bitmap, const D2D1_RECT_F &destinationRectangle, FLOAT opacity = 1.0f, D2D1_BITMAP_INTERPOLATION_MODE interpolationMode = D2D1_BITMAP_INTERPOLATION_MODE_LINEAR, const D2D1_RECT_F *sourceRectangle = NULL) { + DrawBitmap(bitmap, &destinationRectangle, opacity, interpolationMode, sourceRectangle); + } + + void DrawBitmap(ID2D1Bitmap *bitmap, const D2D1_RECT_F &destinationRectangle, FLOAT opacity, D2D1_BITMAP_INTERPOLATION_MODE interpolationMode, const D2D1_RECT_F &sourceRectangle) { + DrawBitmap(bitmap, &destinationRectangle, opacity, interpolationMode, &sourceRectangle); + } + + void SetTransform(const D2D1_MATRIX_3X2_F &transform) { + SetTransform(&transform); + } + + void PushLayer(const D2D1_LAYER_PARAMETERS &layerParameters, ID2D1Layer *layer) { + PushLayer(&layerParameters, layer); + } + + void PushAxisAlignedClip(const D2D1_RECT_F &clipRect, D2D1_ANTIALIAS_MODE antialiasMode) { + return PushAxisAlignedClip(&clipRect, antialiasMode); + } + + void Clear(const D2D1_COLOR_F &clearColor) { + return Clear(&clearColor); + } + + void DrawText(const WCHAR *string, UINT stringLength, IDWriteTextFormat *textFormat, const D2D1_RECT_F &layoutRect, ID2D1Brush *defaultForegroundBrush, D2D1_DRAW_TEXT_OPTIONS options = D2D1_DRAW_TEXT_OPTIONS_NONE, DWRITE_MEASURING_MODE measuringMode = DWRITE_MEASURING_MODE_NATURAL) { + return DrawText(string, stringLength, textFormat, &layoutRect, defaultForegroundBrush, options, measuringMode); + } + + BOOL IsSupported(const D2D1_RENDER_TARGET_PROPERTIES &renderTargetProperties) const { + return IsSupported(&renderTargetProperties); + } }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1RenderTarget, 0x2cd90694, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif + #else + typedef struct ID2D1RenderTargetVtbl { - BEGIN_INTERFACE + ID2D1ResourceVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1RenderTarget *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1RenderTarget *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1RenderTarget *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1RenderTarget *This, - ID2D1Factory **factory); - - /*** ID2D1RenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateBitmap)( - ID2D1RenderTarget *This, - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapFromWicBitmap)( - ID2D1RenderTarget *This, - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateSharedBitmap)( - ID2D1RenderTarget *This, - REFIID iid, - void *data, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapBrush)( - ID2D1RenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateSolidColorBrush)( - ID2D1RenderTarget *This, - const D2D1_COLOR_F *color, - const D2D1_BRUSH_PROPERTIES *desc, - ID2D1SolidColorBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateGradientStopCollection)( - ID2D1RenderTarget *This, - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_GAMMA gamma, - D2D1_EXTEND_MODE extend_mode, - ID2D1GradientStopCollection **gradient); - - HRESULT (STDMETHODCALLTYPE *CreateLinearGradientBrush)( - ID2D1RenderTarget *This, - const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1LinearGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateRadialGradientBrush)( - ID2D1RenderTarget *This, - const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1RadialGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateCompatibleRenderTarget)( - ID2D1RenderTarget *This, - const D2D1_SIZE_F *size, - const D2D1_SIZE_U *pixel_size, - const D2D1_PIXEL_FORMAT *format, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - ID2D1BitmapRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateLayer)( - ID2D1RenderTarget *This, - const D2D1_SIZE_F *size, - ID2D1Layer **layer); - - HRESULT (STDMETHODCALLTYPE *CreateMesh)( - ID2D1RenderTarget *This, - ID2D1Mesh **mesh); - - void (STDMETHODCALLTYPE *DrawLine)( - ID2D1RenderTarget *This, - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *DrawRectangle)( - ID2D1RenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRectangle)( - ID2D1RenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawRoundedRectangle)( - ID2D1RenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRoundedRectangle)( - ID2D1RenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawEllipse)( - ID2D1RenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillEllipse)( - ID2D1RenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawGeometry)( - ID2D1RenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillGeometry)( - ID2D1RenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush); - - void (STDMETHODCALLTYPE *FillMesh)( - ID2D1RenderTarget *This, - ID2D1Mesh *mesh, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *FillOpacityMask)( - ID2D1RenderTarget *This, - ID2D1Bitmap *mask, - ID2D1Brush *brush, - D2D1_OPACITY_MASK_CONTENT content, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawBitmap)( - ID2D1RenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawText)( - ID2D1RenderTarget *This, - const WCHAR *string, - UINT32 string_len, - IDWriteTextFormat *text_format, - const D2D1_RECT_F *layout_rect, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *DrawTextLayout)( - ID2D1RenderTarget *This, - D2D1_POINT_2F origin, - IDWriteTextLayout *layout, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options); - - void (STDMETHODCALLTYPE *DrawGlyphRun)( - ID2D1RenderTarget *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1RenderTarget *This, - const D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1RenderTarget *This, - D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *SetAntialiasMode)( - ID2D1RenderTarget *This, - D2D1_ANTIALIAS_MODE antialias_mode); - - D2D1_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetAntialiasMode)( - ID2D1RenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextAntialiasMode)( - ID2D1RenderTarget *This, - D2D1_TEXT_ANTIALIAS_MODE antialias_mode); - - D2D1_TEXT_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetTextAntialiasMode)( - ID2D1RenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1RenderTarget *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1RenderTarget *This, - IDWriteRenderingParams **text_rendering_params); - - void (STDMETHODCALLTYPE *SetTags)( - ID2D1RenderTarget *This, - D2D1_TAG tag1, - D2D1_TAG tag2); - - void (STDMETHODCALLTYPE *GetTags)( - ID2D1RenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *PushLayer)( - ID2D1RenderTarget *This, - const D2D1_LAYER_PARAMETERS *layer_parameters, - ID2D1Layer *layer); - - void (STDMETHODCALLTYPE *PopLayer)( - ID2D1RenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *Flush)( - ID2D1RenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *SaveDrawingState)( - ID2D1RenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *RestoreDrawingState)( - ID2D1RenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *PushAxisAlignedClip)( - ID2D1RenderTarget *This, - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode); - - void (STDMETHODCALLTYPE *PopAxisAlignedClip)( - ID2D1RenderTarget *This); - - void (STDMETHODCALLTYPE *Clear)( - ID2D1RenderTarget *This, - const D2D1_COLOR_F *color); - - void (STDMETHODCALLTYPE *BeginDraw)( - ID2D1RenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *EndDraw)( - ID2D1RenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1RenderTarget *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *SetDpi)( - ID2D1RenderTarget *This, - float dpi_x, - float dpi_y); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1RenderTarget *This, - float *dpi_x, - float *dpi_y); - - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1RenderTarget *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1RenderTarget *This, - D2D1_SIZE_U *__ret); - - UINT32 (STDMETHODCALLTYPE *GetMaximumBitmapSize)( - ID2D1RenderTarget *This); - - WINBOOL (STDMETHODCALLTYPE *IsSupported)( - ID2D1RenderTarget *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc); - - END_INTERFACE + STDMETHOD(CreateBitmap)(ID2D1RenderTarget *This, D2D1_SIZE_U size, const void *srcData, UINT32 pitch, const D2D1_BITMAP_PROPERTIES *bitmapProperties, ID2D1Bitmap **bitmap) PURE; + STDMETHOD(CreateBitmapFromWicBitmap)(ID2D1RenderTarget *This, IWICBitmapSource *wicBitmapSource, const D2D1_BITMAP_PROPERTIES *bitmapProperties, ID2D1Bitmap **bitmap) PURE; + STDMETHOD(CreateSharedBitmap)(ID2D1RenderTarget *This, REFIID riid, void *data, const D2D1_BITMAP_PROPERTIES *bitmapProperties, ID2D1Bitmap **bitmap) PURE; + STDMETHOD(CreateBitmapBrush)(ID2D1RenderTarget *This, ID2D1Bitmap *bitmap, const D2D1_BITMAP_BRUSH_PROPERTIES *bitmapBrushProperties, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1BitmapBrush **bitmapBrush) PURE; + STDMETHOD(CreateSolidColorBrush)(ID2D1RenderTarget *This, const D2D1_COLOR_F *color, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1SolidColorBrush **solidColorBrush) PURE; + STDMETHOD(CreateGradientStopCollection)(ID2D1RenderTarget *This, const D2D1_GRADIENT_STOP *gradientStops, UINT gradientStopsCount, D2D1_GAMMA colorInterpolationGamma, D2D1_EXTEND_MODE extendMode, ID2D1GradientStopCollection **gradientStopCollection) PURE; + STDMETHOD(CreateLinearGradientBrush)(ID2D1RenderTarget *This, const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *linearGradientBrushProperties, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1LinearGradientBrush **linearGradientBrush) PURE; + STDMETHOD(CreateRadialGradientBrush)(ID2D1RenderTarget *This, const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *radialGradientBrushProperties, const D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1GradientStopCollection *gradientStopCollection, ID2D1RadialGradientBrush **radialGradientBrush) PURE; + STDMETHOD(CreateCompatibleRenderTarget)(ID2D1RenderTarget *This, const D2D1_SIZE_F *desiredSize, const D2D1_SIZE_U *desiredPixelSize, const D2D1_PIXEL_FORMAT *desiredFormat, D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, ID2D1BitmapRenderTarget **bitmapRenderTarget) PURE; + STDMETHOD(CreateLayer)(ID2D1RenderTarget *This, const D2D1_SIZE_F *size, ID2D1Layer **layer) PURE; + STDMETHOD(CreateMesh)(ID2D1RenderTarget *This, ID2D1Mesh **mesh) PURE; + STDMETHOD_(void, DrawLine)(ID2D1RenderTarget *This, D2D1_POINT_2F point0, D2D1_POINT_2F point1, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD_(void, DrawRectangle)(ID2D1RenderTarget *This, const D2D1_RECT_F *rect, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD_(void, FillRectangle)(ID2D1RenderTarget *This, const D2D1_RECT_F *rect, ID2D1Brush *brush) PURE; + STDMETHOD_(void, DrawRoundedRectangle)(ID2D1RenderTarget *This, const D2D1_ROUNDED_RECT *roundedRect, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD_(void, FillRoundedRectangle)(ID2D1RenderTarget *This, const D2D1_ROUNDED_RECT *roundedRect, ID2D1Brush *brush) PURE; + STDMETHOD_(void, DrawEllipse)(ID2D1RenderTarget *This, const D2D1_ELLIPSE *ellipse, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD_(void, FillEllipse)(ID2D1RenderTarget *This, const D2D1_ELLIPSE *ellipse, ID2D1Brush *brush) PURE; + STDMETHOD_(void, DrawGeometry)(ID2D1RenderTarget *This, ID2D1Geometry *geometry, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD_(void, FillGeometry)(ID2D1RenderTarget *This, ID2D1Geometry *geometry, ID2D1Brush *brush, ID2D1Brush *opacityBrush) PURE; + STDMETHOD_(void, FillMesh)(ID2D1RenderTarget *This, ID2D1Mesh *mesh, ID2D1Brush *brush) PURE; + STDMETHOD_(void, FillOpacityMask)(ID2D1RenderTarget *This, ID2D1Bitmap *opacityMask, ID2D1Brush *brush, D2D1_OPACITY_MASK_CONTENT content, const D2D1_RECT_F *destinationRectangle, const D2D1_RECT_F *sourceRectangle) PURE; + STDMETHOD_(void, DrawBitmap)(ID2D1RenderTarget *This, ID2D1Bitmap *bitmap, const D2D1_RECT_F *destinationRectangle, FLOAT opacity, D2D1_BITMAP_INTERPOLATION_MODE interpolationMode, const D2D1_RECT_F *sourceRectangle) PURE; + STDMETHOD_(void, DrawText)(ID2D1RenderTarget *This, const WCHAR *string, UINT stringLength, IDWriteTextFormat *textFormat, const D2D1_RECT_F *layoutRect, ID2D1Brush *defaultForegroundBrush, D2D1_DRAW_TEXT_OPTIONS options, DWRITE_MEASURING_MODE measuringMode) PURE; + STDMETHOD_(void, DrawTextLayout)(ID2D1RenderTarget *This, D2D1_POINT_2F origin, IDWriteTextLayout *textLayout, ID2D1Brush *defaultForegroundBrush, D2D1_DRAW_TEXT_OPTIONS options) PURE; + STDMETHOD_(void, DrawGlyphRun)(ID2D1RenderTarget *This, D2D1_POINT_2F baselineOrigin, const DWRITE_GLYPH_RUN *glyphRun, ID2D1Brush *foregroundBrush, DWRITE_MEASURING_MODE measuringMode) PURE; + STDMETHOD_(void, SetTransform)(ID2D1RenderTarget *This, const D2D1_MATRIX_3X2_F *transform) PURE; + STDMETHOD_(void, GetTransform)(ID2D1RenderTarget *This, D2D1_MATRIX_3X2_F *transform) PURE; + STDMETHOD_(void, SetAntialiasMode)(ID2D1RenderTarget *This, D2D1_ANTIALIAS_MODE antialiasMode) PURE; + STDMETHOD_(D2D1_ANTIALIAS_MODE, GetAntialiasMode)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(void, SetTextAntialiasMode)(ID2D1RenderTarget *This, D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode) PURE; + STDMETHOD_(D2D1_TEXT_ANTIALIAS_MODE, GetTextAntialiasMode)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(void, SetTextRenderingParams)(ID2D1RenderTarget *This, IDWriteRenderingParams *textRenderingParams) PURE; + STDMETHOD_(void, GetTextRenderingParams)(ID2D1RenderTarget *This, IDWriteRenderingParams **textRenderingParams) PURE; + STDMETHOD_(void, SetTags)(ID2D1RenderTarget *This, D2D1_TAG tag1, D2D1_TAG tag2) PURE; + STDMETHOD_(void, GetTags)(ID2D1RenderTarget *This, D2D1_TAG *tag1, D2D1_TAG *tag2) PURE; + STDMETHOD_(void, PushLayer)(ID2D1RenderTarget *This, const D2D1_LAYER_PARAMETERS *layerParameters, ID2D1Layer *layer) PURE; + STDMETHOD_(void, PopLayer)(ID2D1RenderTarget *This) PURE; + STDMETHOD(Flush)(ID2D1RenderTarget *This, D2D1_TAG *tag1, D2D1_TAG *tag2) PURE; + STDMETHOD_(void, SaveDrawingState)(ID2D1RenderTarget *This, ID2D1DrawingStateBlock *drawingStateBlock) PURE; + STDMETHOD_(void, RestoreDrawingState)(ID2D1RenderTarget *This, ID2D1DrawingStateBlock *drawingStateBlock) PURE; + STDMETHOD_(void, PushAxisAlignedClip)(ID2D1RenderTarget *This, const D2D1_RECT_F *clipRect, D2D1_ANTIALIAS_MODE antialiasMode) PURE; + STDMETHOD_(void, PopAxisAlignedClip)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(void, Clear)(ID2D1RenderTarget *This, const D2D1_COLOR_F *clearColor) PURE; + STDMETHOD_(void, BeginDraw)(ID2D1RenderTarget *This) PURE; + STDMETHOD(EndDraw)(ID2D1RenderTarget *This, D2D1_TAG *tag1, D2D1_TAG *tag2) PURE; + STDMETHOD_(D2D1_PIXEL_FORMAT, GetPixelFormat)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(void, SetDpi)(ID2D1RenderTarget *This, FLOAT dpiX, FLOAT dpiY) PURE; + STDMETHOD_(void, GetDpi)(ID2D1RenderTarget *This, FLOAT *dpiX, FLOAT *dpiY) PURE; + STDMETHOD_(D2D1_SIZE_F, GetSize)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(D2D1_SIZE_U, GetPixelSize)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(UINT32, GetMaximumBitmapSize)(ID2D1RenderTarget *This) PURE; + STDMETHOD_(BOOL, IsSupported)(ID2D1RenderTarget *This, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties) PURE; } ID2D1RenderTargetVtbl; interface ID2D1RenderTarget { - CONST_VTBL ID2D1RenderTargetVtbl* lpVtbl; + const ID2D1RenderTargetVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1RenderTarget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1RenderTarget_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1RenderTarget_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1RenderTarget_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1RenderTarget methods ***/ -#define ID2D1RenderTarget_CreateBitmap(This,size,src_data,pitch,desc,bitmap) (This)->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap) -#define ID2D1RenderTarget_CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) (This)->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) -#define ID2D1RenderTarget_CreateSharedBitmap(This,iid,data,desc,bitmap) (This)->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap) -#define ID2D1RenderTarget_CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) (This)->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) -#define ID2D1RenderTarget_CreateSolidColorBrush(This,color,desc,brush) (This)->lpVtbl->CreateSolidColorBrush(This,color,desc,brush) -#define ID2D1RenderTarget_CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) (This)->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) -#define ID2D1RenderTarget_CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1RenderTarget_CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1RenderTarget_CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) (This)->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) -#define ID2D1RenderTarget_CreateLayer(This,size,layer) (This)->lpVtbl->CreateLayer(This,size,layer) -#define ID2D1RenderTarget_CreateMesh(This,mesh) (This)->lpVtbl->CreateMesh(This,mesh) -#define ID2D1RenderTarget_DrawLine(This,p0,p1,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style) -#define ID2D1RenderTarget_DrawRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1RenderTarget_FillRectangle(This,rect,brush) (This)->lpVtbl->FillRectangle(This,rect,brush) -#define ID2D1RenderTarget_DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1RenderTarget_FillRoundedRectangle(This,rect,brush) (This)->lpVtbl->FillRoundedRectangle(This,rect,brush) -#define ID2D1RenderTarget_DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) -#define ID2D1RenderTarget_FillEllipse(This,ellipse,brush) (This)->lpVtbl->FillEllipse(This,ellipse,brush) -#define ID2D1RenderTarget_DrawGeometry(This,geometry,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style) -#define ID2D1RenderTarget_FillGeometry(This,geometry,brush,opacity_brush) (This)->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush) -#define ID2D1RenderTarget_FillMesh(This,mesh,brush) (This)->lpVtbl->FillMesh(This,mesh,brush) -#define ID2D1RenderTarget_FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) (This)->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) -#define ID2D1RenderTarget_DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) (This)->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) -#define ID2D1RenderTarget_DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) (This)->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) -#define ID2D1RenderTarget_DrawTextLayout(This,origin,layout,brush,options) (This)->lpVtbl->DrawTextLayout(This,origin,layout,brush,options) -#define ID2D1RenderTarget_DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) (This)->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) -#define ID2D1RenderTarget_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1RenderTarget_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -#define ID2D1RenderTarget_SetAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetAntialiasMode(This,antialias_mode) -#define ID2D1RenderTarget_GetAntialiasMode(This) (This)->lpVtbl->GetAntialiasMode(This) -#define ID2D1RenderTarget_SetTextAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetTextAntialiasMode(This,antialias_mode) -#define ID2D1RenderTarget_GetTextAntialiasMode(This) (This)->lpVtbl->GetTextAntialiasMode(This) -#define ID2D1RenderTarget_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1RenderTarget_GetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->GetTextRenderingParams(This,text_rendering_params) -#define ID2D1RenderTarget_SetTags(This,tag1,tag2) (This)->lpVtbl->SetTags(This,tag1,tag2) -#define ID2D1RenderTarget_GetTags(This,tag1,tag2) (This)->lpVtbl->GetTags(This,tag1,tag2) -#define ID2D1RenderTarget_PushLayer(This,layer_parameters,layer) (This)->lpVtbl->PushLayer(This,layer_parameters,layer) -#define ID2D1RenderTarget_PopLayer(This) (This)->lpVtbl->PopLayer(This) -#define ID2D1RenderTarget_Flush(This,tag1,tag2) (This)->lpVtbl->Flush(This,tag1,tag2) -#define ID2D1RenderTarget_SaveDrawingState(This,state_block) (This)->lpVtbl->SaveDrawingState(This,state_block) -#define ID2D1RenderTarget_RestoreDrawingState(This,state_block) (This)->lpVtbl->RestoreDrawingState(This,state_block) -#define ID2D1RenderTarget_PushAxisAlignedClip(This,clip_rect,antialias_mode) (This)->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode) -#define ID2D1RenderTarget_PopAxisAlignedClip(This) (This)->lpVtbl->PopAxisAlignedClip(This) -#define ID2D1RenderTarget_Clear(This,color) (This)->lpVtbl->Clear(This,color) -#define ID2D1RenderTarget_BeginDraw(This) (This)->lpVtbl->BeginDraw(This) -#define ID2D1RenderTarget_EndDraw(This,tag1,tag2) (This)->lpVtbl->EndDraw(This,tag1,tag2) -#define ID2D1RenderTarget_GetPixelFormat(This) ID2D1RenderTarget_GetPixelFormat_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1RenderTarget_SetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->SetDpi(This,dpi_x,dpi_y) -#define ID2D1RenderTarget_GetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDpi(This,dpi_x,dpi_y) -#define ID2D1RenderTarget_GetSize(This) ID2D1RenderTarget_GetSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1RenderTarget_GetPixelSize(This) ID2D1RenderTarget_GetPixelSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1RenderTarget_GetMaximumBitmapSize(This) (This)->lpVtbl->GetMaximumBitmapSize(This) -#define ID2D1RenderTarget_IsSupported(This,desc) (This)->lpVtbl->IsSupported(This,desc) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1RenderTarget_QueryInterface(ID2D1RenderTarget* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1RenderTarget_AddRef(ID2D1RenderTarget* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1RenderTarget_Release(ID2D1RenderTarget* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1RenderTarget_GetFactory(ID2D1RenderTarget* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1RenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateBitmap(ID2D1RenderTarget* This,D2D1_SIZE_U size,const void *src_data,UINT32 pitch,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateBitmapFromWicBitmap(ID2D1RenderTarget* This,IWICBitmapSource *bitmap_source,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateSharedBitmap(ID2D1RenderTarget* This,REFIID iid,void *data,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateBitmapBrush(ID2D1RenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1BitmapBrush **brush) { - return This->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateSolidColorBrush(ID2D1RenderTarget* This,const D2D1_COLOR_F *color,const D2D1_BRUSH_PROPERTIES *desc,ID2D1SolidColorBrush **brush) { - return This->lpVtbl->CreateSolidColorBrush(This,color,desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateGradientStopCollection(ID2D1RenderTarget* This,const D2D1_GRADIENT_STOP *stops,UINT32 stop_count,D2D1_GAMMA gamma,D2D1_EXTEND_MODE extend_mode,ID2D1GradientStopCollection **gradient) { - return This->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateLinearGradientBrush(ID2D1RenderTarget* This,const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1LinearGradientBrush **brush) { - return This->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateRadialGradientBrush(ID2D1RenderTarget* This,const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1RadialGradientBrush **brush) { - return This->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateCompatibleRenderTarget(ID2D1RenderTarget* This,const D2D1_SIZE_F *size,const D2D1_SIZE_U *pixel_size,const D2D1_PIXEL_FORMAT *format,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options,ID2D1BitmapRenderTarget **render_target) { - return This->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateLayer(ID2D1RenderTarget* This,const D2D1_SIZE_F *size,ID2D1Layer **layer) { - return This->lpVtbl->CreateLayer(This,size,layer); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_CreateMesh(ID2D1RenderTarget* This,ID2D1Mesh **mesh) { - return This->lpVtbl->CreateMesh(This,mesh); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawLine(ID2D1RenderTarget* This,D2D1_POINT_2F p0,D2D1_POINT_2F p1,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawRectangle(ID2D1RenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1RenderTarget_FillRectangle(ID2D1RenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawRoundedRectangle(ID2D1RenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1RenderTarget_FillRoundedRectangle(ID2D1RenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRoundedRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawEllipse(ID2D1RenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1RenderTarget_FillEllipse(ID2D1RenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush) { - This->lpVtbl->FillEllipse(This,ellipse,brush); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawGeometry(ID2D1RenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1RenderTarget_FillGeometry(ID2D1RenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,ID2D1Brush *opacity_brush) { - This->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush); -} -static __WIDL_INLINE void ID2D1RenderTarget_FillMesh(ID2D1RenderTarget* This,ID2D1Mesh *mesh,ID2D1Brush *brush) { - This->lpVtbl->FillMesh(This,mesh,brush); -} -static __WIDL_INLINE void ID2D1RenderTarget_FillOpacityMask(ID2D1RenderTarget* This,ID2D1Bitmap *mask,ID2D1Brush *brush,D2D1_OPACITY_MASK_CONTENT content,const D2D1_RECT_F *dst_rect,const D2D1_RECT_F *src_rect) { - This->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawBitmap(ID2D1RenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_RECT_F *dst_rect,float opacity,D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode,const D2D1_RECT_F *src_rect) { - This->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawText(ID2D1RenderTarget* This,const WCHAR *string,UINT32 string_len,IDWriteTextFormat *text_format,const D2D1_RECT_F *layout_rect,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawTextLayout(ID2D1RenderTarget* This,D2D1_POINT_2F origin,IDWriteTextLayout *layout,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options) { - This->lpVtbl->DrawTextLayout(This,origin,layout,brush,options); -} -static __WIDL_INLINE void ID2D1RenderTarget_DrawGlyphRun(ID2D1RenderTarget* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,ID2D1Brush *brush,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode); -} -static __WIDL_INLINE void ID2D1RenderTarget_SetTransform(ID2D1RenderTarget* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1RenderTarget_GetTransform(ID2D1RenderTarget* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1RenderTarget_SetAntialiasMode(ID2D1RenderTarget* This,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_ANTIALIAS_MODE ID2D1RenderTarget_GetAntialiasMode(ID2D1RenderTarget* This) { - return This->lpVtbl->GetAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1RenderTarget_SetTextAntialiasMode(ID2D1RenderTarget* This,D2D1_TEXT_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetTextAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_TEXT_ANTIALIAS_MODE ID2D1RenderTarget_GetTextAntialiasMode(ID2D1RenderTarget* This) { - return This->lpVtbl->GetTextAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1RenderTarget_SetTextRenderingParams(ID2D1RenderTarget* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1RenderTarget_GetTextRenderingParams(ID2D1RenderTarget* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1RenderTarget_SetTags(ID2D1RenderTarget* This,D2D1_TAG tag1,D2D1_TAG tag2) { - This->lpVtbl->SetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1RenderTarget_GetTags(ID2D1RenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - This->lpVtbl->GetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1RenderTarget_PushLayer(ID2D1RenderTarget* This,const D2D1_LAYER_PARAMETERS *layer_parameters,ID2D1Layer *layer) { - This->lpVtbl->PushLayer(This,layer_parameters,layer); -} -static __WIDL_INLINE void ID2D1RenderTarget_PopLayer(ID2D1RenderTarget* This) { - This->lpVtbl->PopLayer(This); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_Flush(ID2D1RenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->Flush(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1RenderTarget_SaveDrawingState(ID2D1RenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->SaveDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1RenderTarget_RestoreDrawingState(ID2D1RenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->RestoreDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1RenderTarget_PushAxisAlignedClip(ID2D1RenderTarget* This,const D2D1_RECT_F *clip_rect,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode); -} -static __WIDL_INLINE void ID2D1RenderTarget_PopAxisAlignedClip(ID2D1RenderTarget* This) { - This->lpVtbl->PopAxisAlignedClip(This); -} -static __WIDL_INLINE void ID2D1RenderTarget_Clear(ID2D1RenderTarget* This,const D2D1_COLOR_F *color) { - This->lpVtbl->Clear(This,color); -} -static __WIDL_INLINE void ID2D1RenderTarget_BeginDraw(ID2D1RenderTarget* This) { - This->lpVtbl->BeginDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1RenderTarget_EndDraw(ID2D1RenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->EndDraw(This,tag1,tag2); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1RenderTarget_GetPixelFormat(ID2D1RenderTarget* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1RenderTarget_SetDpi(ID2D1RenderTarget* This,float dpi_x,float dpi_y) { - This->lpVtbl->SetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE void ID2D1RenderTarget_GetDpi(ID2D1RenderTarget* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE D2D1_SIZE_F ID2D1RenderTarget_GetSize(ID2D1RenderTarget* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1RenderTarget_GetPixelSize(ID2D1RenderTarget* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE UINT32 ID2D1RenderTarget_GetMaximumBitmapSize(ID2D1RenderTarget* This) { - return This->lpVtbl->GetMaximumBitmapSize(This); -} -static __WIDL_INLINE WINBOOL ID2D1RenderTarget_IsSupported(ID2D1RenderTarget* This,const D2D1_RENDER_TARGET_PROPERTIES *desc) { - return This->lpVtbl->IsSupported(This,desc); -} -#endif -#endif +#define ID2D1RenderTarget_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1RenderTarget_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1RenderTarget_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1RenderTarget_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1RenderTarget_BeginDraw(this) (this)->lpVtbl->BeginDraw(this) +#define ID2D1RenderTarget_Clear(this,A) (this)->lpVtbl->Clear(this,A) +#define ID2D1RenderTarget_CreateBitmap(this,A,B,C,D,E) (this)->lpVtbl->CreateBitmap(this,A,B,C,D,E) +#define ID2D1RenderTarget_CreateBitmapBrush(this,A,B) (this)->lpVtbl->CreateBitmapBrush(this,A,B) +#define ID2D1RenderTarget_CreateBitmapFromWicBitmap(this,A,B,C) (this)->lpVtbl->CreateBitmapFromWicBitmap(this,A,B,C) +#define ID2D1RenderTarget_CreateCompatibleRenderTarget(this,A,B,C,D,E) (this)->lpVtbl->CreateCompatibleRenderTarget(this,A,B,C,D,E) +#define ID2D1RenderTarget_CreateGradientStopCollection(this,A,B,C) (this)->lpVtbl->CreateGradientStopCollection(this,A,B,C) +#define ID2D1RenderTarget_CreateLayer(this,A,B) (this)->lpVtbl->CreateLayer(this,A,B) +#define ID2D1RenderTarget_CreateLinearGradientBrush(this,A,B,C,D) (this)->lpVtbl->CreateLinearGradientBrush(this,A,B,C,D) +#define ID2D1RenderTarget_CreateMesh(this,A) (this)->lpVtbl->CreateMesh(this,A) +#define ID2D1RenderTarget_CreateRadialGradientBrush(this,A,B,C,D) (this)->lpVtbl->CreateRadialGradientBrush(this,A,B,C,D) +#define ID2D1RenderTarget_CreateSharedBitmap(this,A,B,C,D) (this)->lpVtbl->CreateSharedBitmap(this,A,B,C,D) +#define ID2D1RenderTarget_CreateSolidColorBrush(this,A,B,C) (this)->lpVtbl->CreateSolidColorBrush(this,A,B,C) +#define ID2D1RenderTarget_DrawBitmap(this,A,B,C,D,E) (this)->lpVtbl->DrawBitmap(this,A,B,C,D,E) +#define ID2D1RenderTarget_DrawEllipse(this,A,B,C,D) (this)->lpVtbl->DrawEllipse(this,A,B,C,D) +#define ID2D1RenderTarget_DrawGeometry(this,A,B,C,D) (this)->lpVtbl->DrawGeometry(this,A,B,C,D) +#define ID2D1RenderTarget_DrawGlyphRun(this,A,B,C,D) (this)->lpVtbl->DrawGlyphRun(this,A,B,C,D) +#define ID2D1RenderTarget_DrawLine(this,A,B,C,D,E) (this)->lpVtbl->DrawLine(this,A,B,C,D,E) +#define ID2D1RenderTarget_DrawRectangle(this,A,B,C,D) (this)->lpVtbl->DrawRectangle(this,A,B,C,D) +#define ID2D1RenderTarget_DrawRoundedRectangle(this,A,B,C,D) (this)->lpVtbl->DrawRoundedRectangle(this,A,B,C,D) +#define ID2D1RenderTarget_DrawText(this,A,B,C,D,E,F,G) (this)->lpVtbl->DrawText(this,A,B,C,D,E,F,G) +#define ID2D1RenderTarget_DrawTextLayout(this,A,B,C,D) (this)->lpVtbl->DrawTextLayout(this,A,B,C,D) +#define ID2D1RenderTarget_EndDraw(this,A,B) (this)->lpVtbl->EndDraw(this,A,B) +#define ID2D1RenderTarget_FillEllipse(this,A,B) (this)->lpVtbl->FillEllipse(this,A,B) +#define ID2D1RenderTarget_FillGeometry(this,A,B,C) (this)->lpVtbl->FillGeometry(this,A,B,C) +#define ID2D1RenderTarget_FillMesh(this,A,B) (this)->lpVtbl->FillMesh(this,A,B) +#define ID2D1RenderTarget_FillOpacityMask(this,A,B,C,D,E) (this)->lpVtbl->FillOpacityMask(this,A,B,C,D,E) +#define ID2D1RenderTarget_FillRectangle(this,A,B) (this)->lpVtbl->FillRectangle(this,A,B) +#define ID2D1RenderTarget_FillRoundedRectangle(this,A,B) (this)->lpVtbl->FillRoundedRectangle(this,A,B) +#define ID2D1RenderTarget_Flush(this,A,B) (this)->lpVtbl->Flush(this,A,B) +#define ID2D1RenderTarget_GetAntialiasMode(this) (this)->lpVtbl->GetAntialiasMode(this) +#define ID2D1RenderTarget_GetDpi(this,A,B) (this)->lpVtbl->GetDpi(this,A,B) +#define ID2D1RenderTarget_GetMaximumBitmapSize(this) (this)->lpVtbl->GetMaximumBitmapSize(this) +#define ID2D1RenderTarget_GetPixelFormat(this) (this)->lpVtbl->GetPixelFormat(this) +#define ID2D1RenderTarget_GetPixelSize(this) (this)->lpVtbl->GetPixelSize(this) +#define ID2D1RenderTarget_GetSize(this) (this)->lpVtbl->GetSize(this) +#define ID2D1RenderTarget_GetTags(this,A,B) (this)->lpVtbl->GetTags(this,A,B) +#define ID2D1RenderTarget_GetTextAntialiasMode(this) (this)->lpVtbl->GetTextAntialiasMode(this) +#define ID2D1RenderTarget_GetTextRenderingParams(this,A) (this)->lpVtbl->GetTextRenderingParams(this,A) +#define ID2D1RenderTarget_GetTransform(this,A) (this)->lpVtbl->GetTransform(this,A) +#define ID2D1RenderTarget_IsSupported(this,A) (this)->lpVtbl->IsSupported(this,A) +#define ID2D1RenderTarget_PopAxisAlignedClip(this) (this)->lpVtbl->PopAxisAlignedClip(this) +#define ID2D1RenderTarget_PopLayer(this) (this)->lpVtbl->PopLayer(this) +#define ID2D1RenderTarget_PushAxisAlignedClip(this,A,B) (this)->lpVtbl->PushAxisAlignedClip(this,A,B) +#define ID2D1RenderTarget_PushLayer(this,A,B) (this)->lpVtbl->PushLayer(this,A,B) +#define ID2D1RenderTarget_RestoreDrawingState(this,A) (this)->lpVtbl->RestoreDrawingState(this,A) +#define ID2D1RenderTarget_SaveDrawingState(this,A) (this)->lpVtbl->SaveDrawingState(this,A) +#define ID2D1RenderTarget_SetAntialiasMode(this,A) (this)->lpVtbl->SetAntialiasMode(this,A) +#define ID2D1RenderTarget_SetDpi(this,A,B) (this)->lpVtbl->SetDpi(this,A,B) +#define ID2D1RenderTarget_SetTags(this,A,B) (this)->lpVtbl->SetTags(this,A,B) +#define ID2D1RenderTarget_SetTextAntialiasMode(this,A) (this)->lpVtbl->SetTextAntialiasMode(this,A) +#define ID2D1RenderTarget_SetTextRenderingParams(this,A) (this)->lpVtbl->SetTextRenderingParams(this,A) +#define ID2D1RenderTarget_SetTransform(this,A) (this)->lpVtbl->SetTransform(this,A) #endif +DEFINE_GUID(IID_ID2D1Geometry, 0x2cd906a1,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); -#endif /* __ID2D1RenderTarget_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1BitmapRenderTarget interface - */ -#ifndef __ID2D1BitmapRenderTarget_INTERFACE_DEFINED__ -#define __ID2D1BitmapRenderTarget_INTERFACE_DEFINED__ +interface ID2D1Geometry : public ID2D1Resource { + STDMETHOD(GetBounds)(const D2D1_MATRIX_3X2_F *worldTransform, D2D1_RECT_F *bounds) const PURE; + STDMETHOD(GetWidenedBounds)(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, D2D1_RECT_F *bounds) const PURE; + STDMETHOD(StrokeContainsPoint)(D2D1_POINT_2F point, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, BOOL *contains) const PURE; + STDMETHOD(FillContainsPoint)(D2D1_POINT_2F point, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, BOOL *contains) const PURE; + STDMETHOD(CompareWithGeometry)(ID2D1Geometry *inputGeometry, const D2D1_MATRIX_3X2_F *inputGeometryTransform, FLOAT flatteningTolerance, D2D1_GEOMETRY_RELATION *relation) const PURE; + STDMETHOD(Simplify)(D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const PURE; + STDMETHOD(Tessellate)(const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1TessellationSink *tessellationSink) const PURE; + STDMETHOD(CombineWithGeometry)(ID2D1Geometry *inputGeometry, D2D1_COMBINE_MODE combineMode, const D2D1_MATRIX_3X2_F *inputGeometryTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const PURE; + STDMETHOD(Outline)(const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const PURE; + STDMETHOD(ComputeArea)(const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, FLOAT *area) const PURE; + STDMETHOD(ComputeLength)(const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, FLOAT *length) const PURE; + STDMETHOD(ComputePointAtLength)(FLOAT length, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, D2D1_POINT_2F *point, D2D1_POINT_2F *unitTangentVector) const PURE; + STDMETHOD(Widen)(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const PURE; -DEFINE_GUID(IID_ID2D1BitmapRenderTarget, 0x2cd90695, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd90695-12e2-11dc-9fed-001143a055f9") -ID2D1BitmapRenderTarget : public ID2D1RenderTarget -{ - virtual HRESULT STDMETHODCALLTYPE GetBitmap( - ID2D1Bitmap **bitmap) = 0; + HRESULT GetBounds(const D2D1_MATRIX_3X2_F &worldTransform, D2D1_RECT_F *bounds) const { + return GetBounds(&worldTransform, bounds); + } + HRESULT GetWidenedBounds(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, D2D1_RECT_F *bounds) const { + return GetWidenedBounds(strokeWidth, strokeStyle, &worldTransform, flatteningTolerance, bounds); + } + + HRESULT GetWidenedBounds(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, D2D1_RECT_F *bounds) const { + return GetWidenedBounds(strokeWidth, strokeStyle, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, bounds); + } + + HRESULT GetWidenedBounds(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F &worldTransform, D2D1_RECT_F *bounds) const { + return GetWidenedBounds(strokeWidth, strokeStyle, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, bounds); + } + + HRESULT StrokeContainsPoint(D2D1_POINT_2F point, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, BOOL *contains) const { + return StrokeContainsPoint(point, strokeWidth, strokeStyle, &worldTransform, flatteningTolerance, contains); + } + + HRESULT StrokeContainsPoint(D2D1_POINT_2F point, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, BOOL *contains) const { + return StrokeContainsPoint(point, strokeWidth, strokeStyle, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, contains); + } + + HRESULT StrokeContainsPoint(D2D1_POINT_2F point, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F &worldTransform, BOOL *contains) const { + return StrokeContainsPoint(point, strokeWidth, strokeStyle, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, contains); + } + + HRESULT FillContainsPoint(D2D1_POINT_2F point, const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, BOOL *contains) const { + return FillContainsPoint(point, &worldTransform, flatteningTolerance, contains); + } + + HRESULT FillContainsPoint(D2D1_POINT_2F point, const D2D1_MATRIX_3X2_F *worldTransform, BOOL *contains) const { + return FillContainsPoint(point, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, contains); + } + + HRESULT FillContainsPoint(D2D1_POINT_2F point, const D2D1_MATRIX_3X2_F &worldTransform, BOOL *contains) const { + return FillContainsPoint(point, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, contains); + } + + HRESULT CompareWithGeometry(ID2D1Geometry *inputGeometry, const D2D1_MATRIX_3X2_F &inputGeometryTransform, FLOAT flatteningTolerance, D2D1_GEOMETRY_RELATION *relation) const { + return CompareWithGeometry(inputGeometry, &inputGeometryTransform, flatteningTolerance, relation); + } + + HRESULT CompareWithGeometry(ID2D1Geometry *inputGeometry, const D2D1_MATRIX_3X2_F *inputGeometryTransform, D2D1_GEOMETRY_RELATION *relation) const { + return CompareWithGeometry(inputGeometry, inputGeometryTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, relation); + } + + HRESULT CompareWithGeometry(ID2D1Geometry *inputGeometry, const D2D1_MATRIX_3X2_F &inputGeometryTransform, D2D1_GEOMETRY_RELATION *relation) const { + return CompareWithGeometry(inputGeometry, &inputGeometryTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, relation); + } + + HRESULT Simplify(D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption, const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Simplify(simplificationOption, &worldTransform, flatteningTolerance, geometrySink); + } + + HRESULT Simplify(D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption, const D2D1_MATRIX_3X2_F *worldTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Simplify(simplificationOption, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT Simplify(D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption, const D2D1_MATRIX_3X2_F &worldTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Simplify(simplificationOption, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT Tessellate(const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, ID2D1TessellationSink *tessellationSink) const { + return Tessellate(&worldTransform, flatteningTolerance, tessellationSink); + } + + HRESULT Tessellate(const D2D1_MATRIX_3X2_F *worldTransform, ID2D1TessellationSink *tessellationSink) const { + return Tessellate(worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, tessellationSink); + } + + HRESULT Tessellate(const D2D1_MATRIX_3X2_F &worldTransform, ID2D1TessellationSink *tessellationSink) const { + return Tessellate(&worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, tessellationSink); + } + + HRESULT CombineWithGeometry(ID2D1Geometry *inputGeometry, D2D1_COMBINE_MODE combineMode, const D2D1_MATRIX_3X2_F &inputGeometryTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const { + return CombineWithGeometry(inputGeometry, combineMode, &inputGeometryTransform, flatteningTolerance, geometrySink); + } + + HRESULT CombineWithGeometry(ID2D1Geometry *inputGeometry, D2D1_COMBINE_MODE combineMode, CONST D2D1_MATRIX_3X2_F *inputGeometryTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return CombineWithGeometry(inputGeometry, combineMode, inputGeometryTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT CombineWithGeometry(ID2D1Geometry *inputGeometry, D2D1_COMBINE_MODE combineMode, const D2D1_MATRIX_3X2_F &inputGeometryTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return CombineWithGeometry(inputGeometry, combineMode, &inputGeometryTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT Outline(const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Outline(&worldTransform, flatteningTolerance, geometrySink); + } + + HRESULT Outline(const D2D1_MATRIX_3X2_F *worldTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Outline(worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT Outline(const D2D1_MATRIX_3X2_F &worldTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Outline(&worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT ComputeArea(const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, FLOAT *area) const { + return ComputeArea(&worldTransform, flatteningTolerance, area); + } + + HRESULT ComputeArea(const D2D1_MATRIX_3X2_F *worldTransform, FLOAT *area) const { + return ComputeArea(worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, area); + } + + HRESULT ComputeArea(const D2D1_MATRIX_3X2_F &worldTransform, FLOAT *area) const { + return ComputeArea(&worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, area); + } + + HRESULT ComputeLength(const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, FLOAT *length) const { + return ComputeLength(&worldTransform, flatteningTolerance, length); + } + + HRESULT ComputeLength(const D2D1_MATRIX_3X2_F *worldTransform, FLOAT *length) const { + return ComputeLength(worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, length); + } + + HRESULT ComputeLength(const D2D1_MATRIX_3X2_F &worldTransform, FLOAT *length) const { + return ComputeLength(&worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, length); + } + + HRESULT ComputePointAtLength(FLOAT length, const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, D2D1_POINT_2F *point, D2D1_POINT_2F *unitTangentVector) const { + return ComputePointAtLength(length, &worldTransform, flatteningTolerance, point, unitTangentVector); + } + + HRESULT ComputePointAtLength(FLOAT length, const D2D1_MATRIX_3X2_F *worldTransform, D2D1_POINT_2F *point, D2D1_POINT_2F *unitTangentVector) const { + return ComputePointAtLength(length, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, point, unitTangentVector); + } + + HRESULT ComputePointAtLength(FLOAT length, const D2D1_MATRIX_3X2_F &worldTransform, D2D1_POINT_2F *point, D2D1_POINT_2F *unitTangentVector) const { + return ComputePointAtLength(length, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, point, unitTangentVector); + } + + HRESULT Widen(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F &worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Widen(strokeWidth, strokeStyle, &worldTransform, flatteningTolerance, geometrySink); + } + + HRESULT Widen(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Widen(strokeWidth, strokeStyle, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } + + HRESULT Widen(FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F &worldTransform, ID2D1SimplifiedGeometrySink *geometrySink) const { + return Widen(strokeWidth, strokeStyle, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, geometrySink); + } }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1BitmapRenderTarget, 0x2cd90695, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif + #else + +typedef struct ID2D1GeometryVtbl { + ID2D1ResourceVtbl Base; + + STDMETHOD(GetBounds)(ID2D1Geometry *This, const D2D1_MATRIX_3X2_F *worldTransform, D2D1_RECT_F *bounds) PURE; + STDMETHOD(GetWidenedBounds)(ID2D1Geometry *This, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, D2D1_RECT_F *bounds) PURE; + STDMETHOD(StrokeContainsPoint)(ID2D1Geometry *This, D2D1_POINT_2F point, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, BOOL *contains) PURE; + STDMETHOD(FillContainsPoint)(ID2D1Geometry *This, D2D1_POINT_2F point, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, BOOL *contains) PURE; + STDMETHOD(CompareWithGeometry)(ID2D1Geometry *This, ID2D1Geometry *inputGeometry, const D2D1_MATRIX_3X2_F *inputGeometryTransform, FLOAT flatteningTolerance, D2D1_GEOMETRY_RELATION *relation) PURE; + STDMETHOD(Simplify)(ID2D1Geometry *This, D2D1_GEOMETRY_SIMPLIFICATION_OPTION simplificationOption, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) PURE; + STDMETHOD(Tessellate)(ID2D1Geometry *This, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1TessellationSink *tessellationSink) PURE; + STDMETHOD(CombineWithGeometry)(ID2D1Geometry *This, ID2D1Geometry *inputGeometry, D2D1_COMBINE_MODE combineMode, const D2D1_MATRIX_3X2_F *inputGeometryTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) PURE; + STDMETHOD(Outline)(ID2D1Geometry *This, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) PURE; + STDMETHOD(ComputeArea)(ID2D1Geometry *This, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, FLOAT *area) PURE; + STDMETHOD(ComputeLength)(ID2D1Geometry *This, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, FLOAT *length) PURE; + STDMETHOD(ComputePointAtLength)(ID2D1Geometry *This, FLOAT length, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, D2D1_POINT_2F *point, D2D1_POINT_2F *unitTangentVector) PURE; + STDMETHOD(Widen)(ID2D1Geometry *This, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle, const D2D1_MATRIX_3X2_F *worldTransform, FLOAT flatteningTolerance, ID2D1SimplifiedGeometrySink *geometrySink) PURE; +} ID2D1GeometryVtbl; + +interface ID2D1Geometry { + const ID2D1GeometryVtbl *lpVtbl; +}; + +#define ID2D1Geometry_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1Geometry_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1Geometry_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1Geometry_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1Geometry_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->CombineWithGeometry(this,A,B,C,D) +#define ID2D1Geometry_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->CompareWithGeometry(this,A,B,C) +#define ID2D1Geometry_ComputeArea(this,A,B) (this)->lpVtbl->ComputeArea(this,A,B) +#define ID2D1Geometry_ComputeLength(this,A,B) (this)->lpVtbl->ComputeLength(this,A,B) +#define ID2D1Geometry_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->ComputePointAtLength(this,A,B,C,D) +#define ID2D1Geometry_FillContainsPoint(this,A,B,C) (this)->lpVtbl->FillContainsPoint(this,A,B,C) +#define ID2D1Geometry_GetBounds(this,A,B) (this)->lpVtbl->GetBounds(this,A,B) +#define ID2D1Geometry_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->GetWidenedBounds(this,A,B,C,D) +#define ID2D1Geometry_Outline(this,A,B) (this)->lpVtbl->Outline(this,A,B) +#define ID2D1Geometry_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->StrokeContainsPoint(this,A,B,C,D,E) +#define ID2D1Geometry_Simplify(this,A,B,C) (this)->lpVtbl->Simplify(this,A,B,C) +#define ID2D1Geometry_Tessellate(this,A,B) (this)->lpVtbl->Tessellate(this,A,B) +#define ID2D1Geometry_Widen(this,A,B,C,D) (this)->lpVtbl->Widen(this,A,B,C,D) + +#endif + +DEFINE_GUID(IID_ID2D1BitmapRenderTarget, 0x2cd90695,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1BitmapRenderTarget : public ID2D1RenderTarget { + STDMETHOD(GetBitmap)(ID2D1Bitmap **bitmap) PURE; +}; + +#else + typedef struct ID2D1BitmapRenderTargetVtbl { - BEGIN_INTERFACE + ID2D1RenderTargetVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1BitmapRenderTarget *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1BitmapRenderTarget *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1BitmapRenderTarget *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1BitmapRenderTarget *This, - ID2D1Factory **factory); - - /*** ID2D1RenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateBitmap)( - ID2D1BitmapRenderTarget *This, - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapFromWicBitmap)( - ID2D1BitmapRenderTarget *This, - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateSharedBitmap)( - ID2D1BitmapRenderTarget *This, - REFIID iid, - void *data, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapBrush)( - ID2D1BitmapRenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateSolidColorBrush)( - ID2D1BitmapRenderTarget *This, - const D2D1_COLOR_F *color, - const D2D1_BRUSH_PROPERTIES *desc, - ID2D1SolidColorBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateGradientStopCollection)( - ID2D1BitmapRenderTarget *This, - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_GAMMA gamma, - D2D1_EXTEND_MODE extend_mode, - ID2D1GradientStopCollection **gradient); - - HRESULT (STDMETHODCALLTYPE *CreateLinearGradientBrush)( - ID2D1BitmapRenderTarget *This, - const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1LinearGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateRadialGradientBrush)( - ID2D1BitmapRenderTarget *This, - const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1RadialGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateCompatibleRenderTarget)( - ID2D1BitmapRenderTarget *This, - const D2D1_SIZE_F *size, - const D2D1_SIZE_U *pixel_size, - const D2D1_PIXEL_FORMAT *format, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - ID2D1BitmapRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateLayer)( - ID2D1BitmapRenderTarget *This, - const D2D1_SIZE_F *size, - ID2D1Layer **layer); - - HRESULT (STDMETHODCALLTYPE *CreateMesh)( - ID2D1BitmapRenderTarget *This, - ID2D1Mesh **mesh); - - void (STDMETHODCALLTYPE *DrawLine)( - ID2D1BitmapRenderTarget *This, - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *DrawRectangle)( - ID2D1BitmapRenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRectangle)( - ID2D1BitmapRenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawRoundedRectangle)( - ID2D1BitmapRenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRoundedRectangle)( - ID2D1BitmapRenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawEllipse)( - ID2D1BitmapRenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillEllipse)( - ID2D1BitmapRenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawGeometry)( - ID2D1BitmapRenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillGeometry)( - ID2D1BitmapRenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush); - - void (STDMETHODCALLTYPE *FillMesh)( - ID2D1BitmapRenderTarget *This, - ID2D1Mesh *mesh, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *FillOpacityMask)( - ID2D1BitmapRenderTarget *This, - ID2D1Bitmap *mask, - ID2D1Brush *brush, - D2D1_OPACITY_MASK_CONTENT content, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawBitmap)( - ID2D1BitmapRenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawText)( - ID2D1BitmapRenderTarget *This, - const WCHAR *string, - UINT32 string_len, - IDWriteTextFormat *text_format, - const D2D1_RECT_F *layout_rect, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *DrawTextLayout)( - ID2D1BitmapRenderTarget *This, - D2D1_POINT_2F origin, - IDWriteTextLayout *layout, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options); - - void (STDMETHODCALLTYPE *DrawGlyphRun)( - ID2D1BitmapRenderTarget *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1BitmapRenderTarget *This, - const D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1BitmapRenderTarget *This, - D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *SetAntialiasMode)( - ID2D1BitmapRenderTarget *This, - D2D1_ANTIALIAS_MODE antialias_mode); - - D2D1_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetAntialiasMode)( - ID2D1BitmapRenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextAntialiasMode)( - ID2D1BitmapRenderTarget *This, - D2D1_TEXT_ANTIALIAS_MODE antialias_mode); - - D2D1_TEXT_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetTextAntialiasMode)( - ID2D1BitmapRenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1BitmapRenderTarget *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1BitmapRenderTarget *This, - IDWriteRenderingParams **text_rendering_params); - - void (STDMETHODCALLTYPE *SetTags)( - ID2D1BitmapRenderTarget *This, - D2D1_TAG tag1, - D2D1_TAG tag2); - - void (STDMETHODCALLTYPE *GetTags)( - ID2D1BitmapRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *PushLayer)( - ID2D1BitmapRenderTarget *This, - const D2D1_LAYER_PARAMETERS *layer_parameters, - ID2D1Layer *layer); - - void (STDMETHODCALLTYPE *PopLayer)( - ID2D1BitmapRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *Flush)( - ID2D1BitmapRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *SaveDrawingState)( - ID2D1BitmapRenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *RestoreDrawingState)( - ID2D1BitmapRenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *PushAxisAlignedClip)( - ID2D1BitmapRenderTarget *This, - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode); - - void (STDMETHODCALLTYPE *PopAxisAlignedClip)( - ID2D1BitmapRenderTarget *This); - - void (STDMETHODCALLTYPE *Clear)( - ID2D1BitmapRenderTarget *This, - const D2D1_COLOR_F *color); - - void (STDMETHODCALLTYPE *BeginDraw)( - ID2D1BitmapRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *EndDraw)( - ID2D1BitmapRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1BitmapRenderTarget *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *SetDpi)( - ID2D1BitmapRenderTarget *This, - float dpi_x, - float dpi_y); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1BitmapRenderTarget *This, - float *dpi_x, - float *dpi_y); - - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1BitmapRenderTarget *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1BitmapRenderTarget *This, - D2D1_SIZE_U *__ret); - - UINT32 (STDMETHODCALLTYPE *GetMaximumBitmapSize)( - ID2D1BitmapRenderTarget *This); - - WINBOOL (STDMETHODCALLTYPE *IsSupported)( - ID2D1BitmapRenderTarget *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc); - - /*** ID2D1BitmapRenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBitmap)( - ID2D1BitmapRenderTarget *This, - ID2D1Bitmap **bitmap); - - END_INTERFACE + STDMETHOD(GetBitmap)(ID2D1BitmapRenderTarget *This, ID2D1Bitmap **bitmap) PURE; } ID2D1BitmapRenderTargetVtbl; interface ID2D1BitmapRenderTarget { - CONST_VTBL ID2D1BitmapRenderTargetVtbl* lpVtbl; + const ID2D1BitmapRenderTargetVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1BitmapRenderTarget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1BitmapRenderTarget_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1BitmapRenderTarget_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1BitmapRenderTarget_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1RenderTarget methods ***/ -#define ID2D1BitmapRenderTarget_CreateBitmap(This,size,src_data,pitch,desc,bitmap) (This)->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap) -#define ID2D1BitmapRenderTarget_CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) (This)->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) -#define ID2D1BitmapRenderTarget_CreateSharedBitmap(This,iid,data,desc,bitmap) (This)->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap) -#define ID2D1BitmapRenderTarget_CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) (This)->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) -#define ID2D1BitmapRenderTarget_CreateSolidColorBrush(This,color,desc,brush) (This)->lpVtbl->CreateSolidColorBrush(This,color,desc,brush) -#define ID2D1BitmapRenderTarget_CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) (This)->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) -#define ID2D1BitmapRenderTarget_CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1BitmapRenderTarget_CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1BitmapRenderTarget_CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) (This)->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) -#define ID2D1BitmapRenderTarget_CreateLayer(This,size,layer) (This)->lpVtbl->CreateLayer(This,size,layer) -#define ID2D1BitmapRenderTarget_CreateMesh(This,mesh) (This)->lpVtbl->CreateMesh(This,mesh) -#define ID2D1BitmapRenderTarget_DrawLine(This,p0,p1,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style) -#define ID2D1BitmapRenderTarget_DrawRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1BitmapRenderTarget_FillRectangle(This,rect,brush) (This)->lpVtbl->FillRectangle(This,rect,brush) -#define ID2D1BitmapRenderTarget_DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1BitmapRenderTarget_FillRoundedRectangle(This,rect,brush) (This)->lpVtbl->FillRoundedRectangle(This,rect,brush) -#define ID2D1BitmapRenderTarget_DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) -#define ID2D1BitmapRenderTarget_FillEllipse(This,ellipse,brush) (This)->lpVtbl->FillEllipse(This,ellipse,brush) -#define ID2D1BitmapRenderTarget_DrawGeometry(This,geometry,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style) -#define ID2D1BitmapRenderTarget_FillGeometry(This,geometry,brush,opacity_brush) (This)->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush) -#define ID2D1BitmapRenderTarget_FillMesh(This,mesh,brush) (This)->lpVtbl->FillMesh(This,mesh,brush) -#define ID2D1BitmapRenderTarget_FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) (This)->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) -#define ID2D1BitmapRenderTarget_DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) (This)->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) -#define ID2D1BitmapRenderTarget_DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) (This)->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) -#define ID2D1BitmapRenderTarget_DrawTextLayout(This,origin,layout,brush,options) (This)->lpVtbl->DrawTextLayout(This,origin,layout,brush,options) -#define ID2D1BitmapRenderTarget_DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) (This)->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) -#define ID2D1BitmapRenderTarget_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1BitmapRenderTarget_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -#define ID2D1BitmapRenderTarget_SetAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetAntialiasMode(This,antialias_mode) -#define ID2D1BitmapRenderTarget_GetAntialiasMode(This) (This)->lpVtbl->GetAntialiasMode(This) -#define ID2D1BitmapRenderTarget_SetTextAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetTextAntialiasMode(This,antialias_mode) -#define ID2D1BitmapRenderTarget_GetTextAntialiasMode(This) (This)->lpVtbl->GetTextAntialiasMode(This) -#define ID2D1BitmapRenderTarget_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1BitmapRenderTarget_GetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->GetTextRenderingParams(This,text_rendering_params) -#define ID2D1BitmapRenderTarget_SetTags(This,tag1,tag2) (This)->lpVtbl->SetTags(This,tag1,tag2) -#define ID2D1BitmapRenderTarget_GetTags(This,tag1,tag2) (This)->lpVtbl->GetTags(This,tag1,tag2) -#define ID2D1BitmapRenderTarget_PushLayer(This,layer_parameters,layer) (This)->lpVtbl->PushLayer(This,layer_parameters,layer) -#define ID2D1BitmapRenderTarget_PopLayer(This) (This)->lpVtbl->PopLayer(This) -#define ID2D1BitmapRenderTarget_Flush(This,tag1,tag2) (This)->lpVtbl->Flush(This,tag1,tag2) -#define ID2D1BitmapRenderTarget_SaveDrawingState(This,state_block) (This)->lpVtbl->SaveDrawingState(This,state_block) -#define ID2D1BitmapRenderTarget_RestoreDrawingState(This,state_block) (This)->lpVtbl->RestoreDrawingState(This,state_block) -#define ID2D1BitmapRenderTarget_PushAxisAlignedClip(This,clip_rect,antialias_mode) (This)->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode) -#define ID2D1BitmapRenderTarget_PopAxisAlignedClip(This) (This)->lpVtbl->PopAxisAlignedClip(This) -#define ID2D1BitmapRenderTarget_Clear(This,color) (This)->lpVtbl->Clear(This,color) -#define ID2D1BitmapRenderTarget_BeginDraw(This) (This)->lpVtbl->BeginDraw(This) -#define ID2D1BitmapRenderTarget_EndDraw(This,tag1,tag2) (This)->lpVtbl->EndDraw(This,tag1,tag2) -#define ID2D1BitmapRenderTarget_GetPixelFormat(This) ID2D1BitmapRenderTarget_GetPixelFormat_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1BitmapRenderTarget_SetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->SetDpi(This,dpi_x,dpi_y) -#define ID2D1BitmapRenderTarget_GetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDpi(This,dpi_x,dpi_y) -#define ID2D1BitmapRenderTarget_GetSize(This) ID2D1BitmapRenderTarget_GetSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1BitmapRenderTarget_GetPixelSize(This) ID2D1BitmapRenderTarget_GetPixelSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1BitmapRenderTarget_GetMaximumBitmapSize(This) (This)->lpVtbl->GetMaximumBitmapSize(This) -#define ID2D1BitmapRenderTarget_IsSupported(This,desc) (This)->lpVtbl->IsSupported(This,desc) -/*** ID2D1BitmapRenderTarget methods ***/ -#define ID2D1BitmapRenderTarget_GetBitmap(This,bitmap) (This)->lpVtbl->GetBitmap(This,bitmap) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_QueryInterface(ID2D1BitmapRenderTarget* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1BitmapRenderTarget_AddRef(ID2D1BitmapRenderTarget* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1BitmapRenderTarget_Release(ID2D1BitmapRenderTarget* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1BitmapRenderTarget_GetFactory(ID2D1BitmapRenderTarget* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1RenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateBitmap(ID2D1BitmapRenderTarget* This,D2D1_SIZE_U size,const void *src_data,UINT32 pitch,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateBitmapFromWicBitmap(ID2D1BitmapRenderTarget* This,IWICBitmapSource *bitmap_source,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateSharedBitmap(ID2D1BitmapRenderTarget* This,REFIID iid,void *data,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateBitmapBrush(ID2D1BitmapRenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1BitmapBrush **brush) { - return This->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateSolidColorBrush(ID2D1BitmapRenderTarget* This,const D2D1_COLOR_F *color,const D2D1_BRUSH_PROPERTIES *desc,ID2D1SolidColorBrush **brush) { - return This->lpVtbl->CreateSolidColorBrush(This,color,desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateGradientStopCollection(ID2D1BitmapRenderTarget* This,const D2D1_GRADIENT_STOP *stops,UINT32 stop_count,D2D1_GAMMA gamma,D2D1_EXTEND_MODE extend_mode,ID2D1GradientStopCollection **gradient) { - return This->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateLinearGradientBrush(ID2D1BitmapRenderTarget* This,const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1LinearGradientBrush **brush) { - return This->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateRadialGradientBrush(ID2D1BitmapRenderTarget* This,const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1RadialGradientBrush **brush) { - return This->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateCompatibleRenderTarget(ID2D1BitmapRenderTarget* This,const D2D1_SIZE_F *size,const D2D1_SIZE_U *pixel_size,const D2D1_PIXEL_FORMAT *format,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options,ID2D1BitmapRenderTarget **render_target) { - return This->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateLayer(ID2D1BitmapRenderTarget* This,const D2D1_SIZE_F *size,ID2D1Layer **layer) { - return This->lpVtbl->CreateLayer(This,size,layer); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_CreateMesh(ID2D1BitmapRenderTarget* This,ID2D1Mesh **mesh) { - return This->lpVtbl->CreateMesh(This,mesh); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawLine(ID2D1BitmapRenderTarget* This,D2D1_POINT_2F p0,D2D1_POINT_2F p1,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawRectangle(ID2D1BitmapRenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_FillRectangle(ID2D1BitmapRenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawRoundedRectangle(ID2D1BitmapRenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_FillRoundedRectangle(ID2D1BitmapRenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRoundedRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawEllipse(ID2D1BitmapRenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_FillEllipse(ID2D1BitmapRenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush) { - This->lpVtbl->FillEllipse(This,ellipse,brush); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawGeometry(ID2D1BitmapRenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_FillGeometry(ID2D1BitmapRenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,ID2D1Brush *opacity_brush) { - This->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_FillMesh(ID2D1BitmapRenderTarget* This,ID2D1Mesh *mesh,ID2D1Brush *brush) { - This->lpVtbl->FillMesh(This,mesh,brush); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_FillOpacityMask(ID2D1BitmapRenderTarget* This,ID2D1Bitmap *mask,ID2D1Brush *brush,D2D1_OPACITY_MASK_CONTENT content,const D2D1_RECT_F *dst_rect,const D2D1_RECT_F *src_rect) { - This->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawBitmap(ID2D1BitmapRenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_RECT_F *dst_rect,float opacity,D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode,const D2D1_RECT_F *src_rect) { - This->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawText(ID2D1BitmapRenderTarget* This,const WCHAR *string,UINT32 string_len,IDWriteTextFormat *text_format,const D2D1_RECT_F *layout_rect,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawTextLayout(ID2D1BitmapRenderTarget* This,D2D1_POINT_2F origin,IDWriteTextLayout *layout,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options) { - This->lpVtbl->DrawTextLayout(This,origin,layout,brush,options); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_DrawGlyphRun(ID2D1BitmapRenderTarget* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,ID2D1Brush *brush,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SetTransform(ID2D1BitmapRenderTarget* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_GetTransform(ID2D1BitmapRenderTarget* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SetAntialiasMode(ID2D1BitmapRenderTarget* This,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_ANTIALIAS_MODE ID2D1BitmapRenderTarget_GetAntialiasMode(ID2D1BitmapRenderTarget* This) { - return This->lpVtbl->GetAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SetTextAntialiasMode(ID2D1BitmapRenderTarget* This,D2D1_TEXT_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetTextAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_TEXT_ANTIALIAS_MODE ID2D1BitmapRenderTarget_GetTextAntialiasMode(ID2D1BitmapRenderTarget* This) { - return This->lpVtbl->GetTextAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SetTextRenderingParams(ID2D1BitmapRenderTarget* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_GetTextRenderingParams(ID2D1BitmapRenderTarget* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SetTags(ID2D1BitmapRenderTarget* This,D2D1_TAG tag1,D2D1_TAG tag2) { - This->lpVtbl->SetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_GetTags(ID2D1BitmapRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - This->lpVtbl->GetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_PushLayer(ID2D1BitmapRenderTarget* This,const D2D1_LAYER_PARAMETERS *layer_parameters,ID2D1Layer *layer) { - This->lpVtbl->PushLayer(This,layer_parameters,layer); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_PopLayer(ID2D1BitmapRenderTarget* This) { - This->lpVtbl->PopLayer(This); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_Flush(ID2D1BitmapRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->Flush(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SaveDrawingState(ID2D1BitmapRenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->SaveDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_RestoreDrawingState(ID2D1BitmapRenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->RestoreDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_PushAxisAlignedClip(ID2D1BitmapRenderTarget* This,const D2D1_RECT_F *clip_rect,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_PopAxisAlignedClip(ID2D1BitmapRenderTarget* This) { - This->lpVtbl->PopAxisAlignedClip(This); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_Clear(ID2D1BitmapRenderTarget* This,const D2D1_COLOR_F *color) { - This->lpVtbl->Clear(This,color); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_BeginDraw(ID2D1BitmapRenderTarget* This) { - This->lpVtbl->BeginDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_EndDraw(ID2D1BitmapRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->EndDraw(This,tag1,tag2); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1BitmapRenderTarget_GetPixelFormat(ID2D1BitmapRenderTarget* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_SetDpi(ID2D1BitmapRenderTarget* This,float dpi_x,float dpi_y) { - This->lpVtbl->SetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE void ID2D1BitmapRenderTarget_GetDpi(ID2D1BitmapRenderTarget* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE D2D1_SIZE_F ID2D1BitmapRenderTarget_GetSize(ID2D1BitmapRenderTarget* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1BitmapRenderTarget_GetPixelSize(ID2D1BitmapRenderTarget* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE UINT32 ID2D1BitmapRenderTarget_GetMaximumBitmapSize(ID2D1BitmapRenderTarget* This) { - return This->lpVtbl->GetMaximumBitmapSize(This); -} -static __WIDL_INLINE WINBOOL ID2D1BitmapRenderTarget_IsSupported(ID2D1BitmapRenderTarget* This,const D2D1_RENDER_TARGET_PROPERTIES *desc) { - return This->lpVtbl->IsSupported(This,desc); -} -/*** ID2D1BitmapRenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1BitmapRenderTarget_GetBitmap(ID2D1BitmapRenderTarget* This,ID2D1Bitmap **bitmap) { - return This->lpVtbl->GetBitmap(This,bitmap); -} -#endif -#endif +#define ID2D1BitmapRenderTarget_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1BitmapRenderTarget_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1BitmapRenderTarget_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1BitmapRenderTarget_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1BitmapRenderTarget_BeginDraw(this) (this)->lpVtbl->Base.BeginDraw((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_Clear(this,A) (this)->lpVtbl->Base.Clear((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_CreateBitmap(this,A,B,C,D,E) (this)->lpVtbl->Base.CreateBitmap((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1BitmapRenderTarget_CreateBitmapBrush(this,A,B) (this)->lpVtbl->Base.CreateBitmapBrush((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_CreateBitmapFromWicBitmap(this,A,B,C) (this)->lpVtbl->Base.CreateBitmapFromWicBitmap((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1BitmapRenderTarget_CreateCompatibleBitmapRenderTarget(this,A,B,C,D,E) (this)->lpVtbl->Base.CreateCompatibleBitmapRenderTarget((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1BitmapRenderTarget_CreateGradientStopCollection(this,A,B,C) (this)->lpVtbl->Base.CreateGradientStopCollection((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1BitmapRenderTarget_CreateLayer(this,A,B) (this)->lpVtbl->Base.CreateLayer((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_CreateLinearGradientBrush(this,A,B,C,D) (this)->lpVtbl->Base.CreateLinearGradientBrush((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_CreateMesh(this,A) (this)->lpVtbl->Base.CreateMesh((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_CreateRadialGradientBrush(this,A,B,C,D) (this)->lpVtbl->Base.CreateRadialGradientBrush((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_CreateSharedBitmap(this,A,B,C,D) (this)->lpVtbl->Base.CreateSharedBitmap((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_CreateSolidColorBrush(this,A,B,C) (this)->lpVtbl->Base.CreateSolidColorBrush((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1BitmapRenderTarget_DrawBitmap(this,A,B,C,D,E) (this)->lpVtbl->Base.DrawBitmap((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1BitmapRenderTarget_DrawEllipse(this,A,B,C,D) (this)->lpVtbl->Base.DrawEllipse((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_DrawGeometry(this,A,B,C,D) (this)->lpVtbl->Base.DrawGeometry((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_DrawGlyphRun(this,A,B,C,D) (this)->lpVtbl->Base.DrawGlyphRun((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_DrawLine(this,A,B,C,D,E) (this)->lpVtbl->Base.DrawLine((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1BitmapRenderTarget_DrawRectangle(this,A,B,C,D) (this)->lpVtbl->Base.DrawRectangle((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_DrawRoundedRectangle(this,A,B,C,D) (this)->lpVtbl->Base.DrawRoundedRectangle((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_DrawText(this,A,B,C,D,E,F,G) (this)->lpVtbl->Base.DrawText((ID2D1RenderTarget*)(this),A,B,C,D,E,F,G) +#define ID2D1BitmapRenderTarget_DrawTextLayout(this,A,B,C,D) (this)->lpVtbl->Base.DrawTextLayout((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1BitmapRenderTarget_EndDraw(this,A,B) (this)->lpVtbl->Base.EndDraw((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_FillEllipse(this,A,B) (this)->lpVtbl->Base.FillEllipse((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_FillGeometry(this,A,B,C) (this)->lpVtbl->Base.FillGeometry((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1BitmapRenderTarget_FillMesh(this,A,B) (this)->lpVtbl->Base.FillMesh((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_FillOpacityMask(this,A,B,C,D,E) (this)->lpVtbl->Base.FillOpacityMask((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1BitmapRenderTarget_FillRectangle(this,A,B) (this)->lpVtbl->Base.FillRectangle((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_FillRoundedRectangle(this,A,B) (this)->lpVtbl->Base.FillRoundedRectangle((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_Flush(this,A,B) (this)->lpVtbl->Base.Flush((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_GetAntialiasMode(this) (this)->lpVtbl->Base.GetAntialiasMode((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_GetDpi(this,A,B) (this)->lpVtbl->Base.GetDpi((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_GetMaximumBitmapSize(this) (this)->lpVtbl->Base.GetMaximumBitmapSize((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_GetPixelFormat(this) (this)->lpVtbl->Base.GetPixelFormat((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_GetPixelSize(this) (this)->lpVtbl->Base.GetPixelSize((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_GetSize(this) (this)->lpVtbl->Base.GetSize((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_GetTags(this,A,B) (this)->lpVtbl->Base.GetTags((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_GetTextAntialiasMode(this) (this)->lpVtbl->Base.GetTextAntialiasMode((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_GetTextRenderingParams(this,A) (this)->lpVtbl->Base.GetTextRenderingParams((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_IsSupported(this,A) (this)->lpVtbl->Base.IsSupported((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_PopAxisAlignedClip(this) (this)->lpVtbl->Base.PopAxisAlignedClip((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_PopLayer(this) (this)->lpVtbl->Base.PopLayer((ID2D1RenderTarget*)(this)) +#define ID2D1BitmapRenderTarget_PushAxisAlignedClip(this,A,B) (this)->lpVtbl->Base.PushAxisAlignedClip((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_PushLayer(this,A,B) (this)->lpVtbl->Base.PushLayer((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_RestoreDrawingState(this,A) (this)->lpVtbl->Base.RestoreDrawingState((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_SaveDrawingState(this,A) (this)->lpVtbl->Base.SaveDrawingState((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_SetAntialiasMode(this,A) (this)->lpVtbl->Base.SetAntialiasMode((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_SetDpi(this,A,B) (this)->lpVtbl->Base.SetDpi((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_SetTags(this,A,B) (this)->lpVtbl->Base.SetTags((ID2D1RenderTarget*)(this),A,B) +#define ID2D1BitmapRenderTarget_SetTextAntialiasMode(this,A) (this)->lpVtbl->Base.SetTextAntialiasMode((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_SetTextRenderingParams(this,A) (this)->lpVtbl->Base.SetTextRenderingParams((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1RenderTarget*)(this),A) +#define ID2D1BitmapRenderTarget_GetBitmap(this,A) (this)->lpVtbl->GetBitmap(this,A) #endif +DEFINE_GUID(IID_ID2D1DCRenderTarget, 0x1c51bc64,0xde61,0x46fd,0x98,0x99,0x63,0xa5,0xd8,0xf0,0x39,0x50); -#endif /* __ID2D1BitmapRenderTarget_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1HwndRenderTarget interface - */ -#ifndef __ID2D1HwndRenderTarget_INTERFACE_DEFINED__ -#define __ID2D1HwndRenderTarget_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1HwndRenderTarget, 0x2cd90698, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2cd90698-12e2-11dc-9fed-001143a055f9") -ID2D1HwndRenderTarget : public ID2D1RenderTarget -{ - virtual D2D1_WINDOW_STATE STDMETHODCALLTYPE CheckWindowState( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE Resize( - const D2D1_SIZE_U *size) = 0; - - virtual HWND STDMETHODCALLTYPE GetHwnd( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1HwndRenderTarget, 0x2cd90698, 0x12e2, 0x11dc, 0x9f,0xed, 0x00,0x11,0x43,0xa0,0x55,0xf9) -#endif -#else -typedef struct ID2D1HwndRenderTargetVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1HwndRenderTarget *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1HwndRenderTarget *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1HwndRenderTarget *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1HwndRenderTarget *This, - ID2D1Factory **factory); - - /*** ID2D1RenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateBitmap)( - ID2D1HwndRenderTarget *This, - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapFromWicBitmap)( - ID2D1HwndRenderTarget *This, - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateSharedBitmap)( - ID2D1HwndRenderTarget *This, - REFIID iid, - void *data, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapBrush)( - ID2D1HwndRenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateSolidColorBrush)( - ID2D1HwndRenderTarget *This, - const D2D1_COLOR_F *color, - const D2D1_BRUSH_PROPERTIES *desc, - ID2D1SolidColorBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateGradientStopCollection)( - ID2D1HwndRenderTarget *This, - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_GAMMA gamma, - D2D1_EXTEND_MODE extend_mode, - ID2D1GradientStopCollection **gradient); - - HRESULT (STDMETHODCALLTYPE *CreateLinearGradientBrush)( - ID2D1HwndRenderTarget *This, - const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1LinearGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateRadialGradientBrush)( - ID2D1HwndRenderTarget *This, - const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1RadialGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateCompatibleRenderTarget)( - ID2D1HwndRenderTarget *This, - const D2D1_SIZE_F *size, - const D2D1_SIZE_U *pixel_size, - const D2D1_PIXEL_FORMAT *format, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - ID2D1BitmapRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateLayer)( - ID2D1HwndRenderTarget *This, - const D2D1_SIZE_F *size, - ID2D1Layer **layer); - - HRESULT (STDMETHODCALLTYPE *CreateMesh)( - ID2D1HwndRenderTarget *This, - ID2D1Mesh **mesh); - - void (STDMETHODCALLTYPE *DrawLine)( - ID2D1HwndRenderTarget *This, - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *DrawRectangle)( - ID2D1HwndRenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRectangle)( - ID2D1HwndRenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawRoundedRectangle)( - ID2D1HwndRenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRoundedRectangle)( - ID2D1HwndRenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawEllipse)( - ID2D1HwndRenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillEllipse)( - ID2D1HwndRenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawGeometry)( - ID2D1HwndRenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillGeometry)( - ID2D1HwndRenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush); - - void (STDMETHODCALLTYPE *FillMesh)( - ID2D1HwndRenderTarget *This, - ID2D1Mesh *mesh, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *FillOpacityMask)( - ID2D1HwndRenderTarget *This, - ID2D1Bitmap *mask, - ID2D1Brush *brush, - D2D1_OPACITY_MASK_CONTENT content, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawBitmap)( - ID2D1HwndRenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawText)( - ID2D1HwndRenderTarget *This, - const WCHAR *string, - UINT32 string_len, - IDWriteTextFormat *text_format, - const D2D1_RECT_F *layout_rect, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *DrawTextLayout)( - ID2D1HwndRenderTarget *This, - D2D1_POINT_2F origin, - IDWriteTextLayout *layout, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options); - - void (STDMETHODCALLTYPE *DrawGlyphRun)( - ID2D1HwndRenderTarget *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1HwndRenderTarget *This, - const D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1HwndRenderTarget *This, - D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *SetAntialiasMode)( - ID2D1HwndRenderTarget *This, - D2D1_ANTIALIAS_MODE antialias_mode); - - D2D1_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetAntialiasMode)( - ID2D1HwndRenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextAntialiasMode)( - ID2D1HwndRenderTarget *This, - D2D1_TEXT_ANTIALIAS_MODE antialias_mode); - - D2D1_TEXT_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetTextAntialiasMode)( - ID2D1HwndRenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1HwndRenderTarget *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1HwndRenderTarget *This, - IDWriteRenderingParams **text_rendering_params); - - void (STDMETHODCALLTYPE *SetTags)( - ID2D1HwndRenderTarget *This, - D2D1_TAG tag1, - D2D1_TAG tag2); - - void (STDMETHODCALLTYPE *GetTags)( - ID2D1HwndRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *PushLayer)( - ID2D1HwndRenderTarget *This, - const D2D1_LAYER_PARAMETERS *layer_parameters, - ID2D1Layer *layer); - - void (STDMETHODCALLTYPE *PopLayer)( - ID2D1HwndRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *Flush)( - ID2D1HwndRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *SaveDrawingState)( - ID2D1HwndRenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *RestoreDrawingState)( - ID2D1HwndRenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *PushAxisAlignedClip)( - ID2D1HwndRenderTarget *This, - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode); - - void (STDMETHODCALLTYPE *PopAxisAlignedClip)( - ID2D1HwndRenderTarget *This); - - void (STDMETHODCALLTYPE *Clear)( - ID2D1HwndRenderTarget *This, - const D2D1_COLOR_F *color); - - void (STDMETHODCALLTYPE *BeginDraw)( - ID2D1HwndRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *EndDraw)( - ID2D1HwndRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1HwndRenderTarget *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *SetDpi)( - ID2D1HwndRenderTarget *This, - float dpi_x, - float dpi_y); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1HwndRenderTarget *This, - float *dpi_x, - float *dpi_y); - - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1HwndRenderTarget *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1HwndRenderTarget *This, - D2D1_SIZE_U *__ret); - - UINT32 (STDMETHODCALLTYPE *GetMaximumBitmapSize)( - ID2D1HwndRenderTarget *This); - - WINBOOL (STDMETHODCALLTYPE *IsSupported)( - ID2D1HwndRenderTarget *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc); - - /*** ID2D1HwndRenderTarget methods ***/ - D2D1_WINDOW_STATE (STDMETHODCALLTYPE *CheckWindowState)( - ID2D1HwndRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *Resize)( - ID2D1HwndRenderTarget *This, - const D2D1_SIZE_U *size); - - HWND (STDMETHODCALLTYPE *GetHwnd)( - ID2D1HwndRenderTarget *This); - - END_INTERFACE -} ID2D1HwndRenderTargetVtbl; - -interface ID2D1HwndRenderTarget { - CONST_VTBL ID2D1HwndRenderTargetVtbl* lpVtbl; +interface ID2D1DCRenderTarget : public ID2D1RenderTarget { + STDMETHOD(BindDC)(const HDC hDC, const RECT *pSubRect) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1HwndRenderTarget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1HwndRenderTarget_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1HwndRenderTarget_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1HwndRenderTarget_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1RenderTarget methods ***/ -#define ID2D1HwndRenderTarget_CreateBitmap(This,size,src_data,pitch,desc,bitmap) (This)->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap) -#define ID2D1HwndRenderTarget_CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) (This)->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) -#define ID2D1HwndRenderTarget_CreateSharedBitmap(This,iid,data,desc,bitmap) (This)->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap) -#define ID2D1HwndRenderTarget_CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) (This)->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) -#define ID2D1HwndRenderTarget_CreateSolidColorBrush(This,color,desc,brush) (This)->lpVtbl->CreateSolidColorBrush(This,color,desc,brush) -#define ID2D1HwndRenderTarget_CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) (This)->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) -#define ID2D1HwndRenderTarget_CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1HwndRenderTarget_CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1HwndRenderTarget_CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) (This)->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) -#define ID2D1HwndRenderTarget_CreateLayer(This,size,layer) (This)->lpVtbl->CreateLayer(This,size,layer) -#define ID2D1HwndRenderTarget_CreateMesh(This,mesh) (This)->lpVtbl->CreateMesh(This,mesh) -#define ID2D1HwndRenderTarget_DrawLine(This,p0,p1,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style) -#define ID2D1HwndRenderTarget_DrawRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1HwndRenderTarget_FillRectangle(This,rect,brush) (This)->lpVtbl->FillRectangle(This,rect,brush) -#define ID2D1HwndRenderTarget_DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1HwndRenderTarget_FillRoundedRectangle(This,rect,brush) (This)->lpVtbl->FillRoundedRectangle(This,rect,brush) -#define ID2D1HwndRenderTarget_DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) -#define ID2D1HwndRenderTarget_FillEllipse(This,ellipse,brush) (This)->lpVtbl->FillEllipse(This,ellipse,brush) -#define ID2D1HwndRenderTarget_DrawGeometry(This,geometry,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style) -#define ID2D1HwndRenderTarget_FillGeometry(This,geometry,brush,opacity_brush) (This)->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush) -#define ID2D1HwndRenderTarget_FillMesh(This,mesh,brush) (This)->lpVtbl->FillMesh(This,mesh,brush) -#define ID2D1HwndRenderTarget_FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) (This)->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) -#define ID2D1HwndRenderTarget_DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) (This)->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) -#define ID2D1HwndRenderTarget_DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) (This)->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) -#define ID2D1HwndRenderTarget_DrawTextLayout(This,origin,layout,brush,options) (This)->lpVtbl->DrawTextLayout(This,origin,layout,brush,options) -#define ID2D1HwndRenderTarget_DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) (This)->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) -#define ID2D1HwndRenderTarget_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1HwndRenderTarget_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -#define ID2D1HwndRenderTarget_SetAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetAntialiasMode(This,antialias_mode) -#define ID2D1HwndRenderTarget_GetAntialiasMode(This) (This)->lpVtbl->GetAntialiasMode(This) -#define ID2D1HwndRenderTarget_SetTextAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetTextAntialiasMode(This,antialias_mode) -#define ID2D1HwndRenderTarget_GetTextAntialiasMode(This) (This)->lpVtbl->GetTextAntialiasMode(This) -#define ID2D1HwndRenderTarget_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1HwndRenderTarget_GetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->GetTextRenderingParams(This,text_rendering_params) -#define ID2D1HwndRenderTarget_SetTags(This,tag1,tag2) (This)->lpVtbl->SetTags(This,tag1,tag2) -#define ID2D1HwndRenderTarget_GetTags(This,tag1,tag2) (This)->lpVtbl->GetTags(This,tag1,tag2) -#define ID2D1HwndRenderTarget_PushLayer(This,layer_parameters,layer) (This)->lpVtbl->PushLayer(This,layer_parameters,layer) -#define ID2D1HwndRenderTarget_PopLayer(This) (This)->lpVtbl->PopLayer(This) -#define ID2D1HwndRenderTarget_Flush(This,tag1,tag2) (This)->lpVtbl->Flush(This,tag1,tag2) -#define ID2D1HwndRenderTarget_SaveDrawingState(This,state_block) (This)->lpVtbl->SaveDrawingState(This,state_block) -#define ID2D1HwndRenderTarget_RestoreDrawingState(This,state_block) (This)->lpVtbl->RestoreDrawingState(This,state_block) -#define ID2D1HwndRenderTarget_PushAxisAlignedClip(This,clip_rect,antialias_mode) (This)->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode) -#define ID2D1HwndRenderTarget_PopAxisAlignedClip(This) (This)->lpVtbl->PopAxisAlignedClip(This) -#define ID2D1HwndRenderTarget_Clear(This,color) (This)->lpVtbl->Clear(This,color) -#define ID2D1HwndRenderTarget_BeginDraw(This) (This)->lpVtbl->BeginDraw(This) -#define ID2D1HwndRenderTarget_EndDraw(This,tag1,tag2) (This)->lpVtbl->EndDraw(This,tag1,tag2) -#define ID2D1HwndRenderTarget_GetPixelFormat(This) ID2D1HwndRenderTarget_GetPixelFormat_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1HwndRenderTarget_SetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->SetDpi(This,dpi_x,dpi_y) -#define ID2D1HwndRenderTarget_GetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDpi(This,dpi_x,dpi_y) -#define ID2D1HwndRenderTarget_GetSize(This) ID2D1HwndRenderTarget_GetSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1HwndRenderTarget_GetPixelSize(This) ID2D1HwndRenderTarget_GetPixelSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1HwndRenderTarget_GetMaximumBitmapSize(This) (This)->lpVtbl->GetMaximumBitmapSize(This) -#define ID2D1HwndRenderTarget_IsSupported(This,desc) (This)->lpVtbl->IsSupported(This,desc) -/*** ID2D1HwndRenderTarget methods ***/ -#define ID2D1HwndRenderTarget_CheckWindowState(This) (This)->lpVtbl->CheckWindowState(This) -#define ID2D1HwndRenderTarget_Resize(This,size) (This)->lpVtbl->Resize(This,size) -#define ID2D1HwndRenderTarget_GetHwnd(This) (This)->lpVtbl->GetHwnd(This) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_QueryInterface(ID2D1HwndRenderTarget* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1HwndRenderTarget_AddRef(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1HwndRenderTarget_Release(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1HwndRenderTarget_GetFactory(ID2D1HwndRenderTarget* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1RenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateBitmap(ID2D1HwndRenderTarget* This,D2D1_SIZE_U size,const void *src_data,UINT32 pitch,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateBitmapFromWicBitmap(ID2D1HwndRenderTarget* This,IWICBitmapSource *bitmap_source,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateSharedBitmap(ID2D1HwndRenderTarget* This,REFIID iid,void *data,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateBitmapBrush(ID2D1HwndRenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1BitmapBrush **brush) { - return This->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateSolidColorBrush(ID2D1HwndRenderTarget* This,const D2D1_COLOR_F *color,const D2D1_BRUSH_PROPERTIES *desc,ID2D1SolidColorBrush **brush) { - return This->lpVtbl->CreateSolidColorBrush(This,color,desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateGradientStopCollection(ID2D1HwndRenderTarget* This,const D2D1_GRADIENT_STOP *stops,UINT32 stop_count,D2D1_GAMMA gamma,D2D1_EXTEND_MODE extend_mode,ID2D1GradientStopCollection **gradient) { - return This->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateLinearGradientBrush(ID2D1HwndRenderTarget* This,const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1LinearGradientBrush **brush) { - return This->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateRadialGradientBrush(ID2D1HwndRenderTarget* This,const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1RadialGradientBrush **brush) { - return This->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateCompatibleRenderTarget(ID2D1HwndRenderTarget* This,const D2D1_SIZE_F *size,const D2D1_SIZE_U *pixel_size,const D2D1_PIXEL_FORMAT *format,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options,ID2D1BitmapRenderTarget **render_target) { - return This->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateLayer(ID2D1HwndRenderTarget* This,const D2D1_SIZE_F *size,ID2D1Layer **layer) { - return This->lpVtbl->CreateLayer(This,size,layer); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_CreateMesh(ID2D1HwndRenderTarget* This,ID2D1Mesh **mesh) { - return This->lpVtbl->CreateMesh(This,mesh); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawLine(ID2D1HwndRenderTarget* This,D2D1_POINT_2F p0,D2D1_POINT_2F p1,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawRectangle(ID2D1HwndRenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_FillRectangle(ID2D1HwndRenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawRoundedRectangle(ID2D1HwndRenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_FillRoundedRectangle(ID2D1HwndRenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRoundedRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawEllipse(ID2D1HwndRenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_FillEllipse(ID2D1HwndRenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush) { - This->lpVtbl->FillEllipse(This,ellipse,brush); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawGeometry(ID2D1HwndRenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_FillGeometry(ID2D1HwndRenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,ID2D1Brush *opacity_brush) { - This->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_FillMesh(ID2D1HwndRenderTarget* This,ID2D1Mesh *mesh,ID2D1Brush *brush) { - This->lpVtbl->FillMesh(This,mesh,brush); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_FillOpacityMask(ID2D1HwndRenderTarget* This,ID2D1Bitmap *mask,ID2D1Brush *brush,D2D1_OPACITY_MASK_CONTENT content,const D2D1_RECT_F *dst_rect,const D2D1_RECT_F *src_rect) { - This->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawBitmap(ID2D1HwndRenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_RECT_F *dst_rect,float opacity,D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode,const D2D1_RECT_F *src_rect) { - This->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawText(ID2D1HwndRenderTarget* This,const WCHAR *string,UINT32 string_len,IDWriteTextFormat *text_format,const D2D1_RECT_F *layout_rect,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawTextLayout(ID2D1HwndRenderTarget* This,D2D1_POINT_2F origin,IDWriteTextLayout *layout,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options) { - This->lpVtbl->DrawTextLayout(This,origin,layout,brush,options); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_DrawGlyphRun(ID2D1HwndRenderTarget* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,ID2D1Brush *brush,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SetTransform(ID2D1HwndRenderTarget* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_GetTransform(ID2D1HwndRenderTarget* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SetAntialiasMode(ID2D1HwndRenderTarget* This,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_ANTIALIAS_MODE ID2D1HwndRenderTarget_GetAntialiasMode(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->GetAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SetTextAntialiasMode(ID2D1HwndRenderTarget* This,D2D1_TEXT_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetTextAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_TEXT_ANTIALIAS_MODE ID2D1HwndRenderTarget_GetTextAntialiasMode(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->GetTextAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SetTextRenderingParams(ID2D1HwndRenderTarget* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_GetTextRenderingParams(ID2D1HwndRenderTarget* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SetTags(ID2D1HwndRenderTarget* This,D2D1_TAG tag1,D2D1_TAG tag2) { - This->lpVtbl->SetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_GetTags(ID2D1HwndRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - This->lpVtbl->GetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_PushLayer(ID2D1HwndRenderTarget* This,const D2D1_LAYER_PARAMETERS *layer_parameters,ID2D1Layer *layer) { - This->lpVtbl->PushLayer(This,layer_parameters,layer); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_PopLayer(ID2D1HwndRenderTarget* This) { - This->lpVtbl->PopLayer(This); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_Flush(ID2D1HwndRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->Flush(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SaveDrawingState(ID2D1HwndRenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->SaveDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_RestoreDrawingState(ID2D1HwndRenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->RestoreDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_PushAxisAlignedClip(ID2D1HwndRenderTarget* This,const D2D1_RECT_F *clip_rect,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_PopAxisAlignedClip(ID2D1HwndRenderTarget* This) { - This->lpVtbl->PopAxisAlignedClip(This); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_Clear(ID2D1HwndRenderTarget* This,const D2D1_COLOR_F *color) { - This->lpVtbl->Clear(This,color); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_BeginDraw(ID2D1HwndRenderTarget* This) { - This->lpVtbl->BeginDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_EndDraw(ID2D1HwndRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->EndDraw(This,tag1,tag2); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1HwndRenderTarget_GetPixelFormat(ID2D1HwndRenderTarget* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_SetDpi(ID2D1HwndRenderTarget* This,float dpi_x,float dpi_y) { - This->lpVtbl->SetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE void ID2D1HwndRenderTarget_GetDpi(ID2D1HwndRenderTarget* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE D2D1_SIZE_F ID2D1HwndRenderTarget_GetSize(ID2D1HwndRenderTarget* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1HwndRenderTarget_GetPixelSize(ID2D1HwndRenderTarget* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE UINT32 ID2D1HwndRenderTarget_GetMaximumBitmapSize(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->GetMaximumBitmapSize(This); -} -static __WIDL_INLINE WINBOOL ID2D1HwndRenderTarget_IsSupported(ID2D1HwndRenderTarget* This,const D2D1_RENDER_TARGET_PROPERTIES *desc) { - return This->lpVtbl->IsSupported(This,desc); -} -/*** ID2D1HwndRenderTarget methods ***/ -static __WIDL_INLINE D2D1_WINDOW_STATE ID2D1HwndRenderTarget_CheckWindowState(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->CheckWindowState(This); -} -static __WIDL_INLINE HRESULT ID2D1HwndRenderTarget_Resize(ID2D1HwndRenderTarget* This,const D2D1_SIZE_U *size) { - return This->lpVtbl->Resize(This,size); -} -static __WIDL_INLINE HWND ID2D1HwndRenderTarget_GetHwnd(ID2D1HwndRenderTarget* This) { - return This->lpVtbl->GetHwnd(This); -} -#endif -#endif -#endif - - -#endif /* __ID2D1HwndRenderTarget_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1DCRenderTarget interface - */ -#ifndef __ID2D1DCRenderTarget_INTERFACE_DEFINED__ -#define __ID2D1DCRenderTarget_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1DCRenderTarget, 0x1c51bc64, 0xde61, 0x46fd, 0x98,0x99, 0x63,0xa5,0xd8,0xf0,0x39,0x50); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("1c51bc64-de61-46fd-9899-63a5d8f03950") -ID2D1DCRenderTarget : public ID2D1RenderTarget -{ - virtual HRESULT STDMETHODCALLTYPE BindDC( - const HDC dc, - const RECT *rect) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1DCRenderTarget, 0x1c51bc64, 0xde61, 0x46fd, 0x98,0x99, 0x63,0xa5,0xd8,0xf0,0x39,0x50) -#endif -#else typedef struct ID2D1DCRenderTargetVtbl { - BEGIN_INTERFACE + ID2D1RenderTargetVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1DCRenderTarget *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1DCRenderTarget *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1DCRenderTarget *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1DCRenderTarget *This, - ID2D1Factory **factory); - - /*** ID2D1RenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateBitmap)( - ID2D1DCRenderTarget *This, - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapFromWicBitmap)( - ID2D1DCRenderTarget *This, - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateSharedBitmap)( - ID2D1DCRenderTarget *This, - REFIID iid, - void *data, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapBrush)( - ID2D1DCRenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateSolidColorBrush)( - ID2D1DCRenderTarget *This, - const D2D1_COLOR_F *color, - const D2D1_BRUSH_PROPERTIES *desc, - ID2D1SolidColorBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateGradientStopCollection)( - ID2D1DCRenderTarget *This, - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_GAMMA gamma, - D2D1_EXTEND_MODE extend_mode, - ID2D1GradientStopCollection **gradient); - - HRESULT (STDMETHODCALLTYPE *CreateLinearGradientBrush)( - ID2D1DCRenderTarget *This, - const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1LinearGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateRadialGradientBrush)( - ID2D1DCRenderTarget *This, - const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1RadialGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateCompatibleRenderTarget)( - ID2D1DCRenderTarget *This, - const D2D1_SIZE_F *size, - const D2D1_SIZE_U *pixel_size, - const D2D1_PIXEL_FORMAT *format, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - ID2D1BitmapRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateLayer)( - ID2D1DCRenderTarget *This, - const D2D1_SIZE_F *size, - ID2D1Layer **layer); - - HRESULT (STDMETHODCALLTYPE *CreateMesh)( - ID2D1DCRenderTarget *This, - ID2D1Mesh **mesh); - - void (STDMETHODCALLTYPE *DrawLine)( - ID2D1DCRenderTarget *This, - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *DrawRectangle)( - ID2D1DCRenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRectangle)( - ID2D1DCRenderTarget *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawRoundedRectangle)( - ID2D1DCRenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRoundedRectangle)( - ID2D1DCRenderTarget *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawEllipse)( - ID2D1DCRenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillEllipse)( - ID2D1DCRenderTarget *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawGeometry)( - ID2D1DCRenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillGeometry)( - ID2D1DCRenderTarget *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush); - - void (STDMETHODCALLTYPE *FillMesh)( - ID2D1DCRenderTarget *This, - ID2D1Mesh *mesh, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *FillOpacityMask)( - ID2D1DCRenderTarget *This, - ID2D1Bitmap *mask, - ID2D1Brush *brush, - D2D1_OPACITY_MASK_CONTENT content, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawBitmap)( - ID2D1DCRenderTarget *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawText)( - ID2D1DCRenderTarget *This, - const WCHAR *string, - UINT32 string_len, - IDWriteTextFormat *text_format, - const D2D1_RECT_F *layout_rect, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *DrawTextLayout)( - ID2D1DCRenderTarget *This, - D2D1_POINT_2F origin, - IDWriteTextLayout *layout, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options); - - void (STDMETHODCALLTYPE *DrawGlyphRun)( - ID2D1DCRenderTarget *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1DCRenderTarget *This, - const D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1DCRenderTarget *This, - D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *SetAntialiasMode)( - ID2D1DCRenderTarget *This, - D2D1_ANTIALIAS_MODE antialias_mode); - - D2D1_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetAntialiasMode)( - ID2D1DCRenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextAntialiasMode)( - ID2D1DCRenderTarget *This, - D2D1_TEXT_ANTIALIAS_MODE antialias_mode); - - D2D1_TEXT_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetTextAntialiasMode)( - ID2D1DCRenderTarget *This); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1DCRenderTarget *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1DCRenderTarget *This, - IDWriteRenderingParams **text_rendering_params); - - void (STDMETHODCALLTYPE *SetTags)( - ID2D1DCRenderTarget *This, - D2D1_TAG tag1, - D2D1_TAG tag2); - - void (STDMETHODCALLTYPE *GetTags)( - ID2D1DCRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *PushLayer)( - ID2D1DCRenderTarget *This, - const D2D1_LAYER_PARAMETERS *layer_parameters, - ID2D1Layer *layer); - - void (STDMETHODCALLTYPE *PopLayer)( - ID2D1DCRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *Flush)( - ID2D1DCRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *SaveDrawingState)( - ID2D1DCRenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *RestoreDrawingState)( - ID2D1DCRenderTarget *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *PushAxisAlignedClip)( - ID2D1DCRenderTarget *This, - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode); - - void (STDMETHODCALLTYPE *PopAxisAlignedClip)( - ID2D1DCRenderTarget *This); - - void (STDMETHODCALLTYPE *Clear)( - ID2D1DCRenderTarget *This, - const D2D1_COLOR_F *color); - - void (STDMETHODCALLTYPE *BeginDraw)( - ID2D1DCRenderTarget *This); - - HRESULT (STDMETHODCALLTYPE *EndDraw)( - ID2D1DCRenderTarget *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1DCRenderTarget *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *SetDpi)( - ID2D1DCRenderTarget *This, - float dpi_x, - float dpi_y); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1DCRenderTarget *This, - float *dpi_x, - float *dpi_y); - - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1DCRenderTarget *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1DCRenderTarget *This, - D2D1_SIZE_U *__ret); - - UINT32 (STDMETHODCALLTYPE *GetMaximumBitmapSize)( - ID2D1DCRenderTarget *This); - - WINBOOL (STDMETHODCALLTYPE *IsSupported)( - ID2D1DCRenderTarget *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc); - - /*** ID2D1DCRenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *BindDC)( - ID2D1DCRenderTarget *This, - const HDC dc, - const RECT *rect); - - END_INTERFACE + STDMETHOD(BindDC)(ID2D1DCRenderTarget *This, const HDC hDC, const RECT *pSubRect) PURE; } ID2D1DCRenderTargetVtbl; -interface ID2D1DCRenderTarget { - CONST_VTBL ID2D1DCRenderTargetVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1DCRenderTarget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1DCRenderTarget_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1DCRenderTarget_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1DCRenderTarget_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1RenderTarget methods ***/ -#define ID2D1DCRenderTarget_CreateBitmap(This,size,src_data,pitch,desc,bitmap) (This)->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap) -#define ID2D1DCRenderTarget_CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) (This)->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap) -#define ID2D1DCRenderTarget_CreateSharedBitmap(This,iid,data,desc,bitmap) (This)->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap) -#define ID2D1DCRenderTarget_CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) (This)->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush) -#define ID2D1DCRenderTarget_CreateSolidColorBrush(This,color,desc,brush) (This)->lpVtbl->CreateSolidColorBrush(This,color,desc,brush) -#define ID2D1DCRenderTarget_CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) (This)->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient) -#define ID2D1DCRenderTarget_CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1DCRenderTarget_CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) (This)->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush) -#define ID2D1DCRenderTarget_CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) (This)->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target) -#define ID2D1DCRenderTarget_CreateLayer(This,size,layer) (This)->lpVtbl->CreateLayer(This,size,layer) -#define ID2D1DCRenderTarget_CreateMesh(This,mesh) (This)->lpVtbl->CreateMesh(This,mesh) -#define ID2D1DCRenderTarget_DrawLine(This,p0,p1,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style) -#define ID2D1DCRenderTarget_DrawRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1DCRenderTarget_FillRectangle(This,rect,brush) (This)->lpVtbl->FillRectangle(This,rect,brush) -#define ID2D1DCRenderTarget_DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1DCRenderTarget_FillRoundedRectangle(This,rect,brush) (This)->lpVtbl->FillRoundedRectangle(This,rect,brush) -#define ID2D1DCRenderTarget_DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style) -#define ID2D1DCRenderTarget_FillEllipse(This,ellipse,brush) (This)->lpVtbl->FillEllipse(This,ellipse,brush) -#define ID2D1DCRenderTarget_DrawGeometry(This,geometry,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style) -#define ID2D1DCRenderTarget_FillGeometry(This,geometry,brush,opacity_brush) (This)->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush) -#define ID2D1DCRenderTarget_FillMesh(This,mesh,brush) (This)->lpVtbl->FillMesh(This,mesh,brush) -#define ID2D1DCRenderTarget_FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) (This)->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect) -#define ID2D1DCRenderTarget_DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) (This)->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect) -#define ID2D1DCRenderTarget_DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) (This)->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode) -#define ID2D1DCRenderTarget_DrawTextLayout(This,origin,layout,brush,options) (This)->lpVtbl->DrawTextLayout(This,origin,layout,brush,options) -#define ID2D1DCRenderTarget_DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) (This)->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode) -#define ID2D1DCRenderTarget_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1DCRenderTarget_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -#define ID2D1DCRenderTarget_SetAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetAntialiasMode(This,antialias_mode) -#define ID2D1DCRenderTarget_GetAntialiasMode(This) (This)->lpVtbl->GetAntialiasMode(This) -#define ID2D1DCRenderTarget_SetTextAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetTextAntialiasMode(This,antialias_mode) -#define ID2D1DCRenderTarget_GetTextAntialiasMode(This) (This)->lpVtbl->GetTextAntialiasMode(This) -#define ID2D1DCRenderTarget_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1DCRenderTarget_GetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->GetTextRenderingParams(This,text_rendering_params) -#define ID2D1DCRenderTarget_SetTags(This,tag1,tag2) (This)->lpVtbl->SetTags(This,tag1,tag2) -#define ID2D1DCRenderTarget_GetTags(This,tag1,tag2) (This)->lpVtbl->GetTags(This,tag1,tag2) -#define ID2D1DCRenderTarget_PushLayer(This,layer_parameters,layer) (This)->lpVtbl->PushLayer(This,layer_parameters,layer) -#define ID2D1DCRenderTarget_PopLayer(This) (This)->lpVtbl->PopLayer(This) -#define ID2D1DCRenderTarget_Flush(This,tag1,tag2) (This)->lpVtbl->Flush(This,tag1,tag2) -#define ID2D1DCRenderTarget_SaveDrawingState(This,state_block) (This)->lpVtbl->SaveDrawingState(This,state_block) -#define ID2D1DCRenderTarget_RestoreDrawingState(This,state_block) (This)->lpVtbl->RestoreDrawingState(This,state_block) -#define ID2D1DCRenderTarget_PushAxisAlignedClip(This,clip_rect,antialias_mode) (This)->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode) -#define ID2D1DCRenderTarget_PopAxisAlignedClip(This) (This)->lpVtbl->PopAxisAlignedClip(This) -#define ID2D1DCRenderTarget_Clear(This,color) (This)->lpVtbl->Clear(This,color) -#define ID2D1DCRenderTarget_BeginDraw(This) (This)->lpVtbl->BeginDraw(This) -#define ID2D1DCRenderTarget_EndDraw(This,tag1,tag2) (This)->lpVtbl->EndDraw(This,tag1,tag2) -#define ID2D1DCRenderTarget_GetPixelFormat(This) ID2D1DCRenderTarget_GetPixelFormat_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1DCRenderTarget_SetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->SetDpi(This,dpi_x,dpi_y) -#define ID2D1DCRenderTarget_GetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDpi(This,dpi_x,dpi_y) -#define ID2D1DCRenderTarget_GetSize(This) ID2D1DCRenderTarget_GetSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1DCRenderTarget_GetPixelSize(This) ID2D1DCRenderTarget_GetPixelSize_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#define ID2D1DCRenderTarget_GetMaximumBitmapSize(This) (This)->lpVtbl->GetMaximumBitmapSize(This) -#define ID2D1DCRenderTarget_IsSupported(This,desc) (This)->lpVtbl->IsSupported(This,desc) -/*** ID2D1DCRenderTarget methods ***/ -#define ID2D1DCRenderTarget_BindDC(This,dc,rect) (This)->lpVtbl->BindDC(This,dc,rect) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_QueryInterface(ID2D1DCRenderTarget* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1DCRenderTarget_AddRef(ID2D1DCRenderTarget* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1DCRenderTarget_Release(ID2D1DCRenderTarget* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1DCRenderTarget_GetFactory(ID2D1DCRenderTarget* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1RenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateBitmap(ID2D1DCRenderTarget* This,D2D1_SIZE_U size,const void *src_data,UINT32 pitch,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmap(This,size,src_data,pitch,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateBitmapFromWicBitmap(ID2D1DCRenderTarget* This,IWICBitmapSource *bitmap_source,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateSharedBitmap(ID2D1DCRenderTarget* This,REFIID iid,void *data,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateBitmapBrush(ID2D1DCRenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1BitmapBrush **brush) { - return This->lpVtbl->CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateSolidColorBrush(ID2D1DCRenderTarget* This,const D2D1_COLOR_F *color,const D2D1_BRUSH_PROPERTIES *desc,ID2D1SolidColorBrush **brush) { - return This->lpVtbl->CreateSolidColorBrush(This,color,desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateGradientStopCollection(ID2D1DCRenderTarget* This,const D2D1_GRADIENT_STOP *stops,UINT32 stop_count,D2D1_GAMMA gamma,D2D1_EXTEND_MODE extend_mode,ID2D1GradientStopCollection **gradient) { - return This->lpVtbl->CreateGradientStopCollection(This,stops,stop_count,gamma,extend_mode,gradient); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateLinearGradientBrush(ID2D1DCRenderTarget* This,const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1LinearGradientBrush **brush) { - return This->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateRadialGradientBrush(ID2D1DCRenderTarget* This,const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1RadialGradientBrush **brush) { - return This->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateCompatibleRenderTarget(ID2D1DCRenderTarget* This,const D2D1_SIZE_F *size,const D2D1_SIZE_U *pixel_size,const D2D1_PIXEL_FORMAT *format,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options,ID2D1BitmapRenderTarget **render_target) { - return This->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateLayer(ID2D1DCRenderTarget* This,const D2D1_SIZE_F *size,ID2D1Layer **layer) { - return This->lpVtbl->CreateLayer(This,size,layer); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_CreateMesh(ID2D1DCRenderTarget* This,ID2D1Mesh **mesh) { - return This->lpVtbl->CreateMesh(This,mesh); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawLine(ID2D1DCRenderTarget* This,D2D1_POINT_2F p0,D2D1_POINT_2F p1,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawRectangle(ID2D1DCRenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_FillRectangle(ID2D1DCRenderTarget* This,const D2D1_RECT_F *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawRoundedRectangle(ID2D1DCRenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_FillRoundedRectangle(ID2D1DCRenderTarget* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRoundedRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawEllipse(ID2D1DCRenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_FillEllipse(ID2D1DCRenderTarget* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush) { - This->lpVtbl->FillEllipse(This,ellipse,brush); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawGeometry(ID2D1DCRenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_FillGeometry(ID2D1DCRenderTarget* This,ID2D1Geometry *geometry,ID2D1Brush *brush,ID2D1Brush *opacity_brush) { - This->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_FillMesh(ID2D1DCRenderTarget* This,ID2D1Mesh *mesh,ID2D1Brush *brush) { - This->lpVtbl->FillMesh(This,mesh,brush); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_FillOpacityMask(ID2D1DCRenderTarget* This,ID2D1Bitmap *mask,ID2D1Brush *brush,D2D1_OPACITY_MASK_CONTENT content,const D2D1_RECT_F *dst_rect,const D2D1_RECT_F *src_rect) { - This->lpVtbl->FillOpacityMask(This,mask,brush,content,dst_rect,src_rect); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawBitmap(ID2D1DCRenderTarget* This,ID2D1Bitmap *bitmap,const D2D1_RECT_F *dst_rect,float opacity,D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode,const D2D1_RECT_F *src_rect) { - This->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawText(ID2D1DCRenderTarget* This,const WCHAR *string,UINT32 string_len,IDWriteTextFormat *text_format,const D2D1_RECT_F *layout_rect,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawTextLayout(ID2D1DCRenderTarget* This,D2D1_POINT_2F origin,IDWriteTextLayout *layout,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options) { - This->lpVtbl->DrawTextLayout(This,origin,layout,brush,options); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_DrawGlyphRun(ID2D1DCRenderTarget* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,ID2D1Brush *brush,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,brush,measuring_mode); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SetTransform(ID2D1DCRenderTarget* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_GetTransform(ID2D1DCRenderTarget* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SetAntialiasMode(ID2D1DCRenderTarget* This,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_ANTIALIAS_MODE ID2D1DCRenderTarget_GetAntialiasMode(ID2D1DCRenderTarget* This) { - return This->lpVtbl->GetAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SetTextAntialiasMode(ID2D1DCRenderTarget* This,D2D1_TEXT_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetTextAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_TEXT_ANTIALIAS_MODE ID2D1DCRenderTarget_GetTextAntialiasMode(ID2D1DCRenderTarget* This) { - return This->lpVtbl->GetTextAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SetTextRenderingParams(ID2D1DCRenderTarget* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_GetTextRenderingParams(ID2D1DCRenderTarget* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SetTags(ID2D1DCRenderTarget* This,D2D1_TAG tag1,D2D1_TAG tag2) { - This->lpVtbl->SetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_GetTags(ID2D1DCRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - This->lpVtbl->GetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_PushLayer(ID2D1DCRenderTarget* This,const D2D1_LAYER_PARAMETERS *layer_parameters,ID2D1Layer *layer) { - This->lpVtbl->PushLayer(This,layer_parameters,layer); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_PopLayer(ID2D1DCRenderTarget* This) { - This->lpVtbl->PopLayer(This); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_Flush(ID2D1DCRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->Flush(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SaveDrawingState(ID2D1DCRenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->SaveDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_RestoreDrawingState(ID2D1DCRenderTarget* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->RestoreDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_PushAxisAlignedClip(ID2D1DCRenderTarget* This,const D2D1_RECT_F *clip_rect,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_PopAxisAlignedClip(ID2D1DCRenderTarget* This) { - This->lpVtbl->PopAxisAlignedClip(This); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_Clear(ID2D1DCRenderTarget* This,const D2D1_COLOR_F *color) { - This->lpVtbl->Clear(This,color); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_BeginDraw(ID2D1DCRenderTarget* This) { - This->lpVtbl->BeginDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_EndDraw(ID2D1DCRenderTarget* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->EndDraw(This,tag1,tag2); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1DCRenderTarget_GetPixelFormat(ID2D1DCRenderTarget* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_SetDpi(ID2D1DCRenderTarget* This,float dpi_x,float dpi_y) { - This->lpVtbl->SetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE void ID2D1DCRenderTarget_GetDpi(ID2D1DCRenderTarget* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE D2D1_SIZE_F ID2D1DCRenderTarget_GetSize(ID2D1DCRenderTarget* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1DCRenderTarget_GetPixelSize(ID2D1DCRenderTarget* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE UINT32 ID2D1DCRenderTarget_GetMaximumBitmapSize(ID2D1DCRenderTarget* This) { - return This->lpVtbl->GetMaximumBitmapSize(This); -} -static __WIDL_INLINE WINBOOL ID2D1DCRenderTarget_IsSupported(ID2D1DCRenderTarget* This,const D2D1_RENDER_TARGET_PROPERTIES *desc) { - return This->lpVtbl->IsSupported(This,desc); -} -/*** ID2D1DCRenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1DCRenderTarget_BindDC(ID2D1DCRenderTarget* This,const HDC dc,const RECT *rect) { - return This->lpVtbl->BindDC(This,dc,rect); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1DCRenderTarget_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1GdiInteropRenderTarget interface - */ -#ifndef __ID2D1GdiInteropRenderTarget_INTERFACE_DEFINED__ -#define __ID2D1GdiInteropRenderTarget_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1GdiInteropRenderTarget, 0xe0db51c3, 0x6f77, 0x4bae, 0xb3,0xd5, 0xe4,0x75,0x09,0xb3,0x58,0x38); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("e0db51c3-6f77-4bae-b3d5-e47509b35838") -ID2D1GdiInteropRenderTarget : public IUnknown +interface ID2D1DCRenderTarget { - virtual HRESULT STDMETHODCALLTYPE GetDC( - D2D1_DC_INITIALIZE_MODE mode, - HDC *dc) = 0; - - virtual HRESULT STDMETHODCALLTYPE ReleaseDC( - const RECT *update) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GdiInteropRenderTarget, 0xe0db51c3, 0x6f77, 0x4bae, 0xb3,0xd5, 0xe4,0x75,0x09,0xb3,0x58,0x38) -#endif -#else -typedef struct ID2D1GdiInteropRenderTargetVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GdiInteropRenderTarget *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GdiInteropRenderTarget *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GdiInteropRenderTarget *This); - - /*** ID2D1GdiInteropRenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *GetDC)( - ID2D1GdiInteropRenderTarget *This, - D2D1_DC_INITIALIZE_MODE mode, - HDC *dc); - - HRESULT (STDMETHODCALLTYPE *ReleaseDC)( - ID2D1GdiInteropRenderTarget *This, - const RECT *update); - - END_INTERFACE -} ID2D1GdiInteropRenderTargetVtbl; - -interface ID2D1GdiInteropRenderTarget { - CONST_VTBL ID2D1GdiInteropRenderTargetVtbl* lpVtbl; + const ID2D1DCRenderTargetVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GdiInteropRenderTarget_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GdiInteropRenderTarget_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GdiInteropRenderTarget_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1GdiInteropRenderTarget methods ***/ -#define ID2D1GdiInteropRenderTarget_GetDC(This,mode,dc) (This)->lpVtbl->GetDC(This,mode,dc) -#define ID2D1GdiInteropRenderTarget_ReleaseDC(This,update) (This)->lpVtbl->ReleaseDC(This,update) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GdiInteropRenderTarget_QueryInterface(ID2D1GdiInteropRenderTarget* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GdiInteropRenderTarget_AddRef(ID2D1GdiInteropRenderTarget* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GdiInteropRenderTarget_Release(ID2D1GdiInteropRenderTarget* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1GdiInteropRenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1GdiInteropRenderTarget_GetDC(ID2D1GdiInteropRenderTarget* This,D2D1_DC_INITIALIZE_MODE mode,HDC *dc) { - return This->lpVtbl->GetDC(This,mode,dc); -} -static __WIDL_INLINE HRESULT ID2D1GdiInteropRenderTarget_ReleaseDC(ID2D1GdiInteropRenderTarget* This,const RECT *update) { - return This->lpVtbl->ReleaseDC(This,update); -} -#endif -#endif +#define ID2D1DCRenderTarget_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1DCRenderTarget_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1DCRenderTarget_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1DCRenderTarget_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1DCRenderTarget_BeginDraw(this) (this)->lpVtbl->Base.BeginDraw((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_Clear(this,A) (this)->lpVtbl->Base.Clear((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_CreateBitmap(this,A,B,C,D,E) (this)->lpVtbl->Base.CreateBitmap((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1DCRenderTarget_CreateBitmapBrush(this,A,B) (this)->lpVtbl->Base.CreateBitmapBrush((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_CreateBitmapFromWicBitmap(this,A,B,C) (this)->lpVtbl->Base.CreateBitmapFromWicBitmap((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1DCRenderTarget_CreateCompatibleRenderTarget(this,A,B,C,D,E) (this)->lpVtbl->Base.CreateCompatibleRenderTarget((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1DCRenderTarget_CreateGradientStopCollection(this,A,B,C) (this)->lpVtbl->Base.CreateGradientStopCollection((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1DCRenderTarget_CreateLayer(this,A,B) (this)->lpVtbl->Base.CreateLayer((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_CreateLinearGradientBrush(this,A,B,C,D) (this)->lpVtbl->Base.CreateLinearGradientBrush((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_CreateMesh(this,A) (this)->lpVtbl->Base.CreateMesh((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_CreateRadialGradientBrush(this,A,B,C,D) (this)->lpVtbl->Base.CreateRadialGradientBrush((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_CreateSharedBitmap(this,A,B,C,D) (this)->lpVtbl->Base.CreateSharedBitmap((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_CreateSolidColorBrush(this,A,B,C) (this)->lpVtbl->Base.CreateSolidColorBrush((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1DCRenderTarget_DrawBitmap(this,A,B,C,D,E) (this)->lpVtbl->Base.DrawBitmap((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1DCRenderTarget_DrawEllipse(this,A,B,C,D) (this)->lpVtbl->Base.DrawEllipse((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_DrawGeometry(this,A,B,C,D) (this)->lpVtbl->Base.DrawGeometry((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_DrawGlyphRun(this,A,B,C,D) (this)->lpVtbl->Base.DrawGlyphRun((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_DrawLine(this,A,B,C,D,E) (this)->lpVtbl->Base.DrawLine((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1DCRenderTarget_DrawRectangle(this,A,B,C,D) (this)->lpVtbl->Base.DrawRectangle((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_DrawRoundedRectangle(this,A,B,C,D) (this)->lpVtbl->Base.DrawRoundedRectangle((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_DrawText(this,A,B,C,D,E,F,G) (this)->lpVtbl->Base.DrawText((ID2D1RenderTarget*)(this),A,B,C,D,E,F,G) +#define ID2D1DCRenderTarget_DrawTextLayout(this,A,B,C,D) (this)->lpVtbl->Base.DrawTextLayout((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1DCRenderTarget_EndDraw(this,A,B) (this)->lpVtbl->Base.EndDraw((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_FillEllipse(this,A,B) (this)->lpVtbl->Base.FillEllipse((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_FillGeometry(this,A,B,C) (this)->lpVtbl->Base.FillGeometry((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1DCRenderTarget_FillMesh(this,A,B) (this)->lpVtbl->Base.FillMesh((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_FillOpacityMask(this,A,B,C,D,E) (this)->lpVtbl->Base.FillOpacityMask((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1DCRenderTarget_FillRectangle(this,A,B) (this)->lpVtbl->Base.FillRectangle((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_FillRoundedRectangle(this,A,B) (this)->lpVtbl->Base.FillRoundedRectangle((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_Flush(this,A,B) (this)->lpVtbl->Base.Flush((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_GetAntialiasMode(this) (this)->lpVtbl->Base.GetAntialiasMode((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_GetDpi(this,A,B) (this)->lpVtbl->Base.GetDpi((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_GetMaximumBitmapSize(this) (this)->lpVtbl->Base.GetMaximumBitmapSize((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_GetPixelFormat(this) (this)->lpVtbl->Base.GetPixelFormat((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_GetPixelSize(this) (this)->lpVtbl->Base.GetPixelSize((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_GetSize(this) (this)->lpVtbl->Base.GetSize((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_GetTags(this,A,B) (this)->lpVtbl->Base.GetTags((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_GetTextAntialiasMode(this) (this)->lpVtbl->Base.GetTextAntialiasMode((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_GetTextRenderingParams(this,A) (this)->lpVtbl->Base.GetTextRenderingParams((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_IsSupported(this,A) (this)->lpVtbl->Base.IsSupported((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_PopAxisAlignedClip(this) (this)->lpVtbl->Base.PopAxisAlignedClip((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_PopLayer(this) (this)->lpVtbl->Base.PopLayer((ID2D1RenderTarget*)(this)) +#define ID2D1DCRenderTarget_PushAxisAlignedClip(this,A,B) (this)->lpVtbl->Base.PushAxisAlignedClip((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_PushLayer(this,A,B) (this)->lpVtbl->Base.PushLayer((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_RestoreDrawingState(this,A) (this)->lpVtbl->Base.RestoreDrawingState((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_SaveDrawingState(this,A) (this)->lpVtbl->Base.SaveDrawingState((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_SetAntialiasMode(this,A) (this)->lpVtbl->Base.SetAntialiasMode((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_SetDpi(this,A,B) (this)->lpVtbl->Base.SetDpi((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_SetTags(this,A,B) (this)->lpVtbl->Base.SetTags((ID2D1RenderTarget*)(this),A,B) +#define ID2D1DCRenderTarget_SetTextAntialiasMode(this,A) (this)->lpVtbl->Base.SetTextAntialiasMode((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_SetTextRenderingParams(this,A) (this)->lpVtbl->Base.SetTextRenderingParams((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1RenderTarget*)(this),A) +#define ID2D1DCRenderTarget_BindDC(this,A,B) (this)->lpVtbl->BindDC(this,A,B) #endif +DEFINE_GUID(IID_ID2D1DrawingStateBlock, 0x28506e39,0xebf6,0x46a1,0xbb,0x47,0xfd,0x85,0x56,0x5a,0xb9,0x57); -#endif /* __ID2D1GdiInteropRenderTarget_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Factory interface - */ -#ifndef __ID2D1Factory_INTERFACE_DEFINED__ -#define __ID2D1Factory_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Factory, 0x06152247, 0x6f50, 0x465a, 0x92,0x45, 0x11,0x8b,0xfd,0x3b,0x60,0x07); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("06152247-6f50-465a-9245-118bfd3b6007") -ID2D1Factory : public IUnknown -{ - virtual HRESULT STDMETHODCALLTYPE ReloadSystemMetrics( - ) = 0; - - virtual void STDMETHODCALLTYPE GetDesktopDpi( - float *dpi_x, - float *dpi_y) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateRectangleGeometry( - const D2D1_RECT_F *rect, - ID2D1RectangleGeometry **geometry) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateRoundedRectangleGeometry( - const D2D1_ROUNDED_RECT *rect, - ID2D1RoundedRectangleGeometry **geometry) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateEllipseGeometry( - const D2D1_ELLIPSE *ellipse, - ID2D1EllipseGeometry **geometry) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateGeometryGroup( - D2D1_FILL_MODE fill_mode, - ID2D1Geometry **geometries, - UINT32 geometry_count, - ID2D1GeometryGroup **group) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateTransformedGeometry( - ID2D1Geometry *src_geometry, - const D2D1_MATRIX_3X2_F *transform, - ID2D1TransformedGeometry **transformed_geometry) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreatePathGeometry( - ID2D1PathGeometry **geometry) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateStrokeStyle( - const D2D1_STROKE_STYLE_PROPERTIES *desc, - const float *dashes, - UINT32 dash_count, - ID2D1StrokeStyle **stroke_style) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateDrawingStateBlock( - const D2D1_DRAWING_STATE_DESCRIPTION *desc, - IDWriteRenderingParams *text_rendering_params, - ID2D1DrawingStateBlock **state_block) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateWicBitmapRenderTarget( - IWICBitmap *target, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1RenderTarget **render_target) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateHwndRenderTarget( - const D2D1_RENDER_TARGET_PROPERTIES *desc, - const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwnd_rt_desc, - ID2D1HwndRenderTarget **render_target) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateDxgiSurfaceRenderTarget( - IDXGISurface *surface, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1RenderTarget **render_target) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateDCRenderTarget( - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1DCRenderTarget **render_target) = 0; +interface ID2D1DrawingStateBlock : public ID2D1Resource { + STDMETHOD_(void, GetDescription)(D2D1_DRAWING_STATE_DESCRIPTION *stateDescription) const PURE; + STDMETHOD_(void, SetDescription)(const D2D1_DRAWING_STATE_DESCRIPTION *stateDescription) PURE; + STDMETHOD_(void, SetTextRenderingParams)(IDWriteRenderingParams *textRenderingParams = NULL) PURE; + STDMETHOD_(void, GetTextRenderingParams)(IDWriteRenderingParams **textRenderingParams) const PURE; + void SetDescription(const D2D1_DRAWING_STATE_DESCRIPTION &stateDescription) { + SetDescription(&stateDescription); + } }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Factory, 0x06152247, 0x6f50, 0x465a, 0x92,0x45, 0x11,0x8b,0xfd,0x3b,0x60,0x07) -#endif + #else + +typedef struct ID2D1DrawingStateBlockVtbl { + ID2D1ResourceVtbl Base; + + STDMETHOD_(void, GetDescription)(ID2D1DrawingStateBlock *This, D2D1_DRAWING_STATE_DESCRIPTION *stateDescription) PURE; + STDMETHOD_(void, SetDescription)(ID2D1DrawingStateBlock *This, const D2D1_DRAWING_STATE_DESCRIPTION *stateDescription) PURE; + STDMETHOD_(void, SetTextRenderingParams)(ID2D1DrawingStateBlock *This, IDWriteRenderingParams *textRenderingParams) PURE; + STDMETHOD_(void, GetTextRenderingParams)(ID2D1DrawingStateBlock *This, IDWriteRenderingParams **textRenderingParams) PURE; +} ID2D1DrawingStateBlockVtbl; + +interface ID2D1DrawingStateBlock { + const struct ID2D1DrawingStateBlockVtbl *lpVtbl; +}; + +#define ID2D1DrawingStateBlock_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1DrawingStateBlock_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1DrawingStateBlock_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1DrawingStateBlock_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1DrawingStateBlock_GetDescription(this,A) (this)->lpVtbl->GetDescription(this,A) +#define ID2D1DrawingStateBlock_GetTextRenderingParams(this,A) (this)->lpVtbl->GetTextRenderingParams(this,A) +#define ID2D1DrawingStateBlock_SetDescription(this,A) (this)->lpVtbl->SetDescription(this,A) +#define ID2D1DrawingStateBlock_SetTextRenderingParams(this,A) (this)->lpVtbl->SetTextRenderingParams(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1SimplifiedGeometrySink, 0x2cd9069e,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1SimplifiedGeometrySink : public IUnknown { + STDMETHOD_(void, SetFillMode)(D2D1_FILL_MODE fillMode) PURE; + STDMETHOD_(void, SetSegmentFlags)(D2D1_PATH_SEGMENT vertexFlags) PURE; + STDMETHOD_(void, BeginFigure)(D2D1_POINT_2F startPoint, D2D1_FIGURE_BEGIN figureBegin) PURE; + STDMETHOD_(void, AddLines)(const D2D1_POINT_2F *points, UINT pointsCount) PURE; + STDMETHOD_(void, AddBeziers)(const D2D1_BEZIER_SEGMENT *beziers, UINT beziersCount) PURE; + STDMETHOD_(void, EndFigure)(D2D1_FIGURE_END figureEnd) PURE; + STDMETHOD(Close)(void) PURE; +}; + +#else + +typedef struct ID2D1SimplifiedGeometrySinkVtbl { + IUnknownVtbl Base; + + STDMETHOD_(void, SetFillMode)(ID2D1SimplifiedGeometrySink *This, D2D1_FILL_MODE fillMode) PURE; + STDMETHOD_(void, SetSegmentFlags)(ID2D1SimplifiedGeometrySink *This, D2D1_PATH_SEGMENT vertexFlags) PURE; + STDMETHOD_(void, BeginFigure)(ID2D1SimplifiedGeometrySink *This, D2D1_POINT_2F startPoint, D2D1_FIGURE_BEGIN figureBegin) PURE; + STDMETHOD_(void, AddLines)(ID2D1SimplifiedGeometrySink *This, const D2D1_POINT_2F *points, UINT pointsCount) PURE; + STDMETHOD_(void, AddBeziers)(ID2D1SimplifiedGeometrySink *This, const D2D1_BEZIER_SEGMENT *beziers, UINT beziersCount) PURE; + STDMETHOD_(void, EndFigure)(ID2D1SimplifiedGeometrySink *This, D2D1_FIGURE_END figureEnd) PURE; + STDMETHOD(Close)(ID2D1SimplifiedGeometrySink *This) PURE; +} ID2D1SimplifiedGeometrySinkVtbl; + +interface ID2D1SimplifiedGeometrySink { + const ID2D1SimplifiedGeometrySinkVtbl *lpVtbl; +}; + +#define ID2D1SimplifiedGeometrySink_QueryInterface(this,A,B) (this)->lpVtbl->Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1SimplifiedGeometrySink_AddRef(this) (this)->lpVtbl->Base.AddRef((IUnknown*)(this)) +#define ID2D1SimplifiedGeometrySink_Release(this) (this)->lpVtbl->Base.Release((IUnknown*)(this)) +#define ID2D1SimplifiedGeometrySink_SetFillMode(this,A) (this)->lpVtbl->SetFillMode(this,A) +#define ID2D1SimplifiedGeometrySink_SetSegmentFlags(this,A) (this)->lpVtbl->SetSegmentFlags(this,A) +#define ID2D1SimplifiedGeometrySink_BeginFigure(this,A,B) (this)->lpVtbl->BeginFigure(this,A,B) +#define ID2D1SimplifiedGeometrySink_AddLines(this,A,B) (this)->lpVtbl->AddLines(this,A,B) +#define ID2D1SimplifiedGeometrySink_AddBeziers(this,A,B) (this)->lpVtbl->AddBeziers(this,A,B) +#define ID2D1SimplifiedGeometrySink_EndFigure(this,A) (this)->lpVtbl->EndFigure(this,A) +#define ID2D1SimplifiedGeometrySink_Close(this) (this)->lpVtbl->Close(this) + +#endif + +DEFINE_GUID(IID_ID2D1EllipseGeometry, 0x2cd906a4,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1EllipseGeometry : public ID2D1Geometry { + STDMETHOD_(void, GetEllipse)(D2D1_ELLIPSE *ellipse) const PURE; +}; + +#else + +typedef struct ID2D1EllipseGeometryVtbl { + ID2D1GeometryVtbl Base; + + STDMETHOD_(void, GetEllipse)(ID2D1EllipseGeometry *This, D2D1_ELLIPSE *ellipse) PURE; +} ID2D1EllipseGeometryVtbl; + +interface ID2D1EllipseGeometry { + const struct ID2D1EllipseGeometryVtbl *lpVtbl; +}; + +#define ID2D1EllipseGeometry_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1EllipseGeometry_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1EllipseGeometry_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1EllipseGeometry_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1EllipseGeometry_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->Base.CombineWithGeometry((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1EllipseGeometry_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->Base.CompareWithGeometry((ID2D1Geometry*)(this),A,B,C) +#define ID2D1EllipseGeometry_ComputeArea(this,A,B) (this)->lpVtbl->Base.ComputeArea((ID2D1Geometry*)(this),A,B) +#define ID2D1EllipseGeometry_ComputeLength(this,A,B) (this)->lpVtbl->Base.ComputeLength((ID2D1Geometry*)(this),A,B) +#define ID2D1EllipseGeometry_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->Base.ComputePointAtLength((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1EllipseGeometry_FillContainsPoint(this,A,B,C) (this)->lpVtbl->Base.FillContainsPoint((ID2D1Geometry*)(this),A,B,C) +#define ID2D1EllipseGeometry_GetBounds(this,A,B) (this)->lpVtbl->Base.GetBounds((ID2D1Geometry*)(this),A,B) +#define ID2D1EllipseGeometry_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->Base.GetWidenedBounds((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1EllipseGeometry_Outline(this,A,B) (this)->lpVtbl->Base.Outline((ID2D1Geometry*)(this),A,B) +#define ID2D1EllipseGeometry_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->Base.StrokeContainsPoint((ID2D1Geometry*)(this),A,B,C,D,E) +#define ID2D1EllipseGeometry_Simplify(this,A,B,C) (this)->lpVtbl->Base.Simplify((ID2D1Geometry*)(this),A,B,C) +#define ID2D1EllipseGeometry_Tessellate(this,A,B) (this)->lpVtbl->Base.Tessellate((ID2D1Geometry*)(this),A,B) +#define ID2D1EllipseGeometry_Widen(this,A,B,C,D) (this)->lpVtbl->Base.Widen((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1EllipseGeometry_GetEllipse(this,A) (this)->lpVtbl->GetEllipse(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1Factory, 0x06152247,0x6f50,0x465a,0x92,0x45,0x11,0x8b,0xfd,0x3b,0x60,0x07); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Factory : public IUnknown { + STDMETHOD(ReloadSystemMetrics)(void) PURE; + STDMETHOD_(void, GetDesktopDpi)(FLOAT *dpiX, FLOAT *dpiY) PURE; + STDMETHOD(CreateRectangleGeometry)(const D2D1_RECT_F *rectangle, ID2D1RectangleGeometry **rectangleGeometry) PURE; + STDMETHOD(CreateRoundedRectangleGeometry)(const D2D1_ROUNDED_RECT *roundedRectangle, ID2D1RoundedRectangleGeometry **roundedRectangleGeometry) PURE; + STDMETHOD(CreateEllipseGeometry)(const D2D1_ELLIPSE *ellipse, ID2D1EllipseGeometry **ellipseGeometry) PURE; + STDMETHOD(CreateGeometryGroup)(D2D1_FILL_MODE fillMode, ID2D1Geometry **geometries, UINT geometriesCount, ID2D1GeometryGroup **geometryGroup) PURE; + STDMETHOD(CreateTransformedGeometry)(ID2D1Geometry *sourceGeometry, const D2D1_MATRIX_3X2_F *transform, ID2D1TransformedGeometry **transformedGeometry) PURE; + STDMETHOD(CreatePathGeometry)(ID2D1PathGeometry **pathGeometry) PURE; + STDMETHOD(CreateStrokeStyle)(const D2D1_STROKE_STYLE_PROPERTIES *strokeStyleProperties, const FLOAT *dashes, UINT dashesCount, ID2D1StrokeStyle **strokeStyle) PURE; + STDMETHOD(CreateDrawingStateBlock)(const D2D1_DRAWING_STATE_DESCRIPTION *drawingStateDescription, IDWriteRenderingParams *textRenderingParams, ID2D1DrawingStateBlock **drawingStateBlock) PURE; + STDMETHOD(CreateWicBitmapRenderTarget)(IWICBitmap *target, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, ID2D1RenderTarget **renderTarget) PURE; + STDMETHOD(CreateHwndRenderTarget)(const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwndRenderTargetProperties, ID2D1HwndRenderTarget **hwndRenderTarget) PURE; + STDMETHOD(CreateDxgiSurfaceRenderTarget)(IDXGISurface *dxgiSurface, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, ID2D1RenderTarget **renderTarget) PURE; + STDMETHOD(CreateDCRenderTarget)(const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, ID2D1DCRenderTarget **dcRenderTarget) PURE; + + HRESULT CreateRectangleGeometry(const D2D1_RECT_F &rectangle, ID2D1RectangleGeometry **rectangleGeometry) { + return CreateRectangleGeometry(&rectangle, rectangleGeometry); + } + + HRESULT CreateRoundedRectangleGeometry(const D2D1_ROUNDED_RECT &roundedRectangle, ID2D1RoundedRectangleGeometry **roundedRectangleGeometry) { + return CreateRoundedRectangleGeometry(&roundedRectangle, roundedRectangleGeometry); + } + + HRESULT CreateEllipseGeometry(const D2D1_ELLIPSE &ellipse, ID2D1EllipseGeometry **ellipseGeometry) { + return CreateEllipseGeometry(&ellipse, ellipseGeometry); + } + + HRESULT CreateTransformedGeometry(ID2D1Geometry *sourceGeometry, const D2D1_MATRIX_3X2_F &transform, ID2D1TransformedGeometry **transformedGeometry) { + return CreateTransformedGeometry(sourceGeometry, &transform, transformedGeometry); + } + + HRESULT CreateStrokeStyle(const D2D1_STROKE_STYLE_PROPERTIES &strokeStyleProperties, const FLOAT *dashes, UINT dashesCount, ID2D1StrokeStyle **strokeStyle) { + return CreateStrokeStyle(&strokeStyleProperties, dashes, dashesCount, strokeStyle); + } + + HRESULT CreateDrawingStateBlock(const D2D1_DRAWING_STATE_DESCRIPTION &drawingStateDescription, ID2D1DrawingStateBlock **drawingStateBlock) { + return CreateDrawingStateBlock(&drawingStateDescription, NULL, drawingStateBlock); + } + + HRESULT CreateDrawingStateBlock(ID2D1DrawingStateBlock **drawingStateBlock) { + return CreateDrawingStateBlock(NULL, NULL, drawingStateBlock); + } + + HRESULT CreateWicBitmapRenderTarget(IWICBitmap *target, const D2D1_RENDER_TARGET_PROPERTIES &renderTargetProperties, ID2D1RenderTarget **renderTarget) { + return CreateWicBitmapRenderTarget(target, &renderTargetProperties, renderTarget); + } + + HRESULT CreateHwndRenderTarget(const D2D1_RENDER_TARGET_PROPERTIES &renderTargetProperties, const D2D1_HWND_RENDER_TARGET_PROPERTIES &hwndRenderTargetProperties, ID2D1HwndRenderTarget **hwndRenderTarget) { + return CreateHwndRenderTarget(&renderTargetProperties, &hwndRenderTargetProperties, hwndRenderTarget); + } + + HRESULT CreateDxgiSurfaceRenderTarget(IDXGISurface *dxgiSurface, const D2D1_RENDER_TARGET_PROPERTIES &renderTargetProperties, ID2D1RenderTarget **renderTarget) { + return CreateDxgiSurfaceRenderTarget(dxgiSurface, &renderTargetProperties, renderTarget); + } +}; + +#else + typedef struct ID2D1FactoryVtbl { - BEGIN_INTERFACE + IUnknownVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Factory *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Factory *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Factory *This); - - /*** ID2D1Factory methods ***/ - HRESULT (STDMETHODCALLTYPE *ReloadSystemMetrics)( - ID2D1Factory *This); - - void (STDMETHODCALLTYPE *GetDesktopDpi)( - ID2D1Factory *This, - float *dpi_x, - float *dpi_y); - - HRESULT (STDMETHODCALLTYPE *CreateRectangleGeometry)( - ID2D1Factory *This, - const D2D1_RECT_F *rect, - ID2D1RectangleGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateRoundedRectangleGeometry)( - ID2D1Factory *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1RoundedRectangleGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateEllipseGeometry)( - ID2D1Factory *This, - const D2D1_ELLIPSE *ellipse, - ID2D1EllipseGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateGeometryGroup)( - ID2D1Factory *This, - D2D1_FILL_MODE fill_mode, - ID2D1Geometry **geometries, - UINT32 geometry_count, - ID2D1GeometryGroup **group); - - HRESULT (STDMETHODCALLTYPE *CreateTransformedGeometry)( - ID2D1Factory *This, - ID2D1Geometry *src_geometry, - const D2D1_MATRIX_3X2_F *transform, - ID2D1TransformedGeometry **transformed_geometry); - - HRESULT (STDMETHODCALLTYPE *CreatePathGeometry)( - ID2D1Factory *This, - ID2D1PathGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateStrokeStyle)( - ID2D1Factory *This, - const D2D1_STROKE_STYLE_PROPERTIES *desc, - const float *dashes, - UINT32 dash_count, - ID2D1StrokeStyle **stroke_style); - - HRESULT (STDMETHODCALLTYPE *CreateDrawingStateBlock)( - ID2D1Factory *This, - const D2D1_DRAWING_STATE_DESCRIPTION *desc, - IDWriteRenderingParams *text_rendering_params, - ID2D1DrawingStateBlock **state_block); - - HRESULT (STDMETHODCALLTYPE *CreateWicBitmapRenderTarget)( - ID2D1Factory *This, - IWICBitmap *target, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1RenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateHwndRenderTarget)( - ID2D1Factory *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwnd_rt_desc, - ID2D1HwndRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateDxgiSurfaceRenderTarget)( - ID2D1Factory *This, - IDXGISurface *surface, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1RenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateDCRenderTarget)( - ID2D1Factory *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1DCRenderTarget **render_target); - - END_INTERFACE + STDMETHOD(ReloadSystemMetrics)(ID2D1Factory *This) PURE; + STDMETHOD_(void, GetDesktopDpi)(ID2D1Factory *This, FLOAT *dpiX, FLOAT *dpiY) PURE; + STDMETHOD(CreateRectangleGeometry)(ID2D1Factory *This, const D2D1_RECT_F *rectangle, ID2D1RectangleGeometry **rectangleGeometry) PURE; + STDMETHOD(CreateRoundedRectangleGeometry)(ID2D1Factory *This, const D2D1_ROUNDED_RECT *roundedRectangle, ID2D1RoundedRectangleGeometry **roundedRectangleGeometry) PURE; + STDMETHOD(CreateEllipseGeometry)(ID2D1Factory *This, const D2D1_ELLIPSE *ellipse, ID2D1EllipseGeometry **ellipseGeometry) PURE; + STDMETHOD(CreateGeometryGroup)(ID2D1Factory *This, D2D1_FILL_MODE fillMode, ID2D1Geometry **geometries, UINT geometriesCount, ID2D1GeometryGroup **geometryGroup) PURE; + STDMETHOD(CreateTransformedGeometry)(ID2D1Factory *This, ID2D1Geometry *sourceGeometry, const D2D1_MATRIX_3X2_F *transform, ID2D1TransformedGeometry **transformedGeometry) PURE; + STDMETHOD(CreatePathGeometry)(ID2D1Factory *This, ID2D1PathGeometry **pathGeometry) PURE; + STDMETHOD(CreateStrokeStyle)(ID2D1Factory *This, const D2D1_STROKE_STYLE_PROPERTIES *strokeStyleProperties, const FLOAT *dashes, UINT dashesCount, ID2D1StrokeStyle **strokeStyle) PURE; + STDMETHOD(CreateDrawingStateBlock)(ID2D1Factory *This, const D2D1_DRAWING_STATE_DESCRIPTION *drawingStateDescription, IDWriteRenderingParams *textRenderingParams, ID2D1DrawingStateBlock **drawingStateBlock) PURE; + STDMETHOD(CreateWicBitmapRenderTarget)(ID2D1Factory *This, IWICBitmap *target, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, ID2D1RenderTarget **renderTarget) PURE; + STDMETHOD(CreateHwndRenderTarget)(ID2D1Factory *This, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwndRenderTargetProperties, ID2D1HwndRenderTarget **hwndRenderTarget) PURE; + STDMETHOD(CreateDxgiSurfaceRenderTarget)(ID2D1Factory *This, IDXGISurface *dxgiSurface, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, ID2D1RenderTarget **renderTarget) PURE; + STDMETHOD(CreateDCRenderTarget)(ID2D1Factory *This, const D2D1_RENDER_TARGET_PROPERTIES *renderTargetProperties, ID2D1DCRenderTarget **dcRenderTarget) PURE; } ID2D1FactoryVtbl; interface ID2D1Factory { - CONST_VTBL ID2D1FactoryVtbl* lpVtbl; + const ID2D1FactoryVtbl *lpVtbl; +}; + +#define ID2D1Factory_QueryInterface(this,A,B) (this)->lpVtbl->Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1Factory_AddRef(this) (this)->lpVtbl->Base.AddRef((IUnknown*)(this)) +#define ID2D1Factory_Release(this) (this)->lpVtbl->Base.Release((IUnknown*)(this)) +#define ID2D1Factory_CreateDCRenderTarget(this,A,B) (this)->lpVtbl->CreateDCRenderTarget(this,A,B) +#define ID2D1Factory_CreateDrawingStateBlock(this,A,B,C) (this)->lpVtbl->CreateDrawingStateBlock(this,A,B,C) +#define ID2D1Factory_CreateDxgiSurfaceRenderTarget(this,A,B,C) (this)->lpVtbl->CreateDxgiSurfaceRenderTarget(this,A,B,C) +#define ID2D1Factory_CreateEllipseGeometry(this,A,B) (this)->lpVtbl->CreateEllipseGeometry(this,A,B) +#define ID2D1Factory_CreateGeometryGroup(this,A,B,C,D) (this)->lpVtbl->CreateGeometryGroup(this,A,B,C,D) +#define ID2D1Factory_CreateHwndRenderTarget(this,A,B,C) (this)->lpVtbl->CreateHwndRenderTarget(this,A,B,C) +#define ID2D1Factory_CreatePathGeometry(this,A) (this)->lpVtbl->CreatePathGeometry(this,A) +#define ID2D1Factory_CreateRectangleGeometry(this,A,B) (this)->lpVtbl->CreateRectangleGeometry(this,A,B) +#define ID2D1Factory_CreateRoundedRectangleGeometry(this,A,B) (this)->lpVtbl->CreateRoundedRectangleGeometry(this,A,B) +#define ID2D1Factory_CreateStrokeStyle(this,A,B,C,D) (this)->lpVtbl->CreateStrokeStyle(this,A,B,C,D) +#define ID2D1Factory_CreateTransformedGeometry(this,A,B,C) (this)->lpVtbl->CreateTransformedGeometry(this,A,B,C) +#define ID2D1Factory_CreateWicBitmapRenderTarget(this,A,B,C) (this)->lpVtbl->CreateWicBitmapRenderTarget(this,A,B,C) +#define ID2D1Factory_GetDesktopDpi(this,A,B) (this)->lpVtbl->GetDesktopDpi(this,A,B) +#define ID2D1Factory_ReloadSystemMetrics(this) (this)->lpVtbl->ReloadSystemMetrics(this) + +#endif + +DEFINE_GUID(IID_ID2D1GdiInteropRenderTarget, 0xe0db51c3,0x6f77,0x4bae,0xb3,0xd5,0xe4,0x75,0x09,0xb3,0x58,0x38); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1GdiInteropRenderTarget : public IUnknown { + STDMETHOD(GetDC)(D2D1_DC_INITIALIZE_MODE mode, HDC *hdc) PURE; + STDMETHOD(ReleaseDC)(const RECT *update) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Factory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Factory_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Factory_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Factory methods ***/ -#define ID2D1Factory_ReloadSystemMetrics(This) (This)->lpVtbl->ReloadSystemMetrics(This) -#define ID2D1Factory_GetDesktopDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDesktopDpi(This,dpi_x,dpi_y) -#define ID2D1Factory_CreateRectangleGeometry(This,rect,geometry) (This)->lpVtbl->CreateRectangleGeometry(This,rect,geometry) -#define ID2D1Factory_CreateRoundedRectangleGeometry(This,rect,geometry) (This)->lpVtbl->CreateRoundedRectangleGeometry(This,rect,geometry) -#define ID2D1Factory_CreateEllipseGeometry(This,ellipse,geometry) (This)->lpVtbl->CreateEllipseGeometry(This,ellipse,geometry) -#define ID2D1Factory_CreateGeometryGroup(This,fill_mode,geometries,geometry_count,group) (This)->lpVtbl->CreateGeometryGroup(This,fill_mode,geometries,geometry_count,group) -#define ID2D1Factory_CreateTransformedGeometry(This,src_geometry,transform,transformed_geometry) (This)->lpVtbl->CreateTransformedGeometry(This,src_geometry,transform,transformed_geometry) -#define ID2D1Factory_CreatePathGeometry(This,geometry) (This)->lpVtbl->CreatePathGeometry(This,geometry) -#define ID2D1Factory_CreateStrokeStyle(This,desc,dashes,dash_count,stroke_style) (This)->lpVtbl->CreateStrokeStyle(This,desc,dashes,dash_count,stroke_style) -#define ID2D1Factory_CreateDrawingStateBlock(This,desc,text_rendering_params,state_block) (This)->lpVtbl->CreateDrawingStateBlock(This,desc,text_rendering_params,state_block) -#define ID2D1Factory_CreateWicBitmapRenderTarget(This,target,desc,render_target) (This)->lpVtbl->CreateWicBitmapRenderTarget(This,target,desc,render_target) -#define ID2D1Factory_CreateHwndRenderTarget(This,desc,hwnd_rt_desc,render_target) (This)->lpVtbl->CreateHwndRenderTarget(This,desc,hwnd_rt_desc,render_target) -#define ID2D1Factory_CreateDxgiSurfaceRenderTarget(This,surface,desc,render_target) (This)->lpVtbl->CreateDxgiSurfaceRenderTarget(This,surface,desc,render_target) -#define ID2D1Factory_CreateDCRenderTarget(This,desc,render_target) (This)->lpVtbl->CreateDCRenderTarget(This,desc,render_target) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Factory_QueryInterface(ID2D1Factory* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Factory_AddRef(ID2D1Factory* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Factory_Release(ID2D1Factory* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Factory methods ***/ -static __WIDL_INLINE HRESULT ID2D1Factory_ReloadSystemMetrics(ID2D1Factory* This) { - return This->lpVtbl->ReloadSystemMetrics(This); -} -static __WIDL_INLINE void ID2D1Factory_GetDesktopDpi(ID2D1Factory* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDesktopDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateRectangleGeometry(ID2D1Factory* This,const D2D1_RECT_F *rect,ID2D1RectangleGeometry **geometry) { - return This->lpVtbl->CreateRectangleGeometry(This,rect,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateRoundedRectangleGeometry(ID2D1Factory* This,const D2D1_ROUNDED_RECT *rect,ID2D1RoundedRectangleGeometry **geometry) { - return This->lpVtbl->CreateRoundedRectangleGeometry(This,rect,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateEllipseGeometry(ID2D1Factory* This,const D2D1_ELLIPSE *ellipse,ID2D1EllipseGeometry **geometry) { - return This->lpVtbl->CreateEllipseGeometry(This,ellipse,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateGeometryGroup(ID2D1Factory* This,D2D1_FILL_MODE fill_mode,ID2D1Geometry **geometries,UINT32 geometry_count,ID2D1GeometryGroup **group) { - return This->lpVtbl->CreateGeometryGroup(This,fill_mode,geometries,geometry_count,group); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateTransformedGeometry(ID2D1Factory* This,ID2D1Geometry *src_geometry,const D2D1_MATRIX_3X2_F *transform,ID2D1TransformedGeometry **transformed_geometry) { - return This->lpVtbl->CreateTransformedGeometry(This,src_geometry,transform,transformed_geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreatePathGeometry(ID2D1Factory* This,ID2D1PathGeometry **geometry) { - return This->lpVtbl->CreatePathGeometry(This,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateStrokeStyle(ID2D1Factory* This,const D2D1_STROKE_STYLE_PROPERTIES *desc,const float *dashes,UINT32 dash_count,ID2D1StrokeStyle **stroke_style) { - return This->lpVtbl->CreateStrokeStyle(This,desc,dashes,dash_count,stroke_style); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateDrawingStateBlock(ID2D1Factory* This,const D2D1_DRAWING_STATE_DESCRIPTION *desc,IDWriteRenderingParams *text_rendering_params,ID2D1DrawingStateBlock **state_block) { - return This->lpVtbl->CreateDrawingStateBlock(This,desc,text_rendering_params,state_block); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateWicBitmapRenderTarget(ID2D1Factory* This,IWICBitmap *target,const D2D1_RENDER_TARGET_PROPERTIES *desc,ID2D1RenderTarget **render_target) { - return This->lpVtbl->CreateWicBitmapRenderTarget(This,target,desc,render_target); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateHwndRenderTarget(ID2D1Factory* This,const D2D1_RENDER_TARGET_PROPERTIES *desc,const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwnd_rt_desc,ID2D1HwndRenderTarget **render_target) { - return This->lpVtbl->CreateHwndRenderTarget(This,desc,hwnd_rt_desc,render_target); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateDxgiSurfaceRenderTarget(ID2D1Factory* This,IDXGISurface *surface,const D2D1_RENDER_TARGET_PROPERTIES *desc,ID2D1RenderTarget **render_target) { - return This->lpVtbl->CreateDxgiSurfaceRenderTarget(This,surface,desc,render_target); -} -static __WIDL_INLINE HRESULT ID2D1Factory_CreateDCRenderTarget(ID2D1Factory* This,const D2D1_RENDER_TARGET_PROPERTIES *desc,ID2D1DCRenderTarget **render_target) { - return This->lpVtbl->CreateDCRenderTarget(This,desc,render_target); -} -#endif -#endif + +typedef struct ID2D1GdiInteropRenderTargetVtbl { + IUnknownVtbl Base; + + STDMETHOD(GetDC)(ID2D1GdiInteropRenderTarget *This, D2D1_DC_INITIALIZE_MODE mode, HDC *hdc) PURE; + STDMETHOD(ReleaseDC)(ID2D1GdiInteropRenderTarget *This, const RECT *update) PURE; +} ID2D1GdiInteropRenderTargetVtbl; + +interface ID2D1GdiInteropRenderTarget { + const ID2D1GdiInteropRenderTargetVtbl *lpVtbl; +}; + +#define ID2D1GdiInteropRenderTarget_QueryInterface(this,A,B) (this)->lpVtbl->Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1GdiInteropRenderTarget_AddRef(this) (this)->lpVtbl->Base.AddRef((IUnknown*)(this)) +#define ID2D1GdiInteropRenderTarget_Release(this) (this)->lpVtbl->Base.Release((IUnknown*)(this)) +#define ID2D1GdiInteropRenderTarget_GetDC(this,A,B) (this)->lpVtbl->GetDC(this,A,B) +#define ID2D1GdiInteropRenderTarget_ReleaseDC(this,A) (this)->lpVtbl->ReleaseDC(this,A) #endif +DEFINE_GUID(IID_ID2D1GeometryGroup, 0x2cd906a6,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); -#endif /* __ID2D1Factory_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -HRESULT __stdcall D2D1CreateFactory(D2D1_FACTORY_TYPE factory_type,REFIID iid,const D2D1_FACTORY_OPTIONS *factory_options,void **factory); +interface ID2D1GeometryGroup : public ID2D1Geometry { + STDMETHOD_(D2D1_FILL_MODE, GetFillMode)() const PURE; + STDMETHOD_(UINT32, GetSourceGeometryCount)() const PURE; + STDMETHOD_(void, GetSourceGeometries)(ID2D1Geometry **geometries, UINT geometriesCount) const PURE; +}; -WINBOOL __stdcall D2D1InvertMatrix(D2D1_MATRIX_3X2_F *matrix); +#else -WINBOOL __stdcall D2D1IsMatrixInvertible(const D2D1_MATRIX_3X2_F *matrix); +typedef struct ID2D1GeometryGroupVtbl { + ID2D1GeometryVtbl Base; -void __stdcall D2D1MakeRotateMatrix(float angle,D2D1_POINT_2F center,D2D1_MATRIX_3X2_F *matrix); + STDMETHOD_(D2D1_FILL_MODE, GetFillMode)(ID2D1GeometryGroup *This) PURE; + STDMETHOD_(UINT32, GetSourceGeometryCount)(ID2D1GeometryGroup *This) PURE; + STDMETHOD_(void, GetSourceGeometries)(ID2D1GeometryGroup *This, ID2D1Geometry **geometries, UINT geometriesCount) PURE; +} ID2D1GeometryGroupVtbl; -void __stdcall D2D1MakeSkewMatrix(float angle_x,float angle_y,D2D1_POINT_2F center,D2D1_MATRIX_3X2_F *matrix); +interface ID2D1GeometryGroup { + const struct ID2D1GeometryGroupVtbl *lpVtbl; +}; -/* Begin additional prototypes for all interfaces */ +#define ID2D1GeometryGroup_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1GeometryGroup_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1GeometryGroup_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1GeometryGroup_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1GeometryGroup_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->Base.CombineWithGeometry((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1GeometryGroup_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->Base.CompareWithGeometry((ID2D1Geometry*)(this),A,B,C) +#define ID2D1GeometryGroup_ComputeArea(this,A,B) (this)->lpVtbl->Base.ComputeArea((ID2D1Geometry*)(this),A,B) +#define ID2D1GeometryGroup_ComputeLength(this,A,B) (this)->lpVtbl->Base.ComputeLength((ID2D1Geometry*)(this),A,B) +#define ID2D1GeometryGroup_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->Base.ComputePointAtLength((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1GeometryGroup_FillContainsPoint(this,A,B,C) (this)->lpVtbl->Base.FillContainsPoint((ID2D1Geometry*)(this),A,B,C) +#define ID2D1GeometryGroup_GetBounds(this,A,B) (this)->lpVtbl->Base.GetBounds((ID2D1Geometry*)(this),A,B) +#define ID2D1GeometryGroup_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->Base.GetWidenedBounds((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1GeometryGroup_Outline(this,A,B) (this)->lpVtbl->Base.Outline((ID2D1Geometry*)(this),A,B) +#define ID2D1GeometryGroup_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->Base.StrokeContainsPoint((ID2D1Geometry*)(this),A,B,C,D,E) +#define ID2D1GeometryGroup_Simplify(this,A,B,C) (this)->lpVtbl->Base.Simplify((ID2D1Geometry*)(this),A,B,C) +#define ID2D1GeometryGroup_Tessellate(this,A,B) (this)->lpVtbl->Base.Tessellate((ID2D1Geometry*)(this),A,B) +#define ID2D1GeometryGroup_Widen(this,A,B,C,D) (this)->lpVtbl->Base.Widen((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1GeometryGroup_GetFillMode(this) (this)->lpVtbl->GetFillMode(this) +#define ID2D1GeometryGroup_GetSourceGeometries(this,A,B) (this)->lpVtbl->GetSourceGeometries(this,A,B) +#define ID2D1GeometryGroup_GetSourceGeometryCount(this) (this)->lpVtbl->GetSourceGeometryCount(this) +#endif -/* End additional prototypes */ +DEFINE_GUID(IID_ID2D1GeometrySink, 0x2cd9069f,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1GeometrySink : public ID2D1SimplifiedGeometrySink { + STDMETHOD_(void, AddLine)(D2D1_POINT_2F point) PURE; + STDMETHOD_(void, AddBezier)(const D2D1_BEZIER_SEGMENT *bezier) PURE; + STDMETHOD_(void, AddQuadraticBezier)(const D2D1_QUADRATIC_BEZIER_SEGMENT *bezier) PURE; + STDMETHOD_(void, AddQuadraticBeziers)(const D2D1_QUADRATIC_BEZIER_SEGMENT *beziers, UINT beziersCount) PURE; + STDMETHOD_(void, AddArc)(const D2D1_ARC_SEGMENT *arc) PURE; + + void AddBezier(const D2D1_BEZIER_SEGMENT &bezier) { + AddBezier(&bezier); + } + + void AddQuadraticBezier(const D2D1_QUADRATIC_BEZIER_SEGMENT &bezier) { + AddQuadraticBezier(&bezier); + } + + void AddArc(const D2D1_ARC_SEGMENT &arc) { + AddArc(&arc); + } +}; + +#else + +typedef struct ID2D1GeometrySinkVtbl { + ID2D1SimplifiedGeometrySinkVtbl Base; + + STDMETHOD_(void, AddLine)(ID2D1GeometrySink *This, D2D1_POINT_2F point) PURE; + STDMETHOD_(void, AddBezier)(ID2D1GeometrySink *This, const D2D1_BEZIER_SEGMENT *bezier) PURE; + STDMETHOD_(void, AddQuadraticBezier)(ID2D1GeometrySink *This, const D2D1_QUADRATIC_BEZIER_SEGMENT *bezier) PURE; + STDMETHOD_(void, AddQuadraticBeziers)(ID2D1GeometrySink *This, const D2D1_QUADRATIC_BEZIER_SEGMENT *beziers, UINT beziersCount) PURE; + STDMETHOD_(void, AddArc)(ID2D1GeometrySink *This, const D2D1_ARC_SEGMENT *arc) PURE; +} ID2D1GeometrySinkVtbl; + +interface ID2D1GeometrySink { + const ID2D1GeometrySinkVtbl *lpVtbl; +}; + +#define ID2D1GeometrySink_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1GeometrySink_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1GeometrySink_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1GeometrySink_SetFillMode(this,A) (this)->lpVtbl->Base.SetFillMode((ID2D1SimplifiedGeometrySink*)(this),A) +#define ID2D1GeometrySink_SetSegmentFlags(this,A) (this)->lpVtbl->Base.SetSegmentFlags((ID2D1SimplifiedGeometrySink*)(this),A) +#define ID2D1GeometrySink_BeginFigure(this,A,B) (this)->lpVtbl->Base.BeginFigure((ID2D1SimplifiedGeometrySink*)(this),A,B) +#define ID2D1GeometrySink_AddLines(this,A,B) (this)->lpVtbl->Base.AddLines((ID2D1SimplifiedGeometrySink*)(this),A,B) +#define ID2D1GeometrySink_AddBeziers(this,A,B) (this)->lpVtbl->Base.AddBeziers((ID2D1SimplifiedGeometrySink*)(this),A,B) +#define ID2D1GeometrySink_EndFigure(this,A) (this)->lpVtbl->Base.EndFigure((ID2D1SimplifiedGeometrySink*)(this),A) +#define ID2D1GeometrySink_Close(this) (this)->lpVtbl->Base.Close((ID2D1SimplifiedGeometrySink*)(this)) +#define ID2D1GeometrySink_AddArc(this,A) (this)->lpVtbl->AddArc(this,A) +#define ID2D1GeometrySink_AddBezier(this,A) (this)->lpVtbl->AddBezier(this,A) +#define ID2D1GeometrySink_AddLine(this,A) (this)->lpVtbl->AddLine(this,A) +#define ID2D1GeometrySink_AddQuadraticBezier(this,A) (this)->lpVtbl->AddQuadraticBezier(this,A) +#define ID2D1GeometrySink_AddQuadraticBeziers(this,A,B) (this)->lpVtbl->AddQuadraticBeziers(this,A,B) + +#endif + +DEFINE_GUID(IID_ID2D1GradientStopCollection, 0x2cd906a7,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1GradientStopCollection : public ID2D1Resource { + STDMETHOD_(UINT32, GetGradientStopCount)(void) const PURE; + STDMETHOD_(void, GetGradientStops)(D2D1_GRADIENT_STOP *gradientStops, UINT gradientStopsCount) const PURE; + STDMETHOD_(D2D1_GAMMA, GetColorInterpolationGamma)(void) const PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendMode)(void) const PURE; +}; + +#else + +typedef struct ID2D1GradientStopCollectionVtbl { + ID2D1ResourceVtbl Base; + + STDMETHOD_(UINT32, GetGradientStopCount)(ID2D1GradientStopCollection *This) PURE; + STDMETHOD_(void, GetGradientStops)(ID2D1GradientStopCollection *This, D2D1_GRADIENT_STOP *gradientStops, UINT gradientStopsCount) PURE; + STDMETHOD_(D2D1_GAMMA, GetColorInterpolationGamma)(ID2D1GradientStopCollection *This) PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendMode)(ID2D1GradientStopCollection *This) PURE; +} ID2D1GradientStopCollectionVtbl; + +interface ID2D1GradientStopCollection { + const ID2D1GradientStopCollectionVtbl *lpVtbl; +}; + +#define ID2D1GradientStopCollection_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1GradientStopCollection_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1GradientStopCollection_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1GradientStopCollection_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1GradientStopCollection_GetColorInterpolationGamma(this) (this)->lpVtbl->GetColorInterpolationGamma(this) +#define ID2D1GradientStopCollection_GetExtendMode(this) (this)->lpVtbl->GetExtendMode(this) +#define ID2D1GradientStopCollection_GetGradientStopCount(this) (this)->lpVtbl->GetGradientStopCount(this) +#define ID2D1GradientStopCollection_GetGradientStops(this,A,B) (this)->lpVtbl->GetGradientStops(this,A,B) + +#endif + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1HwndRenderTarget : public ID2D1RenderTarget { + STDMETHOD_(D2D1_WINDOW_STATE, CheckWindowState)() PURE; + STDMETHOD(Resize)(const D2D1_SIZE_U *pixelSize) PURE; + STDMETHOD_(HWND, GetHwnd)() const PURE; + + HRESULT Resize(const D2D1_SIZE_U &pixelSize) { + return Resize(&pixelSize); + } +}; + +#else + +typedef interface ID2D1HwndRenderTarget ID2D1HwndRenderTarget; + +typedef struct ID2D1HwndRenderTargetVtbl { + ID2D1RenderTargetVtbl Base; + + STDMETHOD_(D2D1_WINDOW_STATE, CheckWindowState)(ID2D1HwndRenderTarget *This) PURE; + STDMETHOD(Resize)(ID2D1HwndRenderTarget *This, const D2D1_SIZE_U *pixelSize) PURE; + STDMETHOD_(HWND, GetHwnd)(ID2D1HwndRenderTarget *This) PURE; +} ID2D1HwndRenderTargetVtbl; + +interface ID2D1HwndRenderTarget { + const struct ID2D1HwndRenderTargetVtbl *lpVtbl; +}; + +#define ID2D1HwndRenderTarget_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1HwndRenderTarget_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1HwndRenderTarget_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1HwndRenderTarget_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1HwndRenderTarget_BeginDraw(this) (this)->lpVtbl->Base.BeginDraw((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_Clear(this,A) (this)->lpVtbl->Base.Clear((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_CreateBitmap(this,A,B,C,D,E) (this)->lpVtbl->Base.CreateBitmap((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1HwndRenderTarget_CreateBitmapBrush(this,A,B) (this)->lpVtbl->Base.CreateBitmapBrush((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_CreateBitmapFromWicBitmap(this,A,B,C) (this)->lpVtbl->Base.CreateBitmapFromWicBitmap((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1HwndRenderTarget_CreateCompatibleRenderTarget(this,A,B,C,D,E) (this)->lpVtbl->Base.CreateCompatibleRenderTarget((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1HwndRenderTarget_CreateGradientStopCollection(this,A,B,C) (this)->lpVtbl->Base.CreateGradientStopCollection((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1HwndRenderTarget_CreateLayer(this,A,B) (this)->lpVtbl->Base.CreateLayer((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_CreateLinearGradientBrush(this,A,B,C,D) (this)->lpVtbl->Base.CreateLinearGradientBrush((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_CreateMesh(this,A) (this)->lpVtbl->Base.CreateMesh((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_CreateRadialGradientBrush(this,A,B,C,D) (this)->lpVtbl->Base.CreateRadialGradientBrush((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_CreateSharedBitmap(this,A,B,C,D) (this)->lpVtbl->Base.CreateSharedBitmap((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_CreateSolidColorBrush(this,A,B,C) (this)->lpVtbl->Base.CreateSolidColorBrush((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1HwndRenderTarget_DrawBitmap(this,A,B,C,D,E) (this)->lpVtbl->Base.DrawBitmap((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1HwndRenderTarget_DrawEllipse(this,A,B,C,D) (this)->lpVtbl->Base.DrawEllipse((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_DrawGeometry(this,A,B,C,D) (this)->lpVtbl->Base.DrawGeometry((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_DrawGlyphRun(this,A,B,C,D) (this)->lpVtbl->Base.DrawGlyphRun((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_DrawLine(this,A,B,C,D,E) (this)->lpVtbl->Base.DrawLine((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1HwndRenderTarget_DrawRectangle(this,A,B,C,D) (this)->lpVtbl->Base.DrawRectangle((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_DrawRoundedRectangle(this,A,B,C,D) (this)->lpVtbl->Base.DrawRoundedRectangle((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_DrawText(this,A,B,C,D,E,F,G) (this)->lpVtbl->Base.DrawText((ID2D1RenderTarget*)(this),A,B,C,D,E,F,G) +#define ID2D1HwndRenderTarget_DrawTextLayout(this,A,B,C,D) (this)->lpVtbl->Base.DrawTextLayout((ID2D1RenderTarget*)(this),A,B,C,D) +#define ID2D1HwndRenderTarget_EndDraw(this,A,B) (this)->lpVtbl->Base.EndDraw((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_FillEllipse(this,A,B) (this)->lpVtbl->Base.FillEllipse((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_FillGeometry(this,A,B,C) (this)->lpVtbl->Base.FillGeometry((ID2D1RenderTarget*)(this),A,B,C) +#define ID2D1HwndRenderTarget_FillMesh(this,A,B) (this)->lpVtbl->Base.FillMesh((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_FillOpacityMask(this,A,B,C,D,E) (this)->lpVtbl->Base.FillOpacityMask((ID2D1RenderTarget*)(this),A,B,C,D,E) +#define ID2D1HwndRenderTarget_FillRectangle(this,A,B) (this)->lpVtbl->Base.FillRectangle((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_FillRoundedRectangle(this,A,B) (this)->lpVtbl->Base.FillRoundedRectangle((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_Flush(this,A,B) (this)->lpVtbl->Base.Flush((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_GetAntialiasMode(this) (this)->lpVtbl->Base.GetAntialiasMode((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_GetDpi(this,A,B) (this)->lpVtbl->Base.GetDpi((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_GetMaximumBitmapSize(this) (this)->lpVtbl->Base.GetMaximumBitmapSize((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_GetPixelFormat(this) (this)->lpVtbl->Base.GetPixelFormat((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_GetPixelSize(this) (this)->lpVtbl->Base.GetPixelSize((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_GetSize(this) (this)->lpVtbl->Base.GetSize((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_GetTags(this,A,B) (this)->lpVtbl->Base.GetTags((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_GetTextAntialiasMode(this) (this)->lpVtbl->Base.GetTextAntialiasMode((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_GetTextRenderingParams(this,A) (this)->lpVtbl->Base.GetTextRenderingParams((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_IsSupported(this,A) (this)->lpVtbl->Base.IsSupported((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_PopAxisAlignedClip(this) (this)->lpVtbl->Base.PopAxisAlignedClip((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_PopLayer(this) (this)->lpVtbl->Base.PopLayer((ID2D1RenderTarget*)(this)) +#define ID2D1HwndRenderTarget_PushAxisAlignedClip(this,A,B) (this)->lpVtbl->Base.PushAxisAlignedClip((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_PushLayer(this,A,B) (this)->lpVtbl->Base.PushLayer((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_RestoreDrawingState(this,A) (this)->lpVtbl->Base.RestoreDrawingState((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_SaveDrawingState(this,A) (this)->lpVtbl->Base.SaveDrawingState((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_SetAntialiasMode(this,A) (this)->lpVtbl->Base.SetAntialiasMode((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_SetDpi(this,A,B) (this)->lpVtbl->Base.SetDpi((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_SetTags(this,A,B) (this)->lpVtbl->Base.SetTags((ID2D1RenderTarget*)(this),A,B) +#define ID2D1HwndRenderTarget_SetTextAntialiasMode(this,A) (this)->lpVtbl->Base.SetTextAntialiasMode((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_SetTextRenderingParams(this,A) (this)->lpVtbl->Base.SetTextRenderingParams((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1RenderTarget*)(this),A) +#define ID2D1HwndRenderTarget_CheckWindowState(this) (this)->lpVtbl->CheckWindowState(this) +#define ID2D1HwndRenderTarget_GetHwnd(this) (this)->lpVtbl->GetHwnd(this) +#define ID2D1HwndRenderTarget_Resize(this,A) (this)->lpVtbl->Resize(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1Layer, 0x2cd9069b,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Layer : public ID2D1Resource { +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_SIZE_F, GetSize)(void) const PURE; +#else + virtual D2D1_SIZE_F* STDMETHODCALLTYPE GetSize(D2D1_SIZE_F*) const = 0; + D2D1_SIZE_F STDMETHODCALLTYPE GetSize() const { + D2D1_SIZE_F __ret; + GetSize(&__ret); + return __ret; + } +#endif +}; + +#else + +typedef struct ID2D1LayerVtbl { + ID2D1ResourceVtbl Base; + + STDMETHOD_(D2D1_SIZE_F, GetSize)(ID2D1Layer *This) PURE; +} ID2D1LayerVtbl; + +interface ID2D1Layer { + const ID2D1LayerVtbl *lpVtbl; +}; + +#define ID2D1Layer_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1Layer_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1Layer_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1Layer_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1Layer_GetSize(this) (this)->lpVtbl->GetSize(this) + +#endif + +DEFINE_GUID(IID_ID2D1LinearGradientBrush, 0x2cd906ab,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1LinearGradientBrush : public ID2D1Brush { + STDMETHOD_(void, SetStartPoint)(D2D1_POINT_2F startPoint) PURE; + STDMETHOD_(void, SetEndPoint)(D2D1_POINT_2F endPoint) PURE; + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_POINT_2F, GetStartPoint)(void) const PURE; +#else + virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetStartPoint(D2D1_POINT_2F*) const = 0; + D2D1_POINT_2F STDMETHODCALLTYPE GetStartPoint() const { + D2D1_POINT_2F __ret; + GetStartPoint(&__ret); + return __ret; + } +#endif + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_POINT_2F, GetEndPoint)(void) const PURE; +#else + virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetEndPoint(D2D1_POINT_2F*) const = 0; + D2D1_POINT_2F STDMETHODCALLTYPE GetEndPoint() const { + D2D1_POINT_2F __ret; + GetEndPoint(&__ret); + return __ret; + } +#endif + + STDMETHOD_(void, GetGradientStopCollection)(ID2D1GradientStopCollection **gradientStopCollection) const PURE; +}; + +#else + +typedef struct ID2D1LinearGradientBrushVtbl { + ID2D1BrushVtbl Base; + + STDMETHOD_(void, SetStartPoint)(ID2D1LinearGradientBrush *This, D2D1_POINT_2F startPoint) PURE; + STDMETHOD_(void, SetEndPoint)(ID2D1LinearGradientBrush *This, D2D1_POINT_2F endPoint) PURE; + STDMETHOD_(D2D1_POINT_2F, GetStartPoint)(ID2D1LinearGradientBrush *This) PURE; + STDMETHOD_(D2D1_POINT_2F, GetEndPoint)(ID2D1LinearGradientBrush *This) PURE; + STDMETHOD_(void, GetGradientStopCollection)(ID2D1LinearGradientBrush *This, ID2D1GradientStopCollection **gradientStopCollection) PURE; +} ID2D1LinearGradientBrushVtbl; + +interface ID2D1LinearGradientBrush { + const ID2D1LinearGradientBrushVtbl *lpVtbl; +}; + +#define ID2D1LinearGradientBrush_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1LinearGradientBrush_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1LinearGradientBrush_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1LinearGradientBrush_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1LinearGradientBrush_SetOpacity(this,A) (this)->lpVtbl->Base.SetOpacity((ID2D1Brush*)(this),A) +#define ID2D1LinearGradientBrush_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1Brush*)(this),A) +#define ID2D1LinearGradientBrush_GetOpacity(this) (this)->lpVtbl->Base.GetOpacity((ID2D1Brush*)(this)) +#define ID2D1LinearGradientBrush_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1Brush*)(this),A) +#define ID2D1LinearGradientBrush_GetEndPoint(this) (this)->lpVtbl->GetEndPoint(this) +#define ID2D1LinearGradientBrush_GetGradientStopCollection(this,A) (this)->lpVtbl->GetGradientStopCollection(this,A) +#define ID2D1LinearGradientBrush_GetStartPoint(this) (this)->lpVtbl->GetStartPoint(this) +#define ID2D1LinearGradientBrush_SetEndPoint(this,A) (this)->lpVtbl->SetEndPoint(this,A) +#define ID2D1LinearGradientBrush_SetStartPoint(this,A) (this)->lpVtbl->SetStartPoint(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1Mesh,0x2cd906c2,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Mesh : public ID2D1Resource { + STDMETHOD(Open)(ID2D1TessellationSink **tessellationSink) PURE; +}; + +#else + +typedef struct ID2D1MeshVtbl{ + ID2D1ResourceVtbl Base; + + STDMETHOD(Open)(ID2D1Mesh *This, ID2D1TessellationSink **tessellationSink) PURE; +} ID2D1MeshVtbl; + +interface ID2D1Mesh { + const struct ID2D1MeshVtbl *lpVtbl; +}; + +#define ID2D1Mesh_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1Mesh_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1Mesh_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1Mesh_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1Mesh_Open(this,A) (this)->lpVtbl->Open(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1PathGeometry, 0x2cd906a5,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1PathGeometry : public ID2D1Geometry { + STDMETHOD(Open)(ID2D1GeometrySink **geometrySink) PURE; + STDMETHOD(Stream)(ID2D1GeometrySink *geometrySink) const PURE; + STDMETHOD(GetSegmentCount)(UINT32 *count) const PURE; + STDMETHOD(GetFigureCount)(UINT32 *count) const PURE; +}; + +#else + +typedef struct ID2D1PathGeometryVtbl { + ID2D1GeometryVtbl Base; + + STDMETHOD(Open)(ID2D1PathGeometry *This, ID2D1GeometrySink **geometrySink) PURE; + STDMETHOD(Stream)(ID2D1PathGeometry *This, ID2D1GeometrySink *geometrySink) PURE; + STDMETHOD(GetSegmentCount)(ID2D1PathGeometry *This, UINT32 *count) PURE; + STDMETHOD(GetFigureCount)(ID2D1PathGeometry *This, UINT32 *count) PURE; +} ID2D1PathGeometryVtbl; + +interface ID2D1PathGeometry { + const ID2D1PathGeometryVtbl *lpVtbl; +}; + +#define ID2D1PathGeometry_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1PathGeometry_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1PathGeometry_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1PathGeometry_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1PathGeometry_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->Base.CombineWithGeometry((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1PathGeometry_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->Base.CompareWithGeometry((ID2D1Geometry*)(this),A,B,C) +#define ID2D1PathGeometry_ComputeArea(this,A,B) (this)->lpVtbl->Base.ComputeArea((ID2D1Geometry*)(this),A,B) +#define ID2D1PathGeometry_ComputeLength(this,A,B) (this)->lpVtbl->Base.ComputeLength((ID2D1Geometry*)(this),A,B) +#define ID2D1PathGeometry_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->Base.ComputePointAtLength((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1PathGeometry_FillContainsPoint(this,A,B,C) (this)->lpVtbl->Base.FillContainsPoint((ID2D1Geometry*)(this),A,B,C) +#define ID2D1PathGeometry_GetBounds(this,A,B) (this)->lpVtbl->Base.GetBounds((ID2D1Geometry*)(this),A,B) +#define ID2D1PathGeometry_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->Base.GetWidenedBounds((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1PathGeometry_Outline(this,A,B) (this)->lpVtbl->Base.Outline((ID2D1Geometry*)(this),A,B) +#define ID2D1PathGeometry_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->Base.StrokeContainsPoint((ID2D1Geometry*)(this),A,B,C,D,E) +#define ID2D1PathGeometry_Simplify(this,A,B,C) (this)->lpVtbl->Base.Simplify((ID2D1Geometry*)(this),A,B,C) +#define ID2D1PathGeometry_Tessellate(this,A,B) (this)->lpVtbl->Base.Tessellate((ID2D1Geometry*)(this),A,B) +#define ID2D1PathGeometry_Widen(this,A,B,C,D) (this)->lpVtbl->Base.Widen((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1PathGeometry_Open(this,A) (this)->lpVtbl->Open(this,A) +#define ID2D1PathGeometry_Stream(this,A) (this)->lpVtbl->Stream(this,A) +#define ID2D1PathGeometry_GetSegmentCount(this,A) (this)->lpVtbl->GetSegmentCount(this,A) +#define ID2D1PathGeometry_GetFigureCount(this,A) (this)->lpVtbl->GetFigureCount(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1RadialGradientBrush, 0x2cd906ac,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1RadialGradientBrush : public ID2D1Brush { + STDMETHOD_(void, SetCenter)(D2D1_POINT_2F center) PURE; + STDMETHOD_(void, SetGradientOriginOffset)(D2D1_POINT_2F gradientOriginOffset) PURE; + STDMETHOD_(void, SetRadiusX)(FLOAT radiusX) PURE; + STDMETHOD_(void, SetRadiusY)(FLOAT radiusY) PURE; + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_POINT_2F, GetCenter)(void) const PURE; +#else + virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetCenter(D2D1_POINT_2F *__ret) const = 0; + D2D1_POINT_2F STDMETHODCALLTYPE GetCenter() const + { + D2D1_POINT_2F __ret; + GetCenter(&__ret); + return __ret; + } +#endif + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_POINT_2F, GetGradientOriginOffset)(void) const PURE; +#else + virtual D2D1_POINT_2F* STDMETHODCALLTYPE GetGradientOriginOffset(D2D1_POINT_2F *__ret) const = 0; + D2D1_POINT_2F STDMETHODCALLTYPE GetGradientOriginOffset() const + { + D2D1_POINT_2F __ret; + GetGradientOriginOffset(&__ret); + return __ret; + } +#endif + + STDMETHOD_(FLOAT, GetRadiusX)(void) const PURE; + STDMETHOD_(FLOAT, GetRadiusY)(void) const PURE; + STDMETHOD_(void, GetGradientStopCollection)(ID2D1GradientStopCollection **gradientStopCollection) const PURE; +}; + +#else + +typedef struct ID2D1RadialGradientBrushVtbl { + ID2D1BrushVtbl Base; + + STDMETHOD_(void, SetCenter)(ID2D1RadialGradientBrush *This, D2D1_POINT_2F center) PURE; + STDMETHOD_(void, SetGradientOriginOffset)(ID2D1RadialGradientBrush *This, D2D1_POINT_2F gradientOriginOffset) PURE; + STDMETHOD_(void, SetRadiusX)(ID2D1RadialGradientBrush *This, FLOAT radiusX) PURE; + STDMETHOD_(void, SetRadiusY)(ID2D1RadialGradientBrush *This, FLOAT radiusY) PURE; + STDMETHOD_(D2D1_POINT_2F, GetCenter)(ID2D1RadialGradientBrush *This) PURE; + STDMETHOD_(D2D1_POINT_2F, GetGradientOriginOffset)(ID2D1RadialGradientBrush *This) PURE; + STDMETHOD_(FLOAT, GetRadiusX)(ID2D1RadialGradientBrush *This) PURE; + STDMETHOD_(FLOAT, GetRadiusY)(ID2D1RadialGradientBrush *This) PURE; + STDMETHOD_(void, GetGradientStopCollection)(ID2D1RadialGradientBrush *This, ID2D1GradientStopCollection **gradientStopCollection) PURE; +} ID2D1RadialGradientBrushVtbl; + +interface ID2D1RadialGradientBrush { + const ID2D1RadialGradientBrushVtbl *lpVtbl; +}; + +#define ID2D1RadialGradientBrush_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1RadialGradientBrush_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1RadialGradientBrush_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1RadialGradientBrush_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1RadialGradientBrush_SetOpacity(this,A) (this)->lpVtbl->Base.SetOpacity((ID2D1Brush*)(this),A) +#define ID2D1RadialGradientBrush_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1Brush*)(this),A) +#define ID2D1RadialGradientBrush_GetOpacity(this) (this)->lpVtbl->Base.GetOpacity((ID2D1Brush*)(this)) +#define ID2D1RadialGradientBrush_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1Brush*)(this),A) +#define ID2D1RadialGradientBrush_GetCenter(this) (this)->lpVtbl->GetCenter(this) +#define ID2D1RadialGradientBrush_GetGradientOriginOffset(this) (this)->lpVtbl->GetGradientOriginOffset(this) +#define ID2D1RadialGradientBrush_GetGradientStopCollection(this,A) (this)->lpVtbl->GetGradientStopCollection(this,A) +#define ID2D1RadialGradientBrush_GetRadiusX(this) (this)->lpVtbl->GetRadiusX(this) +#define ID2D1RadialGradientBrush_GetRadiusY(this) (this)->lpVtbl->GetRadiusY(this) +#define ID2D1RadialGradientBrush_SetCenter(this,A) (this)->lpVtbl->SetCenter(this,A) +#define ID2D1RadialGradientBrush_SetGradientOriginOffset(this,A) (this)->lpVtbl->SetGradientOriginOffset(this,A) +#define ID2D1RadialGradientBrush_SetRadiusX(this,A) (this)->lpVtbl->SetRadiusX(this,A) +#define ID2D1RadialGradientBrush_SetRadiusY(this,A) (this)->lpVtbl->SetRadiusY(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1RectangleGeometry, 0x2cd906a2,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1RectangleGeometry : public ID2D1Geometry { + STDMETHOD_(void, GetRect)(D2D1_RECT_F *rect) const PURE; +}; + +#else + +typedef struct ID2D1RectangleGeometryVtbl { + ID2D1GeometryVtbl Base; + + STDMETHOD_(void, GetRect)(ID2D1RectangleGeometry *This, D2D1_RECT_F *rect) PURE; +} ID2D1RectangleGeometryVtbl; + +interface ID2D1RectangleGeometry { + const ID2D1RectangleGeometryVtbl *lpVtbl; +}; + +#define ID2D1RectangleGeometry_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1RectangleGeometry_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1RectangleGeometry_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1RectangleGeometry_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1RectangleGeometry_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->Base.CombineWithGeometry((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RectangleGeometry_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->Base.CompareWithGeometry((ID2D1Geometry*)(this),A,B,C) +#define ID2D1RectangleGeometry_ComputeArea(this,A,B) (this)->lpVtbl->Base.ComputeArea((ID2D1Geometry*)(this),A,B) +#define ID2D1RectangleGeometry_ComputeLength(this,A,B) (this)->lpVtbl->Base.ComputeLength((ID2D1Geometry*)(this),A,B) +#define ID2D1RectangleGeometry_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->Base.ComputePointAtLength((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RectangleGeometry_FillContainsPoint(this,A,B,C) (this)->lpVtbl->Base.FillContainsPoint((ID2D1Geometry*)(this),A,B,C) +#define ID2D1RectangleGeometry_GetBounds(this,A,B) (this)->lpVtbl->Base.GetBounds((ID2D1Geometry*)(this),A,B) +#define ID2D1RectangleGeometry_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->Base.GetWidenedBounds((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RectangleGeometry_Outline(this,A,B) (this)->lpVtbl->Base.Outline((ID2D1Geometry*)(this),A,B) +#define ID2D1RectangleGeometry_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->Base.StrokeContainsPoint((ID2D1Geometry*)(this),A,B,C,D,E) +#define ID2D1RectangleGeometry_Simplify(this,A,B,C) (this)->lpVtbl->Base.Simplify((ID2D1Geometry*)(this),A,B,C) +#define ID2D1RectangleGeometry_Tessellate(this,A,B) (this)->lpVtbl->Base.Tessellate((ID2D1Geometry*)(this),A,B) +#define ID2D1RectangleGeometry_Widen(this,A,B,C,D) (this)->lpVtbl->Base.Widen((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RectangleGeometry_GetRect(this,A) (this)->lpVtbl->GetRect(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1RoundedRectangleGeometry, 0x2cd906a3,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1RoundedRectangleGeometry : public ID2D1Geometry { + STDMETHOD_(void, GetRoundedRect)(D2D1_ROUNDED_RECT *roundedRect) const PURE; +}; + +#else + +typedef struct ID2D1RoundedRectangleGeometryVtbl { + ID2D1GeometryVtbl Base; + + STDMETHOD_(void, GetRoundedRect)(ID2D1RoundedRectangleGeometry *This, D2D1_ROUNDED_RECT *roundedRect) PURE; +} ID2D1RoundedRectangleGeometryVtbl; + +interface ID2D1RoundedRectangleGeometry { + const struct ID2D1RoundedRectangleGeometryVtbl *lpVtbl; +}; + +#define ID2D1RoundedRectangleGeometry_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1RoundedRectangleGeometry_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1RoundedRectangleGeometry_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1RoundedRectangleGeometry_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1RoundedRectangleGeometry_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->Base.CombineWithGeometry((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RoundedRectangleGeometry_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->Base.CompareWithGeometry((ID2D1Geometry*)(this),A,B,C) +#define ID2D1RoundedRectangleGeometry_ComputeArea(this,A,B) (this)->lpVtbl->Base.ComputeArea((ID2D1Geometry*)(this),A,B) +#define ID2D1RoundedRectangleGeometry_ComputeLength(this,A,B) (this)->lpVtbl->Base.ComputeLength((ID2D1Geometry*)(this),A,B) +#define ID2D1RoundedRectangleGeometry_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->Base.ComputePointAtLength((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RoundedRectangleGeometry_FillContainsPoint(this,A,B,C) (this)->lpVtbl->Base.FillContainsPoint((ID2D1Geometry*)(this),A,B,C) +#define ID2D1RoundedRectangleGeometry_GetBounds(this,A,B) (this)->lpVtbl->Base.GetBounds((ID2D1Geometry*)(this),A,B) +#define ID2D1RoundedRectangleGeometry_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->Base.GetWidenedBounds((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RoundedRectangleGeometry_Outline(this,A,B) (this)->lpVtbl->Base.Outline((ID2D1Geometry*)(this),A,B) +#define ID2D1RoundedRectangleGeometry_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->Base.StrokeContainsPoint((ID2D1Geometry*)(this),A,B,C,D,E) +#define ID2D1RoundedRectangleGeometry_Simplify(this,A,B,C) (this)->lpVtbl->Base.Simplify((ID2D1Geometry*)(this),A,B,C) +#define ID2D1RoundedRectangleGeometry_Tessellate(this,A,B) (this)->lpVtbl->Base.Tessellate((ID2D1Geometry*)(this),A,B) +#define ID2D1RoundedRectangleGeometry_Widen(this,A,B,C,D) (this)->lpVtbl->Base.Widen((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1RoundedRectangleGeometry_GetRoundedRect(this,A) (this)->lpVtbl->GetRoundedRect(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1SolidColorBrush, 0x2cd906a9,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1SolidColorBrush : public ID2D1Brush { + STDMETHOD_(void, SetColor)(const D2D1_COLOR_F *color) PURE; + +#ifndef WIDL_EXPLICIT_AGGREGATE_RETURNS + STDMETHOD_(D2D1_COLOR_F, GetColor)(void) const PURE; +#else + virtual D2D1_COLOR_F* STDMETHODCALLTYPE GetColor(D2D1_COLOR_F*) const = 0; + D2D1_COLOR_F STDMETHODCALLTYPE GetColor() const { + D2D1_COLOR_F __ret; + GetColor(&__ret); + return __ret; + } +#endif + + void SetColor(const D2D1_COLOR_F &color) { + SetColor(&color); + } +}; + +#else + +typedef struct ID2D1SolidColorBrushVtbl { + ID2D1BrushVtbl Base; + + STDMETHOD_(void, SetColor)(ID2D1SolidColorBrush *This, const D2D1_COLOR_F *color) PURE; + STDMETHOD_(D2D1_COLOR_F, GetColor)(ID2D1SolidColorBrush *This) PURE; +} ID2D1SolidColorBrushVtbl; + +interface ID2D1SolidColorBrush { + const ID2D1SolidColorBrushVtbl *lpVtbl; +}; + +#define ID2D1SolidColorBrush_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1SolidColorBrush_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1SolidColorBrush_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1SolidColorBrush_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1SolidColorBrush_SetOpacity(this,A) (this)->lpVtbl->Base.SetOpacity((ID2D1Brush*)(this),A) +#define ID2D1SolidColorBrush_SetTransform(this,A) (this)->lpVtbl->Base.SetTransform((ID2D1Brush*)(this),A) +#define ID2D1SolidColorBrush_GetOpacity(this) (this)->lpVtbl->Base.GetOpacity((ID2D1Brush*)(this)) +#define ID2D1SolidColorBrush_GetTransform(this,A) (this)->lpVtbl->Base.GetTransform((ID2D1Brush*)(this),A) +#define ID2D1SolidColorBrush_GetColor(this) (this)->lpVtbl->GetColor(this) +#define ID2D1SolidColorBrush_SetColor(this,A) (this)->lpVtbl->SetColor(this,A) + +#endif + +DEFINE_GUID(IID_ID2D1StrokeStyle, 0x2cd9069d,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1StrokeStyle : public ID2D1Resource { + STDMETHOD_(D2D1_CAP_STYLE, GetStartCap)(void) const PURE; + STDMETHOD_(D2D1_CAP_STYLE, GetEndCap)(void) const PURE; + STDMETHOD_(D2D1_CAP_STYLE, GetDashCap)(void) const PURE; + STDMETHOD_(FLOAT, GetMiterLimit)(void) const PURE; + STDMETHOD_(D2D1_LINE_JOIN, GetLineJoin)(void) const PURE; + STDMETHOD_(FLOAT, GetDashOffset)(void) const PURE; + STDMETHOD_(D2D1_DASH_STYLE, GetDashStyle)(void) const PURE; + STDMETHOD_(UINT32, GetDashesCount)(void) const PURE; + STDMETHOD_(void, GetDashes)(FLOAT *dashes, UINT dashesCount) const PURE; +}; + +#else + +typedef struct ID2D1StrokeStyleVtbl { + ID2D1ResourceVtbl Base; + + STDMETHOD_(D2D1_CAP_STYLE, GetStartCap)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(D2D1_CAP_STYLE, GetEndCap)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(D2D1_CAP_STYLE, GetDashCap)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(FLOAT, GetMiterLimit)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(D2D1_LINE_JOIN, GetLineJoin)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(FLOAT, GetDashOffset)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(D2D1_DASH_STYLE, GetDashStyle)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(UINT32, GetDashesCount)(ID2D1StrokeStyle *This) PURE; + STDMETHOD_(void, GetDashes)(ID2D1StrokeStyle *This, FLOAT *dashes, UINT dashesCount) PURE; +} ID2D1StrokeStyleVtbl; + +interface ID2D1StrokeStyle { + const ID2D1StrokeStyleVtbl *lpVtbl; +}; + +#define ID2D1StrokeStyle_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1StrokeStyle_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1StrokeStyle_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown*)(this)) +#define ID2D1StrokeStyle_GetFactory(this,A) (this)->lpVtbl->Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1StrokeStyle_GetDashCap(this) (this)->lpVtbl->GetDashCap(this) +#define ID2D1StrokeStyle_GetDashes(this,A,B) (this)->lpVtbl->GetDashes(this,A,B) +#define ID2D1StrokeStyle_GetDashesCount(this) (this)->lpVtbl->GetDashesCount(this) +#define ID2D1StrokeStyle_GetDashOffset(this) (this)->lpVtbl->GetDashOffset(this) +#define ID2D1StrokeStyle_GetDashStyle(this) (this)->lpVtbl->GetDashStyle(this) +#define ID2D1StrokeStyle_GetEndCap(this) (this)->lpVtbl->GetEndCap(this) +#define ID2D1StrokeStyle_GetLineJoin(this) (this)->lpVtbl->GetLineJoin(this) +#define ID2D1StrokeStyle_GetMiterLimit(this) (this)->lpVtbl->GetMiterLimit(this) +#define ID2D1StrokeStyle_GetStartCap(this) (this)->lpVtbl->GetStartCap(this) + +#endif + +DEFINE_GUID(IID_ID2D1TessellationSink, 0x2cd906c1,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1TessellationSink : public IUnknown { + STDMETHOD_(void, AddTriangles)(const D2D1_TRIANGLE *triangles, UINT trianglesCount) PURE; + STDMETHOD(Close)() PURE; +}; + +#else + +typedef struct ID2D1TessellationSinkVtbl { + IUnknownVtbl Base; + + STDMETHOD_(void, AddTriangles)(ID2D1TessellationSink *This, const D2D1_TRIANGLE *triangles, UINT trianglesCount) PURE; + STDMETHOD(Close)(ID2D1TessellationSink *This) PURE; +} ID2D1TessellationSinkVtbl; + +interface ID2D1TessellationSink { + const struct ID2D1TessellationSinkVtbl *lpVtbl; +}; + +#define ID2D1TessellationSink_QueryInterface(this,A,B) (this)->lpVtbl->Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1TessellationSink_AddRef(this) (this)->lpVtbl->Base.AddRef((IUnknown*)(this)) +#define ID2D1TessellationSink_Release(this) (this)->lpVtbl->Base.Release((IUnknown*)(this)) +#define ID2D1TessellationSink_AddTriangles(this,A,B) (this)->lpVtbl->AddTriangles(this,A,B) +#define ID2D1TessellationSink_Close(this) (this)->lpVtbl->Close(this) + +#endif + +DEFINE_GUID(IID_ID2D1TransformedGeometry, 0x2cd906bb,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1TransformedGeometry : public ID2D1Geometry { + STDMETHOD_(void, GetSourceGeometry)(ID2D1Geometry **sourceGeometry) const PURE; + STDMETHOD_(void, GetTransform)(D2D1_MATRIX_3X2_F *transform) const PURE; +}; + +#else + +typedef struct ID2D1TransformedGeometryVtbl { + ID2D1GeometryVtbl Base; + + STDMETHOD_(void, GetSourceGeometry)(ID2D1TransformedGeometry *This, ID2D1Geometry **sourceGeometry) PURE; + STDMETHOD_(void, GetTransform)(ID2D1TransformedGeometry *This, D2D1_MATRIX_3X2_F *transform) PURE; +} ID2D1TransformedGeometryVtbl; + +interface ID2D1TransformedGeometry { + const ID2D1TransformedGeometryVtbl *lpVtbl; +}; + +#define ID2D1TransformedGeometry_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.Base.QueryInterface((IUnknown*)(this),A,B) +#define ID2D1TransformedGeometry_AddRef(this) (this)->lpVtbl->Base.Base.Base.AddRef((IUnknown*)(this)) +#define ID2D1TransformedGeometry_Release(this) (this)->lpVtbl->Base.Base.Base.Release((IUnknown*)(this)) +#define ID2D1TransformedGeometry_GetFactory(this,A) (this)->lpVtbl->Base.Base.GetFactory((ID2D1Resource*)(this),A) +#define ID2D1TransformedGeometry_CombineWithGeometry(this,A,B,C,D) (this)->lpVtbl->Base.CombineWithGeometry((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1TransformedGeometry_CompareWithGeometry(this,A,B,C) (this)->lpVtbl->Base.CompareWithGeometry((ID2D1Geometry*)(this),A,B,C) +#define ID2D1TransformedGeometry_ComputeArea(this,A,B) (this)->lpVtbl->Base.ComputeArea((ID2D1Geometry*)(this),A,B) +#define ID2D1TransformedGeometry_ComputeLength(this,A,B) (this)->lpVtbl->Base.ComputeLength((ID2D1Geometry*)(this),A,B) +#define ID2D1TransformedGeometry_ComputePointAtLength(this,A,B,C,D) (this)->lpVtbl->Base.ComputePointAtLength((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1TransformedGeometry_FillContainsPoint(this,A,B,C) (this)->lpVtbl->Base.FillContainsPoint((ID2D1Geometry*)(this),A,B,C) +#define ID2D1TransformedGeometry_GetBounds(this,A,B) (this)->lpVtbl->Base.GetBounds((ID2D1Geometry*)(this),A,B) +#define ID2D1TransformedGeometry_GetWidenedBounds(this,A,B,C,D) (this)->lpVtbl->Base.GetWidenedBounds((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1TransformedGeometry_Outline(this,A,B) (this)->lpVtbl->Base.Outline((ID2D1Geometry*)(this),A,B) +#define ID2D1TransformedGeometry_StrokeContainsPoint(this,A,B,C,D,E) (this)->lpVtbl->Base.StrokeContainsPoint((ID2D1Geometry*)(this),A,B,C,D,E) +#define ID2D1TransformedGeometry_Simplify(this,A,B,C) (this)->lpVtbl->Base.Simplify((ID2D1Geometry*)(this),A,B,C) +#define ID2D1TransformedGeometry_Tessellate(this,A,B) (this)->lpVtbl->Base.Tessellate((ID2D1Geometry*)(this),A,B) +#define ID2D1TransformedGeometry_Widen(this,A,B,C,D) (this)->lpVtbl->Base.Widen((ID2D1Geometry*)(this),A,B,C,D) +#define ID2D1TransformedGeometry_GetSourceGeometry(this,A) (this)->lpVtbl->GetSourceGeometry(this,A) +#define ID2D1TransformedGeometry_GetTransform(this,A) (this)->lpVtbl->GetTransform(this,A) + +#endif + +__CRT_UUID_DECL(ID2D1Resource, 0x2cd90691,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1Brush, 0x2cd906a8,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1Bitmap, 0xa2296057,0xea42,0x4099,0x98,0x3b,0x53,0x9f,0xb6,0x50,0x54,0x26) +__CRT_UUID_DECL(ID2D1BitmapBrush, 0x2cd906aa,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1RenderTarget, 0x2cd90694,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1Geometry, 0x2cd906a1,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1BitmapRenderTarget, 0x2cd90695,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1DCRenderTarget, 0x1c51bc64,0xde61,0x46fd,0x98,0x99,0x63,0xa5,0xd8,0xf0,0x39,0x50) +__CRT_UUID_DECL(ID2D1SimplifiedGeometrySink, 0x2cd9069e,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1Factory, 0x06152247,0x6f50,0x465a,0x92,0x45,0x11,0x8b,0xfd,0x3b,0x60,0x07) +__CRT_UUID_DECL(ID2D1GdiInteropRenderTarget, 0xe0db51c3,0x6f77,0x4bae,0xb3,0xd5,0xe4,0x75,0x09,0xb3,0x58,0x38) +__CRT_UUID_DECL(ID2D1GeometrySink, 0x2cd9069f,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1GradientStopCollection, 0x2cd906a7,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1Layer, 0x2cd9069b,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1LinearGradientBrush, 0x2cd906ab,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1PathGeometry, 0x2cd906a5,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1RadialGradientBrush, 0x2cd906ac,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1RectangleGeometry, 0x2cd906a2,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1SolidColorBrush, 0x2cd906a9,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1StrokeStyle, 0x2cd9069d,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1TransformedGeometry, 0x2cd906bb,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9) +__CRT_UUID_DECL(ID2D1Mesh,0x2cd906c2,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); +__CRT_UUID_DECL(ID2D1DrawingStateBlock, 0x28506e39,0xebf6,0x46a1,0xbb,0x47,0xfd,0x85,0x56,0x5a,0xb9,0x57); +__CRT_UUID_DECL(ID2D1EllipseGeometry, 0x2cd906a4,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); +__CRT_UUID_DECL(ID2D1GeometryGroup, 0x2cd906a6,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); +__CRT_UUID_DECL(ID2D1RoundedRectangleGeometry, 0x2cd906a3,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); +__CRT_UUID_DECL(ID2D1TessellationSink, 0x2cd906c1,0x12e2,0x11dc,0x9f,0xed,0x00,0x11,0x43,0xa0,0x55,0xf9); +__CRT_UUID_DECL(ID2D1Image, 0x65019f75,0x8da2,0x497c,0xb3,0x2c,0xdf,0xa3,0x4e,0x48,0xed,0xe6); + +#ifdef __cplusplus +extern "C" { +#endif + +HRESULT WINAPI D2D1CreateFactory( + D2D1_FACTORY_TYPE factoryType, + REFIID riid, + const D2D1_FACTORY_OPTIONS *pFactoryOptions, + void **ppIFactory +); + +WINBOOL WINAPI D2D1InvertMatrix( + D2D1_MATRIX_3X2_F *matrix +); + +WINBOOL WINAPI D2D1IsMatrixInvertible( + const D2D1_MATRIX_3X2_F *matrix +); + +void WINAPI D2D1MakeRotateMatrix( + FLOAT angle, + D2D1_POINT_2F center, + D2D1_MATRIX_3X2_F *matrix +); + +void WINAPI D2D1MakeSkewMatrix( + FLOAT angleX, + FLOAT angleY, + D2D1_POINT_2F center, + D2D1_MATRIX_3X2_F *matrix +); #ifdef __cplusplus } #endif -#endif /* __d2d1_h__ */ +#ifndef D2D1FORCEINLINE +#define D2D1FORCEINLINE FORCEINLINE +#endif + +#include + +#ifndef D2D_USE_C_DEFINITIONS + +inline HRESULT D2D1CreateFactory(D2D1_FACTORY_TYPE factoryType, REFIID riid, void **ppv) { + return D2D1CreateFactory(factoryType, riid, NULL, ppv); +} + +template +HRESULT D2D1CreateFactory(D2D1_FACTORY_TYPE factoryType, Factory **factory) { + return D2D1CreateFactory(factoryType, __uuidof(Factory), reinterpret_cast(factory)); +} + +template +HRESULT D2D1CreateFactory(D2D1_FACTORY_TYPE factoryType, const D2D1_FACTORY_OPTIONS &factoryOptions, Factory **factory) { + return D2D1CreateFactory(factoryType, __uuidof(Factory), &factoryOptions, reinterpret_cast(factory)); +} + +#endif + +#endif /* _D2D1_H */ diff --git a/mingw-w64-headers/include/d2d1.idl b/mingw-w64-headers/include/d2d1.idl deleted file mode 100644 index 08487fa6b..000000000 --- a/mingw-w64-headers/include/d2d1.idl +++ /dev/null @@ -1,1260 +0,0 @@ -/* - * Copyright 2013 Nikolay Sivov for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -import "unknwn.idl"; -import "dcommon.idl"; -import "d2dbasetypes.h"; -import "d3d10_1.idl"; -import "d2derr.h"; - -cpp_quote("#ifdef WINE_NO_UNICODE_MACROS") -cpp_quote("#undef DrawText") -cpp_quote("#endif") - -interface ID2D1Factory; -interface ID2D1RenderTarget; -interface ID2D1BitmapRenderTarget; -interface ID2D1Geometry; -interface ID2D1Brush; -interface IDWriteRenderingParams; -interface IDWriteTextFormat; -interface IDWriteTextLayout; -interface IWICBitmapSource; -interface IWICBitmap; - -cpp_quote("#ifndef __dwrite_h__") -/* already defined in dwrite.h but needed for WIDL */ -typedef struct DWRITE_GLYPH_RUN DWRITE_GLYPH_RUN; -cpp_quote("#endif /* __dwrite_h__ */") - -typedef D2D_MATRIX_3X2_F D2D1_MATRIX_3X2_F; -typedef D2D_RECT_F D2D1_RECT_F; -typedef D2D_SIZE_F D2D1_SIZE_F; -typedef UINT64 D2D1_TAG; -typedef D2D_POINT_2U D2D1_POINT_2U; -typedef D2D_RECT_U D2D1_RECT_U; -typedef D2D_COLOR_F D2D1_COLOR_F; - -cpp_quote("#define D2D1_DEFAULT_FLATTENING_TOLERANCE (0.25f)") - -enum -{ - D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR = 0, - D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR = 1, - D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC = 2, - D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR = 3, - D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC = 4, - D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC = 5, - D2D1_INTERPOLATION_MODE_DEFINITION_FANT = 6, - D2D1_INTERPOLATION_MODE_DEFINITION_MIPMAP_LINEAR = 7, -}; - -typedef enum D2D1_DEBUG_LEVEL -{ - D2D1_DEBUG_LEVEL_NONE = 0, - D2D1_DEBUG_LEVEL_ERROR = 1, - D2D1_DEBUG_LEVEL_WARNING = 2, - D2D1_DEBUG_LEVEL_INFORMATION = 3, - D2D1_DEBUG_LEVEL_FORCE_DWORD = 0xffffffff, -} D2D1_DEBUG_LEVEL; - -typedef enum D2D1_FACTORY_TYPE -{ - D2D1_FACTORY_TYPE_SINGLE_THREADED = 0, - D2D1_FACTORY_TYPE_MULTI_THREADED = 1, - D2D1_FACTORY_TYPE_FORCE_DWORD = 0xfffffff, -} D2D1_FACTORY_TYPE; - -typedef enum D2D1_FILL_MODE -{ - D2D1_FILL_MODE_ALTERNATE = 0, - D2D1_FILL_MODE_WINDING = 1, - D2D1_FILL_MODE_FORCE_DWORD = 0xffffffff -} D2D1_FILL_MODE; - -typedef enum D2D1_PATH_SEGMENT -{ - D2D1_PATH_SEGMENT_NONE = 0, - D2D1_PATH_SEGMENT_FORCE_UNSTROKED = 1, - D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN = 2, - D2D1_PATH_SEGMENT_FORCE_DWORD = 0xffffffff -} D2D1_PATH_SEGMENT; - -typedef enum D2D1_FIGURE_BEGIN -{ - D2D1_FIGURE_BEGIN_FILLED = 0, - D2D1_FIGURE_BEGIN_HOLLOW = 1, - D2D1_FIGURE_BEGIN_FORCE_DWORD = 0xffffffff -} D2D1_FIGURE_BEGIN; - -typedef enum D2D1_FIGURE_END -{ - D2D1_FIGURE_END_OPEN = 0, - D2D1_FIGURE_END_CLOSED = 1, - D2D1_FIGURE_END_FORCE_DWORD = 0xffffffff -} D2D1_FIGURE_END; - -typedef enum D2D1_CAP_STYLE -{ - D2D1_CAP_STYLE_FLAT = 0, - D2D1_CAP_STYLE_SQUARE = 1, - D2D1_CAP_STYLE_ROUND = 2, - D2D1_CAP_STYLE_TRIANGLE = 3, - D2D1_CAP_STYLE_FORCE_DWORD = 0xffffffff, -} D2D1_CAP_STYLE; - -typedef enum D2D1_LINE_JOIN -{ - D2D1_LINE_JOIN_MITER = 0, - D2D1_LINE_JOIN_BEVEL = 1, - D2D1_LINE_JOIN_ROUND = 2, - D2D1_LINE_JOIN_MITER_OR_BEVEL = 3, - D2D1_LINE_JOIN_FORCE_DWORD = 0xffffffff, -} D2D1_LINE_JOIN; - -typedef enum D2D1_DASH_STYLE -{ - D2D1_DASH_STYLE_SOLID = 0, - D2D1_DASH_STYLE_DASH = 1, - D2D1_DASH_STYLE_DOT = 2, - D2D1_DASH_STYLE_DASH_DOT = 3, - D2D1_DASH_STYLE_DASH_DOT_DOT = 4, - D2D1_DASH_STYLE_CUSTOM = 5, - D2D1_DASH_STYLE_FORCE_DWORD = 0xffffffff, -} D2D1_DASH_STYLE; - -typedef enum D2D1_GEOMETRY_RELATION -{ - D2D1_GEOMETRY_RELATION_UNKNOWN = 0, - D2D1_GEOMETRY_RELATION_DISJOINT = 1, - D2D1_GEOMETRY_RELATION_IS_CONTAINED = 2, - D2D1_GEOMETRY_RELATION_CONTAINS = 3, - D2D1_GEOMETRY_RELATION_OVERLAP = 4, - D2D1_GEOMETRY_RELATION_FORCE_DWORD = 0xffffffff, -} D2D1_GEOMETRY_RELATION; - -typedef enum D2D1_GEOMETRY_SIMPLIFICATION_OPTION -{ - D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES = 0, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES = 1, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD = 0xffffffff, -} D2D1_GEOMETRY_SIMPLIFICATION_OPTION; - -typedef enum D2D1_COMBINE_MODE -{ - D2D1_COMBINE_MODE_UNION = 0, - D2D1_COMBINE_MODE_INTERSECT = 1, - D2D1_COMBINE_MODE_XOR = 2, - D2D1_COMBINE_MODE_EXCLUDE = 3, - D2D1_COMBINE_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_COMBINE_MODE; - -typedef enum D2D1_SWEEP_DIRECTION -{ - D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE = 0, - D2D1_SWEEP_DIRECTION_CLOCKWISE = 1, - D2D1_SWEEP_DIRECTION_FORCE_DWORD = 0xffffffff, -} D2D1_SWEEP_DIRECTION; - -typedef enum D2D1_ARC_SIZE -{ - D2D1_ARC_SIZE_SMALL = 0, - D2D1_ARC_SIZE_LARGE = 1, - D2D1_ARC_SIZE_FORCE_DWORD = 0xffffffff, -} D2D1_ARC_SIZE; - -typedef enum D2D1_ANTIALIAS_MODE -{ - D2D1_ANTIALIAS_MODE_PER_PRIMITIVE = 0, - D2D1_ANTIALIAS_MODE_ALIASED = 1, - D2D1_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_ANTIALIAS_MODE; - -typedef enum D2D1_TEXT_ANTIALIAS_MODE -{ - D2D1_TEXT_ANTIALIAS_MODE_DEFAULT = 0, - D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE = 1, - D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE = 2, - D2D1_TEXT_ANTIALIAS_MODE_ALIASED = 3, - D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_TEXT_ANTIALIAS_MODE; - -typedef enum D2D1_EXTEND_MODE -{ - D2D1_EXTEND_MODE_CLAMP = 0, - D2D1_EXTEND_MODE_WRAP = 1, - D2D1_EXTEND_MODE_MIRROR = 2, - D2D1_EXTEND_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_EXTEND_MODE; - -typedef enum D2D1_BITMAP_INTERPOLATION_MODE -{ - D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, - D2D1_BITMAP_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, - D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_BITMAP_INTERPOLATION_MODE; - -typedef enum D2D1_GAMMA -{ - D2D1_GAMMA_2_2 = 0, - D2D1_GAMMA_1_0 = 1, - D2D1_GAMMA_FORCE_DWORD = 0xffffffff, -} D2D1_GAMMA; - -typedef enum D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS -{ - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE = 0x00000000, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE = 0x00000001, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS; - -typedef enum D2D1_OPACITY_MASK_CONTENT -{ - D2D1_OPACITY_MASK_CONTENT_GRAPHICS = 0, - D2D1_OPACITY_MASK_CONTENT_TEXT_NATURAL = 1, - D2D1_OPACITY_MASK_CONTENT_TEXT_GDI_COMPATIBLE = 2, - D2D1_OPACITY_MASK_CONTENT_FORCE_DWORD = 0xffffffff, -} D2D1_OPACITY_MASK_CONTENT; - -typedef enum D2D1_DRAW_TEXT_OPTIONS -{ - D2D1_DRAW_TEXT_OPTIONS_NO_SNAP = 0x00000001, - D2D1_DRAW_TEXT_OPTIONS_CLIP = 0x00000002, - D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT = 0x00000004, - D2D1_DRAW_TEXT_OPTIONS_DISABLE_COLOR_BITMAP_SNAPPING = 0x00000008, - D2D1_DRAW_TEXT_OPTIONS_NONE = 0x00000000, - D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_DRAW_TEXT_OPTIONS; - -typedef enum D2D1_LAYER_OPTIONS -{ - D2D1_LAYER_OPTIONS_NONE = 0x00000000, - D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE = 0x00000001, - D2D1_LAYER_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_LAYER_OPTIONS; - -typedef enum D2D1_RENDER_TARGET_TYPE -{ - D2D1_RENDER_TARGET_TYPE_DEFAULT = 0, - D2D1_RENDER_TARGET_TYPE_SOFTWARE = 1, - D2D1_RENDER_TARGET_TYPE_HARDWARE = 2, - D2D1_RENDER_TARGET_TYPE_FORCE_DWORD = 0xffffffff, -} D2D1_RENDER_TARGET_TYPE; - -typedef enum D2D1_RENDER_TARGET_USAGE -{ - D2D1_RENDER_TARGET_USAGE_NONE = 0x00000000, - D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING = 0x00000001, - D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE = 0x00000002, - D2D1_RENDER_TARGET_USAGE_FORCE_DWORD = 0xffffffff, -} D2D1_RENDER_TARGET_USAGE; - -typedef enum D2D1_FEATURE_LEVEL -{ - D2D1_FEATURE_LEVEL_DEFAULT = 0, - D2D1_FEATURE_LEVEL_9 = D3D_FEATURE_LEVEL_9_1, - D2D1_FEATURE_LEVEL_10 = D3D_FEATURE_LEVEL_10_0, - D2D1_FEATURE_LEVEL_FORCE_DWORD = 0xffffffff, -} D2D1_FEATURE_LEVEL; - -typedef enum D2D1_WINDOW_STATE -{ - D2D1_WINDOW_STATE_NONE = 0, - D2D1_WINDOW_STATE_OCCLUDED = 1, - D2D1_WINDOW_STATE_FORCE_DWORD = 0xffffffff, -} D2D1_WINDOW_STATE; - -typedef enum D2D1_DC_INITIALIZE_MODE -{ - D2D1_DC_INITIALIZE_MODE_COPY = 0, - D2D1_DC_INITIALIZE_MODE_CLEAR = 1, - D2D1_DC_INITIALIZE_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_DC_INITIALIZE_MODE; - -typedef enum D2D1_PRESENT_OPTIONS -{ - D2D1_PRESENT_OPTIONS_NONE = 0x00000000, - D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS = 0x00000001, - D2D1_PRESENT_OPTIONS_IMMEDIATELY = 0x00000002, - D2D1_PRESENT_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_PRESENT_OPTIONS; - -typedef struct D2D1_BEZIER_SEGMENT -{ - D2D1_POINT_2F point1; - D2D1_POINT_2F point2; - D2D1_POINT_2F point3; -} D2D1_BEZIER_SEGMENT; - -typedef struct D2D1_FACTORY_OPTIONS -{ - D2D1_DEBUG_LEVEL debugLevel; -} D2D1_FACTORY_OPTIONS; - -typedef struct D2D1_TRIANGLE -{ - D2D1_POINT_2F point1; - D2D1_POINT_2F point2; - D2D1_POINT_2F point3; -} D2D1_TRIANGLE; - -typedef struct D2D1_ROUNDED_RECT -{ - D2D1_RECT_F rect; - float radiusX; - float radiusY; -} D2D1_ROUNDED_RECT; - -typedef struct D2D1_ELLIPSE -{ - D2D1_POINT_2F point; - float radiusX; - float radiusY; -} D2D1_ELLIPSE; - -typedef struct D2D1_QUADRATIC_BEZIER_SEGMENT -{ - D2D1_POINT_2F point1; - D2D1_POINT_2F point2; -} D2D1_QUADRATIC_BEZIER_SEGMENT; - -typedef struct D2D1_ARC_SEGMENT -{ - D2D1_POINT_2F point; - D2D1_SIZE_F size; - float rotationAngle; - D2D1_SWEEP_DIRECTION sweepDirection; - D2D1_ARC_SIZE arcSize; -} D2D1_ARC_SEGMENT; - -typedef struct D2D1_DRAWING_STATE_DESCRIPTION -{ - D2D1_ANTIALIAS_MODE antialiasMode; - D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode; - D2D1_TAG tag1; - D2D1_TAG tag2; - D2D1_MATRIX_3X2_F transform; -} D2D1_DRAWING_STATE_DESCRIPTION; - -typedef struct D2D1_GRADIENT_STOP -{ - float position; - D2D1_COLOR_F color; -} D2D1_GRADIENT_STOP; - -typedef struct D2D1_BITMAP_PROPERTIES -{ - D2D1_PIXEL_FORMAT pixelFormat; - float dpiX; - float dpiY; -} D2D1_BITMAP_PROPERTIES; - -typedef struct D2D1_BITMAP_BRUSH_PROPERTIES -{ - D2D1_EXTEND_MODE extendModeX; - D2D1_EXTEND_MODE extendModeY; - D2D1_BITMAP_INTERPOLATION_MODE interpolationMode; -} D2D1_BITMAP_BRUSH_PROPERTIES; - -typedef struct D2D1_BRUSH_PROPERTIES -{ - float opacity; - D2D1_MATRIX_3X2_F transform; -} D2D1_BRUSH_PROPERTIES; - -typedef struct D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES -{ - D2D1_POINT_2F startPoint; - D2D1_POINT_2F endPoint; -} D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES; - -typedef struct D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES -{ - D2D1_POINT_2F center; - D2D1_POINT_2F gradientOriginOffset; - float radiusX; - float radiusY; -} D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES; - -typedef struct D2D1_LAYER_PARAMETERS -{ - D2D1_RECT_F contentBounds; - ID2D1Geometry *geometricMask; - D2D1_ANTIALIAS_MODE maskAntialiasMode; - D2D1_MATRIX_3X2_F maskTransform; - float opacity; - ID2D1Brush *opacityBrush; - D2D1_LAYER_OPTIONS layerOptions; -} D2D1_LAYER_PARAMETERS; - -typedef struct D2D1_RENDER_TARGET_PROPERTIES -{ - D2D1_RENDER_TARGET_TYPE type; - D2D1_PIXEL_FORMAT pixelFormat; - float dpiX; - float dpiY; - D2D1_RENDER_TARGET_USAGE usage; - D2D1_FEATURE_LEVEL minLevel; -} D2D1_RENDER_TARGET_PROPERTIES; - -typedef struct D2D1_STROKE_STYLE_PROPERTIES -{ - D2D1_CAP_STYLE startCap; - D2D1_CAP_STYLE endCap; - D2D1_CAP_STYLE dashCap; - D2D1_LINE_JOIN lineJoin; - float miterLimit; - D2D1_DASH_STYLE dashStyle; - float dashOffset; -} D2D1_STROKE_STYLE_PROPERTIES; - -typedef struct D2D1_HWND_RENDER_TARGET_PROPERTIES -{ - HWND hwnd; - D2D1_SIZE_U pixelSize; - D2D1_PRESENT_OPTIONS presentOptions; -} D2D1_HWND_RENDER_TARGET_PROPERTIES; - -[ - local, - object, - uuid(2cd90691-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1Resource : IUnknown -{ - void GetFactory( - [out] ID2D1Factory **factory - ); -} - -[ - local, - object, - uuid(2cd9069d-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1StrokeStyle : ID2D1Resource -{ - D2D1_CAP_STYLE GetStartCap(); - D2D1_CAP_STYLE GetEndCap(); - D2D1_CAP_STYLE GetDashCap(); - float GetMiterLimit(); - D2D1_LINE_JOIN GetLineJoin(); - float GetDashOffset(); - D2D1_DASH_STYLE GetDashStyle(); - UINT32 GetDashesCount(); - void GetDashes( - [out, size_is(count)] float *dashes, - [in] UINT32 count - ); -} - -[ - local, - object, - uuid(2cd9069e-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1SimplifiedGeometrySink : IUnknown -{ - void SetFillMode(D2D1_FILL_MODE mode); - void SetSegmentFlags(D2D1_PATH_SEGMENT vertexFlags); - void BeginFigure(D2D1_POINT_2F startPoint, D2D1_FIGURE_BEGIN figureBegin); - void AddLines(const D2D1_POINT_2F *points, UINT32 count); - void AddBeziers(const D2D1_BEZIER_SEGMENT *beziers, UINT32 count); - void EndFigure(D2D1_FIGURE_END figureEnd); - HRESULT Close(); -} - -[ - local, - object, - uuid(2cd906c1-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1TessellationSink : IUnknown -{ - void AddTriangles( - [in, size_is(count)] const D2D1_TRIANGLE *triangles, - [in] UINT32 count - ); - HRESULT Close(); -} - -[ - local, - object, - uuid(2cd906a1-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1Geometry : ID2D1Resource -{ - HRESULT GetBounds( - [in] const D2D1_MATRIX_3X2_F *transform, - [out] D2D1_RECT_F *bounds - ); - HRESULT GetWidenedBounds( - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] D2D1_RECT_F *bounds - ); - HRESULT StrokeContainsPoint( - [in] D2D1_POINT_2F point, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] BOOL *contains - ); - HRESULT FillContainsPoint( - [in] D2D1_POINT_2F point, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] BOOL *contains - ); - HRESULT CompareWithGeometry( - [in] ID2D1Geometry *geometry, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] D2D1_GEOMETRY_RELATION *relation - ); - HRESULT Simplify( - [in] D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [in] ID2D1SimplifiedGeometrySink *sink - ); - HRESULT Tessellate( - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [in] ID2D1TessellationSink *sink - ); - HRESULT CombineWithGeometry( - [in] ID2D1Geometry *geometry, - [in] D2D1_COMBINE_MODE combine_mode, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [in] ID2D1SimplifiedGeometrySink *sink - ); - HRESULT Outline( - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [in] ID2D1SimplifiedGeometrySink *sink - ); - HRESULT ComputeArea( - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] float *area - ); - HRESULT ComputeLength( - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] float *length - ); - HRESULT ComputePointAtLength( - [in] float length, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] D2D1_POINT_2F *point, - [out] D2D1_POINT_2F *tangent - ); - HRESULT Widen( - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style, - [in] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [in] ID2D1SimplifiedGeometrySink *sink - ); -} - -[ - local, - object, - uuid(2cd906a2-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1RectangleGeometry : ID2D1Geometry -{ - void GetRect( - [out] D2D1_RECT_F *rect - ); -} - -[ - local, - object, - uuid(2cd906a3-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1RoundedRectangleGeometry : ID2D1Geometry -{ - void GetRoundedRect( - [out] D2D1_ROUNDED_RECT *rect - ); -} - -[ - local, - object, - uuid(2cd906a4-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1EllipseGeometry : ID2D1Geometry -{ - void GetEllipse( - [out] D2D1_ELLIPSE *ellipse - ); -} - -[ - local, - object, - uuid(2cd906a6-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1GeometryGroup : ID2D1Geometry -{ - D2D1_FILL_MODE GetFillMode(); - UINT32 GetSourceGeometryCount(); - void GetSourceGeometries( - [out, size_is(geometry_count)] ID2D1Geometry **geometry, - [in] UINT32 geometry_count - ); -} - -[ - local, - object, - uuid(2cd906bb-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1TransformedGeometry : ID2D1Geometry -{ - void GetSourceGeometry( - [out] ID2D1Geometry **geometry - ); - void GetTransform( - [out] D2D1_MATRIX_3X2_F *transform - ); -} - -[ - local, - object, - uuid(2cd9069f-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1GeometrySink : ID2D1SimplifiedGeometrySink -{ - void AddLine( - [in] D2D1_POINT_2F point - ); - void AddBezier( - [in] const D2D1_BEZIER_SEGMENT *bezier - ); - void AddQuadraticBezier( - [in] const D2D1_QUADRATIC_BEZIER_SEGMENT *bezier - ); - void AddQuadraticBeziers( - [in, size_is(bezier_count)] const D2D1_QUADRATIC_BEZIER_SEGMENT *beziers, - [in] UINT32 bezier_count - ); - void AddArc( - [in] const D2D1_ARC_SEGMENT *arc - ); -} - -[ - local, - object, - uuid(2cd906a5-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1PathGeometry : ID2D1Geometry -{ - HRESULT Open( - [out] ID2D1GeometrySink **sink - ); - HRESULT Stream( - [in] ID2D1GeometrySink *sink - ); - HRESULT GetSegmentCount( - [out] UINT32 *count - ); - HRESULT GetFigureCount( - [out] UINT32 *count - ); -} - -[ - local, - object, - uuid(28506e39-ebf6-46a1-bb47-fd85565ab957) -] -interface ID2D1DrawingStateBlock : ID2D1Resource -{ - void GetDescription( - [out] D2D1_DRAWING_STATE_DESCRIPTION *desc - ); - void SetDescription( - [in] const D2D1_DRAWING_STATE_DESCRIPTION *desc - ); - void SetTextRenderingParams( - [in] IDWriteRenderingParams *text_rendering_params - ); - void GetTextRenderingParams( - [out] IDWriteRenderingParams **text_rendering_params - ); -} - -[ - local, - object, - uuid(65019f75-8da2-497c-b32c-dfa34e48ede6) -] -interface ID2D1Image : ID2D1Resource -{ -} - -[ - local, - object, - uuid(a2296057-ea42-4099-983b-539fb6505426) -] -interface ID2D1Bitmap : ID2D1Image -{ - D2D1_SIZE_F GetSize(); - D2D1_SIZE_U GetPixelSize(); - D2D1_PIXEL_FORMAT GetPixelFormat(); - void GetDpi( - [out] float *dpi_x, - [out] float *dpi_y - ); - HRESULT CopyFromBitmap( - [in] const D2D1_POINT_2U *dst_point, - [in] ID2D1Bitmap *bitmap, - [in] const D2D1_RECT_U *src_rect - ); - HRESULT CopyFromRenderTarget( - [in] const D2D1_POINT_2U *dst_point, - [in] ID2D1RenderTarget *render_target, - [in] const D2D1_RECT_U *src_rect - ); - HRESULT CopyFromMemory( - [in] const D2D1_RECT_U *dst_rect, - [in] const void *src_data, - [in] UINT32 pitch - ); -} - -[ - local, - object, - uuid(2cd906a8-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1Brush : ID2D1Resource -{ - void SetOpacity( - [in] float opacity - ); - void SetTransform( - [in] const D2D1_MATRIX_3X2_F *transform - ); - float GetOpacity(); - void GetTransform( - [out] D2D1_MATRIX_3X2_F *transform - ); -} - -[ - local, - object, - uuid(2cd906aa-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1BitmapBrush : ID2D1Brush -{ - void SetExtendModeX( - [in] D2D1_EXTEND_MODE mode - ); - void SetExtendModeY( - [in] D2D1_EXTEND_MODE mode - ); - void SetInterpolationMode( - [in] D2D1_BITMAP_INTERPOLATION_MODE mode - ); - void SetBitmap( - [in] ID2D1Bitmap *bitmap - ); - D2D1_EXTEND_MODE GetExtendModeX(); - D2D1_EXTEND_MODE GetExtendModeY(); - D2D1_BITMAP_INTERPOLATION_MODE GetInterpolationMode(); - void GetBitmap( - [out] ID2D1Bitmap **bitmap - ); -} - -[ - local, - object, - uuid(2cd906a9-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1SolidColorBrush : ID2D1Brush -{ - void SetColor( - [in] const D2D1_COLOR_F *color - ); - D2D1_COLOR_F GetColor(); -} - -[ - local, - object, - uuid(2cd906a7-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1GradientStopCollection : ID2D1Resource -{ - UINT32 GetGradientStopCount(); - void GetGradientStops( - [out] D2D1_GRADIENT_STOP *stops, - [in] UINT32 stop_count - ); - D2D1_GAMMA GetColorInterpolationGamma(); - D2D1_EXTEND_MODE GetExtendMode(); -} - -[ - local, - object, - uuid(2cd906ab-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1LinearGradientBrush : ID2D1Brush -{ - void SetStartPoint( - [in] D2D1_POINT_2F start_point - ); - void SetEndPoint( - [in] D2D1_POINT_2F end_point - ); - D2D1_POINT_2F GetStartPoint(); - D2D1_POINT_2F GetEndPoint(); - void GetGradientStopCollection( - [out] ID2D1GradientStopCollection **gradient - ); -} - -[ - local, - object, - uuid(2cd906ac-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1RadialGradientBrush : ID2D1Brush -{ - void SetCenter( - [in] D2D1_POINT_2F center - ); - void SetGradientOriginOffset( - [in] D2D1_POINT_2F offset - ); - void SetRadiusX( - [in] float radius - ); - void SetRadiusY( - [in] float radius - ); - D2D1_POINT_2F GetCenter(); - D2D1_POINT_2F GetGradientOriginOffset(); - float GetRadiusX(); - float GetRadiusY(); - void GetGradientStopCollection( - [out] ID2D1GradientStopCollection **gradient - ); -} - -[ - local, - object, - uuid(2cd9069b-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1Layer : ID2D1Resource -{ - D2D1_SIZE_F GetSize(); -} - -[ - local, - object, - uuid(2cd906c2-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1Mesh : ID2D1Resource -{ - HRESULT Open( - [out] ID2D1TessellationSink **sink - ); -} - -[ - local, - object, - uuid(2cd90694-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1RenderTarget : ID2D1Resource -{ - HRESULT CreateBitmap( - [in] D2D1_SIZE_U size, - [in] const void *src_data, - [in] UINT32 pitch, - [in] const D2D1_BITMAP_PROPERTIES *desc, - [out] ID2D1Bitmap **bitmap - ); - HRESULT CreateBitmapFromWicBitmap( - [in] IWICBitmapSource *bitmap_source, - [in] const D2D1_BITMAP_PROPERTIES *desc, - [out] ID2D1Bitmap **bitmap - ); - HRESULT CreateSharedBitmap( - [in] REFIID iid, - [in, out] void *data, - [in] const D2D1_BITMAP_PROPERTIES *desc, - [out] ID2D1Bitmap **bitmap - ); - HRESULT CreateBitmapBrush( - [in] ID2D1Bitmap *bitmap, - [in] const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - [in] const D2D1_BRUSH_PROPERTIES *brush_desc, - [out] ID2D1BitmapBrush **brush - ); - HRESULT CreateSolidColorBrush( - [in] const D2D1_COLOR_F *color, - [in] const D2D1_BRUSH_PROPERTIES *desc, - [out] ID2D1SolidColorBrush **brush - ); - HRESULT CreateGradientStopCollection( - [in, size_is(stop_count)] const D2D1_GRADIENT_STOP *stops, - [in] UINT32 stop_count, - [in] D2D1_GAMMA gamma, - [in] D2D1_EXTEND_MODE extend_mode, - [out] ID2D1GradientStopCollection **gradient - ); - HRESULT CreateLinearGradientBrush( - [in] const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - [in] const D2D1_BRUSH_PROPERTIES *brush_desc, - [in] ID2D1GradientStopCollection *gradient, - [out] ID2D1LinearGradientBrush **brush - ); - HRESULT CreateRadialGradientBrush( - [in] const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - [in] const D2D1_BRUSH_PROPERTIES *brush_desc, - [in] ID2D1GradientStopCollection *gradient, - [out] ID2D1RadialGradientBrush **brush - ); - HRESULT CreateCompatibleRenderTarget( - [in] const D2D1_SIZE_F *size, - [in] const D2D1_SIZE_U *pixel_size, - [in] const D2D1_PIXEL_FORMAT *format, - [in] D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - [out] ID2D1BitmapRenderTarget **render_target - ); - HRESULT CreateLayer( - [in] const D2D1_SIZE_F *size, - [out] ID2D1Layer **layer - ); - HRESULT CreateMesh( - [out] ID2D1Mesh **mesh - ); - void DrawLine( - [in] D2D1_POINT_2F p0, - [in] D2D1_POINT_2F p1, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - void DrawRectangle( - [in] const D2D1_RECT_F *rect, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - void FillRectangle( - [in] const D2D1_RECT_F *rect, - [in] ID2D1Brush *brush - ); - void DrawRoundedRectangle( - [in] const D2D1_ROUNDED_RECT *rect, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - void FillRoundedRectangle( - [in] const D2D1_ROUNDED_RECT *rect, - [in] ID2D1Brush *brush - ); - void DrawEllipse( - [in] const D2D1_ELLIPSE *ellipse, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - void FillEllipse( - [in] const D2D1_ELLIPSE *ellipse, - [in] ID2D1Brush *brush - ); - void DrawGeometry( - [in] ID2D1Geometry *geometry, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - void FillGeometry( - [in] ID2D1Geometry *geometry, - [in] ID2D1Brush *brush, - [in] ID2D1Brush *opacity_brush - ); - void FillMesh( - [in] ID2D1Mesh *mesh, - [in] ID2D1Brush *brush - ); - void FillOpacityMask( - [in] ID2D1Bitmap *mask, - [in] ID2D1Brush *brush, - [in] D2D1_OPACITY_MASK_CONTENT content, - [in] const D2D1_RECT_F *dst_rect, - [in] const D2D1_RECT_F *src_rect - ); - void DrawBitmap( - [in] ID2D1Bitmap *bitmap, - [in] const D2D1_RECT_F *dst_rect, - [in] float opacity, - [in] D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - [in] const D2D1_RECT_F *src_rect - ); - void DrawText( - [in, size_is(string_len)] const WCHAR *string, - [in] UINT32 string_len, - [in] IDWriteTextFormat *text_format, - [in] const D2D1_RECT_F *layout_rect, - [in] ID2D1Brush *brush, - [in] D2D1_DRAW_TEXT_OPTIONS options, - [in] DWRITE_MEASURING_MODE measuring_mode - ); - void DrawTextLayout( - [in] D2D1_POINT_2F origin, - [in] IDWriteTextLayout *layout, - [in] ID2D1Brush *brush, - [in] D2D1_DRAW_TEXT_OPTIONS options - ); - void DrawGlyphRun( - [in] D2D1_POINT_2F baseline_origin, - [in] const DWRITE_GLYPH_RUN *glyph_run, - [in] ID2D1Brush *brush, - [in] DWRITE_MEASURING_MODE measuring_mode - ); - void SetTransform( - [in] const D2D1_MATRIX_3X2_F *transform - ); - void GetTransform( - [out] D2D1_MATRIX_3X2_F *transform - ); - void SetAntialiasMode( - [in] D2D1_ANTIALIAS_MODE antialias_mode - ); - D2D1_ANTIALIAS_MODE GetAntialiasMode(); - void SetTextAntialiasMode( - [in] D2D1_TEXT_ANTIALIAS_MODE antialias_mode - ); - D2D1_TEXT_ANTIALIAS_MODE GetTextAntialiasMode(); - void SetTextRenderingParams( - [in] IDWriteRenderingParams *text_rendering_params - ); - void GetTextRenderingParams( - [out] IDWriteRenderingParams **text_rendering_params - ); - void SetTags( - [in] D2D1_TAG tag1, - [in] D2D1_TAG tag2 - ); - void GetTags( - [out] D2D1_TAG *tag1, - [out] D2D1_TAG *tag2 - ); - void PushLayer( - [in] const D2D1_LAYER_PARAMETERS *layer_parameters, - [in] ID2D1Layer *layer - ); - void PopLayer(); - HRESULT Flush( - [out] D2D1_TAG *tag1, - [out] D2D1_TAG *tag2 - ); - void SaveDrawingState( - [in, out] ID2D1DrawingStateBlock *state_block - ); - void RestoreDrawingState( - [in] ID2D1DrawingStateBlock *state_block - ); - void PushAxisAlignedClip( - [in] const D2D1_RECT_F *clip_rect, - [in] D2D1_ANTIALIAS_MODE antialias_mode - ); - void PopAxisAlignedClip(); - void Clear( - [in] const D2D1_COLOR_F *color - ); - void BeginDraw(); - HRESULT EndDraw( - [out] D2D1_TAG *tag1, - [out] D2D1_TAG *tag2 - ); - D2D1_PIXEL_FORMAT GetPixelFormat(); - void SetDpi( - [in] float dpi_x, - [in] float dpi_y - ); - void GetDpi( - [out] float *dpi_x, - [out] float *dpi_y - ); - D2D1_SIZE_F GetSize(); - D2D1_SIZE_U GetPixelSize(); - UINT32 GetMaximumBitmapSize(); - BOOL IsSupported( - [in] const D2D1_RENDER_TARGET_PROPERTIES *desc - ); -} - -[ - local, - object, - uuid(2cd90695-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1BitmapRenderTarget : ID2D1RenderTarget -{ - HRESULT GetBitmap( - [out] ID2D1Bitmap **bitmap - ); -} - -[ - local, - object, - uuid(2cd90698-12e2-11dc-9fed-001143a055f9) -] -interface ID2D1HwndRenderTarget : ID2D1RenderTarget -{ - D2D1_WINDOW_STATE CheckWindowState(); - HRESULT Resize( - [in] const D2D1_SIZE_U *size - ); - HWND GetHwnd(); -} - -[ - local, - object, - uuid(1c51bc64-de61-46fd-9899-63a5d8f03950) -] -interface ID2D1DCRenderTarget : ID2D1RenderTarget -{ - HRESULT BindDC( - [in] const HDC dc, - [in] const RECT *rect - ); -} - -[ - local, - object, - uuid(e0db51c3-6f77-4bae-b3d5-e47509b35838) -] -interface ID2D1GdiInteropRenderTarget : IUnknown -{ - HRESULT GetDC( - [in] D2D1_DC_INITIALIZE_MODE mode, - [out] HDC *dc - ); - HRESULT ReleaseDC( - [in] const RECT *update - ); -} - -[ - local, - object, - uuid(06152247-6f50-465a-9245-118bfd3b6007) -] -interface ID2D1Factory : IUnknown -{ - HRESULT ReloadSystemMetrics(); - void GetDesktopDpi( - [out] float *dpi_x, - [out] float *dpi_y - ); - HRESULT CreateRectangleGeometry( - [in] const D2D1_RECT_F *rect, - [out] ID2D1RectangleGeometry **geometry - ); - HRESULT CreateRoundedRectangleGeometry( - [in] const D2D1_ROUNDED_RECT *rect, - [out] ID2D1RoundedRectangleGeometry **geometry - ); - HRESULT CreateEllipseGeometry( - [in] const D2D1_ELLIPSE *ellipse, - [out] ID2D1EllipseGeometry **geometry - ); - HRESULT CreateGeometryGroup( - [in] D2D1_FILL_MODE fill_mode, - [in, size_is(geometry_count)] ID2D1Geometry **geometries, - [in] UINT32 geometry_count, - [out] ID2D1GeometryGroup **group - ); - HRESULT CreateTransformedGeometry( - [in] ID2D1Geometry *src_geometry, - [in] const D2D1_MATRIX_3X2_F *transform, - [out] ID2D1TransformedGeometry **transformed_geometry - ); - HRESULT CreatePathGeometry( - [out] ID2D1PathGeometry **geometry - ); - HRESULT CreateStrokeStyle( - [in] const D2D1_STROKE_STYLE_PROPERTIES *desc, - [in, size_is(dash_count)] const float *dashes, - [in] UINT32 dash_count, - [out] ID2D1StrokeStyle **stroke_style - ); - HRESULT CreateDrawingStateBlock( - [in] const D2D1_DRAWING_STATE_DESCRIPTION *desc, - [in] IDWriteRenderingParams *text_rendering_params, - [out] ID2D1DrawingStateBlock **state_block - ); - HRESULT CreateWicBitmapRenderTarget( - [in] IWICBitmap *target, - [in] const D2D1_RENDER_TARGET_PROPERTIES *desc, - [out] ID2D1RenderTarget **render_target - ); - HRESULT CreateHwndRenderTarget( - [in] const D2D1_RENDER_TARGET_PROPERTIES *desc, - [in] const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwnd_rt_desc, - [out] ID2D1HwndRenderTarget **render_target - ); - HRESULT CreateDxgiSurfaceRenderTarget( - [in] IDXGISurface *surface, - [in] const D2D1_RENDER_TARGET_PROPERTIES *desc, - [out] ID2D1RenderTarget **render_target - ); - HRESULT CreateDCRenderTarget( - [in] const D2D1_RENDER_TARGET_PROPERTIES *desc, - [out] ID2D1DCRenderTarget **render_target - ); -} - -[local] HRESULT __stdcall D2D1CreateFactory(D2D1_FACTORY_TYPE factory_type, REFIID iid, - const D2D1_FACTORY_OPTIONS *factory_options, void **factory); -[local] BOOL __stdcall D2D1InvertMatrix(D2D1_MATRIX_3X2_F *matrix); -[local] BOOL __stdcall D2D1IsMatrixInvertible(const D2D1_MATRIX_3X2_F *matrix); -[local] void __stdcall D2D1MakeRotateMatrix(float angle, D2D1_POINT_2F center, D2D1_MATRIX_3X2_F *matrix); -[local] void __stdcall D2D1MakeSkewMatrix(float angle_x, float angle_y, D2D1_POINT_2F center, D2D1_MATRIX_3X2_F *matrix); diff --git a/mingw-w64-headers/include/d2d1_1.h b/mingw-w64-headers/include/d2d1_1.h index 2e8ae9408..f6898c668 100644 --- a/mingw-w64-headers/include/d2d1_1.h +++ b/mingw-w64-headers/include/d2d1_1.h @@ -1,431 +1,296 @@ -/*** Autogenerated by WIDL 8.12 from include/d2d1_1.idl - Do not edit ***/ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the mingw-w64 runtime package. + * No warranty is given; refer to the file DISCLAIMER.PD within this package. + */ -#ifdef _WIN32 -#ifndef __REQUIRED_RPCNDR_H_VERSION__ -#define __REQUIRED_RPCNDR_H_VERSION__ 475 -#endif -#include -#include -#endif - -#ifndef COM_NO_WINDOWS_H -#include -#include -#endif - -#ifndef __d2d1_1_h__ -#define __d2d1_1_h__ - -#ifndef __WIDL_INLINE -#if defined(__cplusplus) || defined(_MSC_VER) -#define __WIDL_INLINE inline -#elif defined(__GNUC__) -#define __WIDL_INLINE __inline__ -#endif -#endif - -/* Forward declarations */ - -#ifndef __ID2D1GdiMetafileSink_FWD_DEFINED__ -#define __ID2D1GdiMetafileSink_FWD_DEFINED__ -typedef interface ID2D1GdiMetafileSink ID2D1GdiMetafileSink; -#ifdef __cplusplus -interface ID2D1GdiMetafileSink; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1GdiMetafile_FWD_DEFINED__ -#define __ID2D1GdiMetafile_FWD_DEFINED__ -typedef interface ID2D1GdiMetafile ID2D1GdiMetafile; -#ifdef __cplusplus -interface ID2D1GdiMetafile; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1PathGeometry1_FWD_DEFINED__ -#define __ID2D1PathGeometry1_FWD_DEFINED__ -typedef interface ID2D1PathGeometry1 ID2D1PathGeometry1; -#ifdef __cplusplus -interface ID2D1PathGeometry1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Properties_FWD_DEFINED__ -#define __ID2D1Properties_FWD_DEFINED__ -typedef interface ID2D1Properties ID2D1Properties; -#ifdef __cplusplus -interface ID2D1Properties; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Effect_FWD_DEFINED__ -#define __ID2D1Effect_FWD_DEFINED__ -typedef interface ID2D1Effect ID2D1Effect; -#ifdef __cplusplus -interface ID2D1Effect; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1DrawingStateBlock1_FWD_DEFINED__ -#define __ID2D1DrawingStateBlock1_FWD_DEFINED__ -typedef interface ID2D1DrawingStateBlock1 ID2D1DrawingStateBlock1; -#ifdef __cplusplus -interface ID2D1DrawingStateBlock1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ColorContext_FWD_DEFINED__ -#define __ID2D1ColorContext_FWD_DEFINED__ -typedef interface ID2D1ColorContext ID2D1ColorContext; -#ifdef __cplusplus -interface ID2D1ColorContext; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Bitmap1_FWD_DEFINED__ -#define __ID2D1Bitmap1_FWD_DEFINED__ -typedef interface ID2D1Bitmap1 ID2D1Bitmap1; -#ifdef __cplusplus -interface ID2D1Bitmap1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BitmapBrush1_FWD_DEFINED__ -#define __ID2D1BitmapBrush1_FWD_DEFINED__ -typedef interface ID2D1BitmapBrush1 ID2D1BitmapBrush1; -#ifdef __cplusplus -interface ID2D1BitmapBrush1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1GradientStopCollection1_FWD_DEFINED__ -#define __ID2D1GradientStopCollection1_FWD_DEFINED__ -typedef interface ID2D1GradientStopCollection1 ID2D1GradientStopCollection1; -#ifdef __cplusplus -interface ID2D1GradientStopCollection1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Device_FWD_DEFINED__ -#define __ID2D1Device_FWD_DEFINED__ -typedef interface ID2D1Device ID2D1Device; -#ifdef __cplusplus -interface ID2D1Device; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1CommandSink_FWD_DEFINED__ -#define __ID2D1CommandSink_FWD_DEFINED__ -typedef interface ID2D1CommandSink ID2D1CommandSink; -#ifdef __cplusplus -interface ID2D1CommandSink; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1CommandList_FWD_DEFINED__ -#define __ID2D1CommandList_FWD_DEFINED__ -typedef interface ID2D1CommandList ID2D1CommandList; -#ifdef __cplusplus -interface ID2D1CommandList; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1PrintControl_FWD_DEFINED__ -#define __ID2D1PrintControl_FWD_DEFINED__ -typedef interface ID2D1PrintControl ID2D1PrintControl; -#ifdef __cplusplus -interface ID2D1PrintControl; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ImageBrush_FWD_DEFINED__ -#define __ID2D1ImageBrush_FWD_DEFINED__ -typedef interface ID2D1ImageBrush ID2D1ImageBrush; -#ifdef __cplusplus -interface ID2D1ImageBrush; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1DeviceContext_FWD_DEFINED__ -#define __ID2D1DeviceContext_FWD_DEFINED__ -typedef interface ID2D1DeviceContext ID2D1DeviceContext; -#ifdef __cplusplus -interface ID2D1DeviceContext; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1StrokeStyle1_FWD_DEFINED__ -#define __ID2D1StrokeStyle1_FWD_DEFINED__ -typedef interface ID2D1StrokeStyle1 ID2D1StrokeStyle1; -#ifdef __cplusplus -interface ID2D1StrokeStyle1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Factory1_FWD_DEFINED__ -#define __ID2D1Factory1_FWD_DEFINED__ -typedef interface ID2D1Factory1 ID2D1Factory1; -#ifdef __cplusplus -interface ID2D1Factory1; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Multithread_FWD_DEFINED__ -#define __ID2D1Multithread_FWD_DEFINED__ -typedef interface ID2D1Multithread ID2D1Multithread; -#ifdef __cplusplus -interface ID2D1Multithread; -#endif /* __cplusplus */ -#endif - -/* Headers for imported files */ +#ifndef _D2D1_1_H_ +#define _D2D1_1_H_ #include #include +#include -#ifdef __cplusplus -extern "C" { -#endif +#include -#ifndef __ID2D1DeviceContext_FWD_DEFINED__ -#define __ID2D1DeviceContext_FWD_DEFINED__ -typedef interface ID2D1DeviceContext ID2D1DeviceContext; -#ifdef __cplusplus -interface ID2D1DeviceContext; -#endif /* __cplusplus */ -#endif +#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) -#ifndef __ID2D1Properties_FWD_DEFINED__ -#define __ID2D1Properties_FWD_DEFINED__ -typedef interface ID2D1Properties ID2D1Properties; -#ifdef __cplusplus -interface ID2D1Properties; -#endif /* __cplusplus */ -#endif - -#ifndef __IPrintDocumentPackageTarget_FWD_DEFINED__ -#define __IPrintDocumentPackageTarget_FWD_DEFINED__ -typedef interface IPrintDocumentPackageTarget IPrintDocumentPackageTarget; -#ifdef __cplusplus -interface IPrintDocumentPackageTarget; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1PrintControl_FWD_DEFINED__ -#define __ID2D1PrintControl_FWD_DEFINED__ -typedef interface ID2D1PrintControl ID2D1PrintControl; -#ifdef __cplusplus -interface ID2D1PrintControl; -#endif /* __cplusplus */ -#endif - -#ifndef __IWICImagingFactory_FWD_DEFINED__ -#define __IWICImagingFactory_FWD_DEFINED__ -typedef interface IWICImagingFactory IWICImagingFactory; -#ifdef __cplusplus -interface IWICImagingFactory; -#endif /* __cplusplus */ -#endif - -#ifndef __IWICColorContext_FWD_DEFINED__ -#define __IWICColorContext_FWD_DEFINED__ -typedef interface IWICColorContext IWICColorContext; -#ifdef __cplusplus -interface IWICColorContext; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ColorContext_FWD_DEFINED__ -#define __ID2D1ColorContext_FWD_DEFINED__ typedef interface ID2D1ColorContext ID2D1ColorContext; -#ifdef __cplusplus -interface ID2D1ColorContext; -#endif /* __cplusplus */ -#endif +typedef interface IWICColorContext IWICColorContext; +typedef interface IWICImagingFactory IWICImagingFactory; +typedef interface IPrintDocumentPackageTarget IPrintDocumentPackageTarget; +typedef interface IDWriteFactory IDWriteFactory; -#ifndef __ID2D1Effect_FWD_DEFINED__ -#define __ID2D1Effect_FWD_DEFINED__ -typedef interface ID2D1Effect ID2D1Effect; -#ifdef __cplusplus +typedef struct D2D1_PROPERTY_BINDING D2D1_PROPERTY_BINDING; + +#ifndef D2D_USE_C_DEFINITIONS +interface ID2D1Device; interface ID2D1Effect; -#endif /* __cplusplus */ +#else +typedef interface ID2D1Device ID2D1Device; +typedef interface ID2D1Effect ID2D1Effect; #endif -#ifndef __ID2D1BitmapBrush1_FWD_DEFINED__ -#define __ID2D1BitmapBrush1_FWD_DEFINED__ -typedef interface ID2D1BitmapBrush1 ID2D1BitmapBrush1; -#ifdef __cplusplus -interface ID2D1BitmapBrush1; -#endif /* __cplusplus */ -#endif - -#ifndef __dwrite_h__ typedef struct DWRITE_GLYPH_RUN_DESCRIPTION DWRITE_GLYPH_RUN_DESCRIPTION; -#endif /* __dwrite_h__ */ -#define D2D1_INVALID_PROPERTY_INDEX UINT_MAX -typedef enum D2D1_DEVICE_CONTEXT_OPTIONS { - D2D1_DEVICE_CONTEXT_OPTIONS_NONE = 0x0, - D2D1_DEVICE_CONTEXT_OPTIONS_ENABLE_MULTITHREADED_OPTIMIZATIONS = 0x1, - D2D1_DEVICE_CONTEXT_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_DEVICE_CONTEXT_OPTIONS; -typedef enum D2D1_STROKE_TRANSFORM_TYPE { - D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0x0, - D2D1_STROKE_TRANSFORM_TYPE_FIXED = 0x1, - D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 0x2, - D2D1_STROKE_TRANSFORM_TYPE_FORCE_DWORD = 0xffffffff -} D2D1_STROKE_TRANSFORM_TYPE; -typedef enum D2D1_PRIMITIVE_BLEND { - D2D1_PRIMITIVE_BLEND_SOURCE_OVER = 0x0, - D2D1_PRIMITIVE_BLEND_COPY = 0x1, - D2D1_PRIMITIVE_BLEND_MIN = 0x2, - D2D1_PRIMITIVE_BLEND_ADD = 0x3, - D2D1_PRIMITIVE_BLEND_MAX = 0x4, - D2D1_PRIMITIVE_BLEND_FORCE_DWORD = 0xffffffff -} D2D1_PRIMITIVE_BLEND; -typedef enum D2D1_UNIT_MODE { - D2D1_UNIT_MODE_DIPS = 0x0, - D2D1_UNIT_MODE_PIXELS = 0x1, - D2D1_UNIT_MODE_FORCE_DWORD = 0xffffffff -} D2D1_UNIT_MODE; -typedef enum D2D1_PRINT_FONT_SUBSET_MODE { - D2D1_PRINT_FONT_SUBSET_MODE_DEFAULT = 0x0, - D2D1_PRINT_FONT_SUBSET_MODE_EACHPAGE = 0x1, - D2D1_PRINT_FONT_SUBSET_MODE_NONE = 0x2, - D2D1_PRINT_FONT_SUBSET_MODE_FORCE_DWORD = 0xffffffff -} D2D1_PRINT_FONT_SUBSET_MODE; -typedef enum D2D1_COLOR_SPACE { - D2D1_COLOR_SPACE_CUSTOM = 0x0, - D2D1_COLOR_SPACE_SRGB = 0x1, - D2D1_COLOR_SPACE_SCRGB = 0x2, - D2D1_COLOR_SPACE_FORCE_DWORD = 0xffffffff -} D2D1_COLOR_SPACE; -typedef enum D2D1_BITMAP_OPTIONS { - D2D1_BITMAP_OPTIONS_NONE = 0x0, - D2D1_BITMAP_OPTIONS_TARGET = 0x1, - D2D1_BITMAP_OPTIONS_CANNOT_DRAW = 0x2, - D2D1_BITMAP_OPTIONS_CPU_READ = 0x4, - D2D1_BITMAP_OPTIONS_GDI_COMPATIBLE = 0x8, - D2D1_BITMAP_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_BITMAP_OPTIONS; -typedef enum D2D1_MAP_OPTIONS { - D2D1_MAP_OPTIONS_NONE = 0x0, - D2D1_MAP_OPTIONS_READ = 0x1, - D2D1_MAP_OPTIONS_WRITE = 0x2, - D2D1_MAP_OPTIONS_DISCARD = 0x4, - D2D1_MAP_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_MAP_OPTIONS; -typedef enum D2D1_BUFFER_PRECISION { - D2D1_BUFFER_PRECISION_UNKNOWN = 0x0, - D2D1_BUFFER_PRECISION_8BPC_UNORM = 0x1, - D2D1_BUFFER_PRECISION_8BPC_UNORM_SRGB = 0x2, - D2D1_BUFFER_PRECISION_16BPC_UNORM = 0x3, - D2D1_BUFFER_PRECISION_16BPC_FLOAT = 0x4, - D2D1_BUFFER_PRECISION_32BPC_FLOAT = 0x5, - D2D1_BUFFER_PRECISION_FORCE_DWORD = 0xffffffff -} D2D1_BUFFER_PRECISION; -typedef enum D2D1_COLOR_INTERPOLATION_MODE { - D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT = 0x0, - D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED = 0x1, - D2D1_COLOR_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_COLOR_INTERPOLATION_MODE; -typedef enum D2D1_INTERPOLATION_MODE { - D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, - D2D1_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, - D2D1_INTERPOLATION_MODE_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC, - D2D1_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR, - D2D1_INTERPOLATION_MODE_ANISOTROPIC = D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC, - D2D1_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC, - D2D1_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_INTERPOLATION_MODE; -typedef enum D2D1_COMPOSITE_MODE { - D2D1_COMPOSITE_MODE_SOURCE_OVER = 0x0, - D2D1_COMPOSITE_MODE_DESTINATION_OVER = 0x1, - D2D1_COMPOSITE_MODE_SOURCE_IN = 0x2, - D2D1_COMPOSITE_MODE_DESTINATION_IN = 0x3, - D2D1_COMPOSITE_MODE_SOURCE_OUT = 0x4, - D2D1_COMPOSITE_MODE_DESTINATION_OUT = 0x5, - D2D1_COMPOSITE_MODE_SOURCE_ATOP = 0x6, - D2D1_COMPOSITE_MODE_DESTINATION_ATOP = 0x7, - D2D1_COMPOSITE_MODE_XOR = 0x8, - D2D1_COMPOSITE_MODE_PLUS = 0x9, - D2D1_COMPOSITE_MODE_SOURCE_COPY = 0xa, - D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY = 0xb, - D2D1_COMPOSITE_MODE_MASK_INVERT = 0xc, - D2D1_COMPOSITE_MODE_FORCE_DWORD = 0xffffffff -} D2D1_COMPOSITE_MODE; -typedef enum D2D1_LAYER_OPTIONS1 { - D2D1_LAYER_OPTIONS1_NONE = 0x0, - D2D1_LAYER_OPTIONS1_INITIALIZE_FROM_BACKGROUND = 0x1, - D2D1_LAYER_OPTIONS1_IGNORE_ALPHA = 0x2, - D2D1_LAYER_OPTIONS1_FORCE_DWORD = 0xffffffff -} D2D1_LAYER_OPTIONS1; -struct D2D1_PROPERTY_BINDING; -typedef D2D_MATRIX_4X4_F D2D1_MATRIX_4X4_F; + +typedef HRESULT (CALLBACK *PD2D1_EFFECT_FACTORY)(IUnknown**); + +typedef D2D_RECT_L D2D1_RECT_L; + typedef enum D2D1_PROPERTY_TYPE { - D2D1_PROPERTY_TYPE_UNKNOWN = 0x0, - D2D1_PROPERTY_TYPE_STRING = 0x1, - D2D1_PROPERTY_TYPE_BOOL = 0x2, - D2D1_PROPERTY_TYPE_UINT32 = 0x3, - D2D1_PROPERTY_TYPE_INT32 = 0x4, - D2D1_PROPERTY_TYPE_FLOAT = 0x5, - D2D1_PROPERTY_TYPE_VECTOR2 = 0x6, - D2D1_PROPERTY_TYPE_VECTOR3 = 0x7, - D2D1_PROPERTY_TYPE_VECTOR4 = 0x8, - D2D1_PROPERTY_TYPE_BLOB = 0x9, - D2D1_PROPERTY_TYPE_IUNKNOWN = 0xa, - D2D1_PROPERTY_TYPE_ENUM = 0xb, - D2D1_PROPERTY_TYPE_ARRAY = 0xc, - D2D1_PROPERTY_TYPE_CLSID = 0xd, - D2D1_PROPERTY_TYPE_MATRIX_3X2 = 0xe, - D2D1_PROPERTY_TYPE_MATRIX_4X3 = 0xf, - D2D1_PROPERTY_TYPE_MATRIX_4X4 = 0x10, - D2D1_PROPERTY_TYPE_MATRIX_5X4 = 0x11, - D2D1_PROPERTY_TYPE_COLOR_CONTEXT = 0x12, - D2D1_PROPERTY_TYPE_FORCE_DWORD = 0xffffffff + D2D1_PROPERTY_TYPE_UNKNOWN = 0, + D2D1_PROPERTY_TYPE_STRING = 1, + D2D1_PROPERTY_TYPE_BOOL = 2, + D2D1_PROPERTY_TYPE_UINT32 = 3, + D2D1_PROPERTY_TYPE_INT32 = 4, + D2D1_PROPERTY_TYPE_FLOAT = 5, + D2D1_PROPERTY_TYPE_VECTOR2 = 6, + D2D1_PROPERTY_TYPE_VECTOR3 = 7, + D2D1_PROPERTY_TYPE_VECTOR4 = 8, + D2D1_PROPERTY_TYPE_BLOB = 9, + D2D1_PROPERTY_TYPE_IUNKNOWN = 10, + D2D1_PROPERTY_TYPE_ENUM = 11, + D2D1_PROPERTY_TYPE_ARRAY = 12, + D2D1_PROPERTY_TYPE_CLSID = 13, + D2D1_PROPERTY_TYPE_MATRIX_3X2 = 14, + D2D1_PROPERTY_TYPE_MATRIX_4X3 = 15, + D2D1_PROPERTY_TYPE_MATRIX_4X4 = 16, + D2D1_PROPERTY_TYPE_MATRIX_5X4 = 17, + D2D1_PROPERTY_TYPE_COLOR_CONTEXT = 18, + D2D1_PROPERTY_TYPE_FORCE_DWORD = 0xffffffff } D2D1_PROPERTY_TYPE; + typedef enum D2D1_PROPERTY { - D2D1_PROPERTY_CLSID = 0x80000000, + D2D1_PROPERTY_CLSID = 0x80000000, D2D1_PROPERTY_DISPLAYNAME = 0x80000001, - D2D1_PROPERTY_AUTHOR = 0x80000002, - D2D1_PROPERTY_CATEGORY = 0x80000003, + D2D1_PROPERTY_AUTHOR = 0x80000002, + D2D1_PROPERTY_CATEGORY = 0x80000003, D2D1_PROPERTY_DESCRIPTION = 0x80000004, - D2D1_PROPERTY_INPUTS = 0x80000005, - D2D1_PROPERTY_CACHED = 0x80000006, - D2D1_PROPERTY_PRECISION = 0x80000007, - D2D1_PROPERTY_MIN_INPUTS = 0x80000008, - D2D1_PROPERTY_MAX_INPUTS = 0x80000009, + D2D1_PROPERTY_INPUTS = 0x80000005, + D2D1_PROPERTY_CACHED = 0x80000006, + D2D1_PROPERTY_PRECISION = 0x80000007, + D2D1_PROPERTY_MIN_INPUTS = 0x80000008, + D2D1_PROPERTY_MAX_INPUTS = 0x80000009, D2D1_PROPERTY_FORCE_DWORD = 0xffffffff } D2D1_PROPERTY; + typedef enum D2D1_SUBPROPERTY { D2D1_SUBPROPERTY_DISPLAYNAME = 0x80000000, - D2D1_SUBPROPERTY_ISREADONLY = 0x80000001, - D2D1_SUBPROPERTY_MIN = 0x80000002, - D2D1_SUBPROPERTY_MAX = 0x80000003, - D2D1_SUBPROPERTY_DEFAULT = 0x80000004, - D2D1_SUBPROPERTY_FIELDS = 0x80000005, - D2D1_SUBPROPERTY_INDEX = 0x80000006, + D2D1_SUBPROPERTY_ISREADONLY = 0x80000001, + D2D1_SUBPROPERTY_MIN = 0x80000002, + D2D1_SUBPROPERTY_MAX = 0x80000003, + D2D1_SUBPROPERTY_DEFAULT = 0x80000004, + D2D1_SUBPROPERTY_FIELDS = 0x80000005, + D2D1_SUBPROPERTY_INDEX = 0x80000006, D2D1_SUBPROPERTY_FORCE_DWORD = 0xffffffff } D2D1_SUBPROPERTY; + +typedef enum D2D1_CHANNEL_DEPTH { + D2D1_CHANNEL_DEPTH_DEFAULT = 0, + D2D1_CHANNEL_DEPTH_1 = 1, + D2D1_CHANNEL_DEPTH_4 = 4, + D2D1_CHANNEL_DEPTH_FORCE_DWORD = 0xffffffff +} D2D1_CHANNEL_DEPTH; + +typedef enum D2D1_BUFFER_PRECISION { + D2D1_BUFFER_PRECISION_UNKNOWN = 0, + D2D1_BUFFER_PRECISION_8BPC_UNORM = 1, + D2D1_BUFFER_PRECISION_8BPC_UNORM_SRGB = 2, + D2D1_BUFFER_PRECISION_16BPC_UNORM = 3, + D2D1_BUFFER_PRECISION_16BPC_FLOAT = 4, + D2D1_BUFFER_PRECISION_32BPC_FLOAT = 5, + D2D1_BUFFER_PRECISION_FORCE_DWORD = 0xffffffff +} D2D1_BUFFER_PRECISION; + +typedef enum D2D1_COLOR_SPACE { + D2D1_COLOR_SPACE_CUSTOM = 0, + D2D1_COLOR_SPACE_SRGB = 1, + D2D1_COLOR_SPACE_SCRGB = 2, + D2D1_COLOR_SPACE_FORCE_DWORD = 0xffffffff +} D2D1_COLOR_SPACE; + +typedef enum D2D1_DEVICE_CONTEXT_OPTIONS { + D2D1_DEVICE_CONTEXT_OPTIONS_NONE = 0, + D2D1_DEVICE_CONTEXT_OPTIONS_ENABLE_MULTITHREADED_OPTIMIZATIONS = 1, + D2D1_DEVICE_CONTEXT_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_DEVICE_CONTEXT_OPTIONS; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_DEVICE_CONTEXT_OPTIONS); + +typedef enum D2D1_BITMAP_OPTIONS { + D2D1_BITMAP_OPTIONS_NONE = 0x00000000, + D2D1_BITMAP_OPTIONS_TARGET = 0x00000001, + D2D1_BITMAP_OPTIONS_CANNOT_DRAW = 0x00000002, + D2D1_BITMAP_OPTIONS_CPU_READ = 0x00000004, + D2D1_BITMAP_OPTIONS_GDI_COMPATIBLE = 0x00000008, + D2D1_BITMAP_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_BITMAP_OPTIONS; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_BITMAP_OPTIONS); + +typedef enum D2D1_MAP_OPTIONS { + D2D1_MAP_OPTIONS_NONE = 0, + D2D1_MAP_OPTIONS_READ = 1, + D2D1_MAP_OPTIONS_WRITE = 2, + D2D1_MAP_OPTIONS_DISCARD = 4, + D2D1_MAP_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_MAP_OPTIONS; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_MAP_OPTIONS); + +typedef enum D2D1_COLOR_INTERPOLATION_MODE { + D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT = 0, + D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED = 1, + D2D1_COLOR_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff +} D2D1_COLOR_INTERPOLATION_MODE; + +typedef enum D2D1_INTERPOLATION_MODE { + D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, + D2D1_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, + D2D1_INTERPOLATION_MODE_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC, + D2D1_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR, + D2D1_INTERPOLATION_MODE_ANISOTROPIC = D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC, + D2D1_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC, + D2D1_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff +} D2D1_INTERPOLATION_MODE; + +typedef enum D2D1_COMPOSITE_MODE { + D2D1_COMPOSITE_MODE_SOURCE_OVER = 0, + D2D1_COMPOSITE_MODE_DESTINATION_OVER = 1, + D2D1_COMPOSITE_MODE_SOURCE_IN = 2, + D2D1_COMPOSITE_MODE_DESTINATION_IN = 3, + D2D1_COMPOSITE_MODE_SOURCE_OUT = 4, + D2D1_COMPOSITE_MODE_DESTINATION_OUT = 5, + D2D1_COMPOSITE_MODE_SOURCE_ATOP = 6, + D2D1_COMPOSITE_MODE_DESTINATION_ATOP = 7, + D2D1_COMPOSITE_MODE_XOR = 8, + D2D1_COMPOSITE_MODE_PLUS = 9, + D2D1_COMPOSITE_MODE_SOURCE_COPY = 10, + D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY = 11, + D2D1_COMPOSITE_MODE_MASK_INVERT = 12, + D2D1_COMPOSITE_MODE_FORCE_DWORD = 0xffffffff +} D2D1_COMPOSITE_MODE; + +typedef enum D2D1_PRIMITIVE_BLEND { + D2D1_PRIMITIVE_BLEND_SOURCE_OVER = 0, + D2D1_PRIMITIVE_BLEND_COPY = 1, + D2D1_PRIMITIVE_BLEND_MIN = 2, + D2D1_PRIMITIVE_BLEND_ADD = 3, + D2D1_PRIMITIVE_BLEND_FORCE_DWORD = 0xffffffff +} D2D1_PRIMITIVE_BLEND; + typedef enum D2D1_THREADING_MODE { D2D1_THREADING_MODE_SINGLE_THREADED = D2D1_FACTORY_TYPE_SINGLE_THREADED, - D2D1_THREADING_MODE_MULTI_THREADED = D2D1_FACTORY_TYPE_MULTI_THREADED, - D2D1_THREADING_MODE_FORCE_DWORD = 0xffffffff + D2D1_THREADING_MODE_MULTI_THREADED = D2D1_FACTORY_TYPE_MULTI_THREADED, + D2D1_THREADING_MODE_FORCE_DWORD = 0xffffffff } D2D1_THREADING_MODE; + +typedef enum D2D1_UNIT_MODE { + D2D1_UNIT_MODE_DIPS = 0, + D2D1_UNIT_MODE_PIXELS = 1, + D2D1_UNIT_MODE_FORCE_DWORD = 0xffffffff +} D2D1_UNIT_MODE; + +typedef enum D2D1_LAYER_OPTIONS1 { + D2D1_LAYER_OPTIONS1_NONE = 0, + D2D1_LAYER_OPTIONS1_INITIALIZE_FROM_BACKGROUND = 1, + D2D1_LAYER_OPTIONS1_IGNORE_ALPHA = 2, + D2D1_LAYER_OPTIONS1_FORCE_DWORD = 0xffffffff +} D2D1_LAYER_OPTIONS1; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_LAYER_OPTIONS1); + +typedef enum D2D1_PRINT_FONT_SUBSET_MODE { + D2D1_PRINT_FONT_SUBSET_MODE_DEFAULT = 0, + D2D1_PRINT_FONT_SUBSET_MODE_EACHPAGE = 1, + D2D1_PRINT_FONT_SUBSET_MODE_NONE = 2, + D2D1_PRINT_FONT_SUBSET_MODE_FORCE_DWORD = 0xffffffff +} D2D1_PRINT_FONT_SUBSET_MODE; + +typedef enum D2D1_STROKE_TRANSFORM_TYPE { + D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0, + D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1, + D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2, + D2D1_STROKE_TRANSFORM_TYPE_FORCE_DWORD = 0xffffffff +} D2D1_STROKE_TRANSFORM_TYPE; + +typedef struct D2D1_BITMAP_PROPERTIES1 { + D2D1_PIXEL_FORMAT pixelFormat; + FLOAT dpiX; + FLOAT dpiY; + D2D1_BITMAP_OPTIONS bitmapOptions; + ID2D1ColorContext *colorContext; +} D2D1_BITMAP_PROPERTIES1; + +typedef struct D2D1_MAPPED_RECT { + UINT32 pitch; + BYTE *bits; +} D2D1_MAPPED_RECT; + +typedef struct D2D1_IMAGE_BRUSH_PROPERTIES { + D2D1_RECT_F sourceRectangle; + D2D1_EXTEND_MODE extendModeX; + D2D1_EXTEND_MODE extendModeY; + D2D1_INTERPOLATION_MODE interpolationMode; +} D2D1_IMAGE_BRUSH_PROPERTIES; + +typedef struct D2D1_BITMAP_BRUSH_PROPERTIES1 { + D2D1_EXTEND_MODE extendModeX; + D2D1_EXTEND_MODE extendModeY; + D2D1_INTERPOLATION_MODE interpolationMode; +} D2D1_BITMAP_BRUSH_PROPERTIES1; + +typedef D2D_MATRIX_4X3_F D2D1_MATRIX_4X3_F; +typedef D2D_MATRIX_4X4_F D2D1_MATRIX_4X4_F; +typedef D2D_MATRIX_5X4_F D2D1_MATRIX_5X4_F; +typedef D2D_VECTOR_2F D2D1_VECTOR_2F; +typedef D2D_VECTOR_3F D2D1_VECTOR_3F; +typedef D2D_VECTOR_4F D2D1_VECTOR_4F; + +typedef struct D2D1_LAYER_PARAMETERS1 { + D2D1_RECT_F contentBounds; + ID2D1Geometry *geometricMask; + D2D1_ANTIALIAS_MODE maskAntialiasMode; + D2D1_MATRIX_3X2_F maskTransform; + FLOAT opacity; + ID2D1Brush *opacityBrush; + D2D1_LAYER_OPTIONS1 layerOptions; +} D2D1_LAYER_PARAMETERS1; + +typedef struct D2D1_RENDERING_CONTROLS { + D2D1_BUFFER_PRECISION bufferPrecision; + D2D1_SIZE_U tileSize; +} D2D1_RENDERING_CONTROLS; + +typedef struct D2D1_EFFECT_INPUT_DESCRIPTION { + ID2D1Effect *effect; + UINT32 inputIndex; + D2D1_RECT_F inputRectangle; +} D2D1_EFFECT_INPUT_DESCRIPTION; + +typedef struct D2D1_PRINT_CONTROL_PROPERTIES { + D2D1_PRINT_FONT_SUBSET_MODE fontSubset; + FLOAT rasterDPI; + D2D1_COLOR_SPACE colorSpace; +} D2D1_PRINT_CONTROL_PROPERTIES; + typedef struct D2D1_CREATION_PROPERTIES { D2D1_THREADING_MODE threadingMode; D2D1_DEBUG_LEVEL debugLevel; D2D1_DEVICE_CONTEXT_OPTIONS options; } D2D1_CREATION_PROPERTIES; + typedef struct D2D1_STROKE_STYLE_PROPERTIES1 { D2D1_CAP_STYLE startCap; D2D1_CAP_STYLE endCap; D2D1_CAP_STYLE dashCap; D2D1_LINE_JOIN lineJoin; - float miterLimit; + FLOAT miterLimit; D2D1_DASH_STYLE dashStyle; - float dashOffset; + FLOAT dashOffset; D2D1_STROKE_TRANSFORM_TYPE transformType; } D2D1_STROKE_STYLE_PROPERTIES1; + typedef struct D2D1_DRAWING_STATE_DESCRIPTION1 { D2D1_ANTIALIAS_MODE antialiasMode; D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode; @@ -435,1316 +300,323 @@ typedef struct D2D1_DRAWING_STATE_DESCRIPTION1 { D2D1_PRIMITIVE_BLEND primitiveBlend; D2D1_UNIT_MODE unitMode; } D2D1_DRAWING_STATE_DESCRIPTION1; -typedef struct D2D1_PRINT_CONTROL_PROPERTIES { - D2D1_PRINT_FONT_SUBSET_MODE fontSubset; - float rasterDPI; - D2D1_COLOR_SPACE colorSpace; -} D2D1_PRINT_CONTROL_PROPERTIES; -typedef struct D2D1_MAPPED_RECT { - UINT32 pitch; - BYTE *bits; -} D2D1_MAPPED_RECT; -typedef struct D2D1_BITMAP_PROPERTIES1 { - D2D1_PIXEL_FORMAT pixelFormat; - float dpiX; - float dpiY; - D2D1_BITMAP_OPTIONS bitmapOptions; - ID2D1ColorContext *colorContext; -} D2D1_BITMAP_PROPERTIES1; -typedef struct D2D1_IMAGE_BRUSH_PROPERTIES { - D2D1_RECT_F sourceRectangle; - D2D1_EXTEND_MODE extendModeX; - D2D1_EXTEND_MODE extendModeY; - D2D1_INTERPOLATION_MODE interpolationMode; -} D2D1_IMAGE_BRUSH_PROPERTIES; -typedef struct D2D1_BITMAP_BRUSH_PROPERTIES1 { - D2D1_EXTEND_MODE extendModeX; - D2D1_EXTEND_MODE extendModeY; - D2D1_INTERPOLATION_MODE interpolationMode; -} D2D1_BITMAP_BRUSH_PROPERTIES1; -typedef struct D2D1_RENDERING_CONTROLS { - D2D1_BUFFER_PRECISION bufferPrecision; - D2D1_SIZE_U tileSize; -} D2D1_RENDERING_CONTROLS; -typedef struct D2D1_LAYER_PARAMETERS1 { - D2D1_RECT_F contentBounds; - ID2D1Geometry *geometricMask; - D2D1_ANTIALIAS_MODE maskAntialiasMode; - D2D1_MATRIX_3X2_F maskTransform; - float opacity; - ID2D1Brush *opacityBrush; - D2D1_LAYER_OPTIONS1 layerOptions; -} D2D1_LAYER_PARAMETERS1; -typedef struct D2D1_EFFECT_INPUT_DESCRIPTION { - ID2D1Effect *effect; - UINT32 inputIndex; - D2D1_RECT_F inputRectangle; -} D2D1_EFFECT_INPUT_DESCRIPTION; + typedef struct D2D1_POINT_DESCRIPTION { D2D1_POINT_2F point; D2D1_POINT_2F unitTangentVector; UINT32 endSegment; UINT32 endFigure; - float lengthToEndSegment; + FLOAT lengthToEndSegment; } D2D1_POINT_DESCRIPTION; -typedef HRESULT (__stdcall *PD2D1_EFFECT_FACTORY)(IUnknown **effect); -/***************************************************************************** - * ID2D1GdiMetafileSink interface - */ -#ifndef __ID2D1GdiMetafileSink_INTERFACE_DEFINED__ -#define __ID2D1GdiMetafileSink_INTERFACE_DEFINED__ -DEFINE_GUID(IID_ID2D1GdiMetafileSink, 0x82237326, 0x8111, 0x4f7c, 0xbc,0xf4, 0xb5,0xc1,0x17,0x55,0x64,0xfe); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("82237326-8111-4f7c-bcf4-b5c1175564fe") -ID2D1GdiMetafileSink : public IUnknown +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Properties : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE ProcessRecord( - DWORD type, - const void *data, - DWORD size) = 0; + STDMETHOD_(UINT32, GetPropertyCount)() CONST PURE; + STDMETHOD(GetPropertyName)(UINT32 index, PWSTR name, UINT32 nameCount) CONST PURE; + STDMETHOD_(UINT32, GetPropertyNameLength)(UINT32 index) CONST PURE; + STDMETHOD_(D2D1_PROPERTY_TYPE, GetType)(UINT32 index) CONST PURE; + STDMETHOD_(UINT32, GetPropertyIndex)(PCWSTR name) CONST PURE; + STDMETHOD(SetValueByName)(PCWSTR name, D2D1_PROPERTY_TYPE type, CONST BYTE *data, UINT32 dataSize) PURE; + STDMETHOD(SetValue)(UINT32 index, D2D1_PROPERTY_TYPE type, CONST BYTE *data, UINT32 dataSize) PURE; + STDMETHOD(GetValueByName)(PCWSTR name, D2D1_PROPERTY_TYPE type, BYTE *data, UINT32 dataSize) CONST PURE; + STDMETHOD(GetValue)(UINT32 index, D2D1_PROPERTY_TYPE type, BYTE *data, UINT32 dataSize) CONST PURE; + STDMETHOD_(UINT32, GetValueSize)(UINT32 index) CONST PURE; + STDMETHOD(GetSubProperties)(UINT32 index, ID2D1Properties **subProperties) CONST PURE; -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GdiMetafileSink, 0x82237326, 0x8111, 0x4f7c, 0xbc,0xf4, 0xb5,0xc1,0x17,0x55,0x64,0xfe) -#endif -#else -typedef struct ID2D1GdiMetafileSinkVtbl { - BEGIN_INTERFACE + HRESULT SetValueByName(PCWSTR name, CONST BYTE *data, UINT32 dataSize) { + return SetValueByName(name, D2D1_PROPERTY_TYPE_UNKNOWN, data, dataSize); + } - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GdiMetafileSink *This, - REFIID riid, - void **ppvObject); + HRESULT SetValue(UINT32 index, CONST BYTE *data, UINT32 dataSize) { + return SetValue(index, D2D1_PROPERTY_TYPE_UNKNOWN, data, dataSize); + } - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GdiMetafileSink *This); + HRESULT GetValueByName(PCWSTR name, BYTE *data, UINT32 dataSize) CONST { + return GetValueByName(name, D2D1_PROPERTY_TYPE_UNKNOWN, data, dataSize); + } - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GdiMetafileSink *This); + HRESULT GetValue(UINT32 index, BYTE *data, UINT32 dataSize) CONST { + return GetValue(index, D2D1_PROPERTY_TYPE_UNKNOWN, data, dataSize); + } - /*** ID2D1GdiMetafileSink methods ***/ - HRESULT (STDMETHODCALLTYPE *ProcessRecord)( - ID2D1GdiMetafileSink *This, - DWORD type, - const void *data, - DWORD size); + template + HRESULT GetValueByName(PCWSTR propertyName, T *value) const { + return GetValueByName(propertyName, reinterpret_cast(value), sizeof(*value)); + } - END_INTERFACE -} ID2D1GdiMetafileSinkVtbl; + template + T GetValueByName(PCWSTR propertyName) const { + T ret; + GetValueByName(propertyName, reinterpret_cast(&ret), sizeof(ret)); + return ret; + } -interface ID2D1GdiMetafileSink { - CONST_VTBL ID2D1GdiMetafileSinkVtbl* lpVtbl; + template + HRESULT SetValueByName(PCWSTR propertyName, const T &value) { + return SetValueByName(propertyName, reinterpret_cast(&value), sizeof(value)); + } + + template + HRESULT GetValue(T index, BYTE *data, UINT32 dataSize) CONST { + return GetValue(static_cast(index), data, dataSize); + } + + template + HRESULT GetValue(U index, T *value) const { + return GetValue(static_cast(index), reinterpret_cast(value), sizeof(*value)); + } + + template + T GetValue(U index) const { + T ret; + GetValue(static_cast(index), reinterpret_cast(&ret), sizeof(ret)); + return ret; + } + + template + HRESULT SetValue(T index, CONST BYTE *data, UINT32 dataSize) { + return SetValue(static_cast(index), data, dataSize); + } + + template + HRESULT SetValue(U index, const T &value) { + return SetValue(static_cast(index), reinterpret_cast(&value), sizeof(value)); + } + + template + HRESULT GetPropertyName(T index, PWSTR name, UINT32 nameCount) CONST { + return GetPropertyName(static_cast(index), name, nameCount); + } + + template + UINT32 GetPropertyNameLength(T index) CONST { + return GetPropertyNameLength(static_cast(index)); + } + + template + D2D1_PROPERTY_TYPE GetType(T index) CONST { + return GetType(static_cast(index)); + } + + template + UINT32 GetValueSize(T index) CONST { + return GetValueSize(static_cast(index)); + } + + template + HRESULT GetSubProperties(T index, ID2D1Properties **subProperties) CONST { + return GetSubProperties(static_cast(index), subProperties); + } }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GdiMetafileSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GdiMetafileSink_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GdiMetafileSink_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1GdiMetafileSink methods ***/ -#define ID2D1GdiMetafileSink_ProcessRecord(This,type,data,size) (This)->lpVtbl->ProcessRecord(This,type,data,size) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GdiMetafileSink_QueryInterface(ID2D1GdiMetafileSink* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GdiMetafileSink_AddRef(ID2D1GdiMetafileSink* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GdiMetafileSink_Release(ID2D1GdiMetafileSink* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1GdiMetafileSink methods ***/ -static __WIDL_INLINE HRESULT ID2D1GdiMetafileSink_ProcessRecord(ID2D1GdiMetafileSink* This,DWORD type,const void *data,DWORD size) { - return This->lpVtbl->ProcessRecord(This,type,data,size); -} -#endif -#endif + +typedef interface ID2D1Properties ID2D1Properties; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1Properties,0x483473d7,0xcd46,0x4f9d,0x9d,0x3a,0x31,0x12,0xaa,0x80,0x15,0x9d); +__CRT_UUID_DECL(ID2D1Properties,0x483473d7,0xcd46,0x4f9d,0x9d,0x3a,0x31,0x12,0xaa,0x80,0x15,0x9d); -#endif /* __ID2D1GdiMetafileSink_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1GdiMetafile interface - */ -#ifndef __ID2D1GdiMetafile_INTERFACE_DEFINED__ -#define __ID2D1GdiMetafile_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1GdiMetafile, 0x2f543dc3, 0xcfc1, 0x4211, 0x86,0x4f, 0xcf,0xd9,0x1c,0x6f,0x33,0x95); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2f543dc3-cfc1-4211-864f-cfd91c6f3395") -ID2D1GdiMetafile : public ID2D1Resource +interface ID2D1GdiMetafileSink : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE Stream( - ID2D1GdiMetafileSink *sink) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetBounds( - D2D1_RECT_F *bounds) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GdiMetafile, 0x2f543dc3, 0xcfc1, 0x4211, 0x86,0x4f, 0xcf,0xd9,0x1c,0x6f,0x33,0x95) -#endif -#else -typedef struct ID2D1GdiMetafileVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GdiMetafile *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GdiMetafile *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GdiMetafile *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1GdiMetafile *This, - ID2D1Factory **factory); - - /*** ID2D1GdiMetafile methods ***/ - HRESULT (STDMETHODCALLTYPE *Stream)( - ID2D1GdiMetafile *This, - ID2D1GdiMetafileSink *sink); - - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1GdiMetafile *This, - D2D1_RECT_F *bounds); - - END_INTERFACE -} ID2D1GdiMetafileVtbl; - -interface ID2D1GdiMetafile { - CONST_VTBL ID2D1GdiMetafileVtbl* lpVtbl; + STDMETHOD(ProcessRecord)(DWORD recordType, CONST void *recordData, DWORD recordDataSize) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GdiMetafile_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GdiMetafile_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GdiMetafile_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1GdiMetafile_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1GdiMetafile methods ***/ -#define ID2D1GdiMetafile_Stream(This,sink) (This)->lpVtbl->Stream(This,sink) -#define ID2D1GdiMetafile_GetBounds(This,bounds) (This)->lpVtbl->GetBounds(This,bounds) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GdiMetafile_QueryInterface(ID2D1GdiMetafile* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GdiMetafile_AddRef(ID2D1GdiMetafile* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GdiMetafile_Release(ID2D1GdiMetafile* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1GdiMetafile_GetFactory(ID2D1GdiMetafile* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1GdiMetafile methods ***/ -static __WIDL_INLINE HRESULT ID2D1GdiMetafile_Stream(ID2D1GdiMetafile* This,ID2D1GdiMetafileSink *sink) { - return This->lpVtbl->Stream(This,sink); -} -static __WIDL_INLINE HRESULT ID2D1GdiMetafile_GetBounds(ID2D1GdiMetafile* This,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,bounds); -} -#endif -#endif + +typedef interface ID2D1GdiMetafileSink ID2D1GdiMetafileSink; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1GdiMetafileSink, 0x82237326,0x8111,0x4f7c,0xbc,0xf4,0xb5,0xc1,0x17,0x55,0x64,0xfe); +__CRT_UUID_DECL(ID2D1GdiMetafileSink, 0x82237326,0x8111,0x4f7c,0xbc,0xf4,0xb5,0xc1,0x17,0x55,0x64,0xfe); -#endif /* __ID2D1GdiMetafile_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1PathGeometry1 interface - */ -#ifndef __ID2D1PathGeometry1_INTERFACE_DEFINED__ -#define __ID2D1PathGeometry1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1PathGeometry1, 0x62baa2d2, 0xab54, 0x41b7, 0xb8,0x72, 0x78,0x7e,0x01,0x06,0xa4,0x21); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("62baa2d2-ab54-41b7-b872-787e0106a421") -ID2D1PathGeometry1 : public ID2D1PathGeometry +interface ID2D1GdiMetafile : public ID2D1Resource { - virtual HRESULT STDMETHODCALLTYPE ComputePointAndSegmentAtLength( - float length, - UINT32 start_segment, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_DESCRIPTION *point_desc) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1PathGeometry1, 0x62baa2d2, 0xab54, 0x41b7, 0xb8,0x72, 0x78,0x7e,0x01,0x06,0xa4,0x21) -#endif -#else -typedef struct ID2D1PathGeometry1Vtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1PathGeometry1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1PathGeometry1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1PathGeometry1 *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1PathGeometry1 *This, - ID2D1Factory **factory); - - /*** ID2D1Geometry methods ***/ - HRESULT (STDMETHODCALLTYPE *GetBounds)( - ID2D1PathGeometry1 *This, - const D2D1_MATRIX_3X2_F *transform, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *GetWidenedBounds)( - ID2D1PathGeometry1 *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_RECT_F *bounds); - - HRESULT (STDMETHODCALLTYPE *StrokeContainsPoint)( - ID2D1PathGeometry1 *This, - D2D1_POINT_2F point, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *FillContainsPoint)( - ID2D1PathGeometry1 *This, - D2D1_POINT_2F point, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - WINBOOL *contains); - - HRESULT (STDMETHODCALLTYPE *CompareWithGeometry)( - ID2D1PathGeometry1 *This, - ID2D1Geometry *geometry, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_GEOMETRY_RELATION *relation); - - HRESULT (STDMETHODCALLTYPE *Simplify)( - ID2D1PathGeometry1 *This, - D2D1_GEOMETRY_SIMPLIFICATION_OPTION option, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Tessellate)( - ID2D1PathGeometry1 *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1TessellationSink *sink); - - HRESULT (STDMETHODCALLTYPE *CombineWithGeometry)( - ID2D1PathGeometry1 *This, - ID2D1Geometry *geometry, - D2D1_COMBINE_MODE combine_mode, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *Outline)( - ID2D1PathGeometry1 *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *ComputeArea)( - ID2D1PathGeometry1 *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *area); - - HRESULT (STDMETHODCALLTYPE *ComputeLength)( - ID2D1PathGeometry1 *This, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - float *length); - - HRESULT (STDMETHODCALLTYPE *ComputePointAtLength)( - ID2D1PathGeometry1 *This, - float length, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_2F *point, - D2D1_POINT_2F *tangent); - - HRESULT (STDMETHODCALLTYPE *Widen)( - ID2D1PathGeometry1 *This, - float stroke_width, - ID2D1StrokeStyle *stroke_style, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - ID2D1SimplifiedGeometrySink *sink); - - /*** ID2D1PathGeometry methods ***/ - HRESULT (STDMETHODCALLTYPE *Open)( - ID2D1PathGeometry1 *This, - ID2D1GeometrySink **sink); - - HRESULT (STDMETHODCALLTYPE *Stream)( - ID2D1PathGeometry1 *This, - ID2D1GeometrySink *sink); - - HRESULT (STDMETHODCALLTYPE *GetSegmentCount)( - ID2D1PathGeometry1 *This, - UINT32 *count); - - HRESULT (STDMETHODCALLTYPE *GetFigureCount)( - ID2D1PathGeometry1 *This, - UINT32 *count); - - /*** ID2D1PathGeometry1 methods ***/ - HRESULT (STDMETHODCALLTYPE *ComputePointAndSegmentAtLength)( - ID2D1PathGeometry1 *This, - float length, - UINT32 start_segment, - const D2D1_MATRIX_3X2_F *transform, - float tolerance, - D2D1_POINT_DESCRIPTION *point_desc); - - END_INTERFACE -} ID2D1PathGeometry1Vtbl; - -interface ID2D1PathGeometry1 { - CONST_VTBL ID2D1PathGeometry1Vtbl* lpVtbl; + STDMETHOD(Stream)(ID2D1GdiMetafileSink *sink) PURE; + STDMETHOD(GetBounds)(D2D1_RECT_F *bounds) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1PathGeometry1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1PathGeometry1_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1PathGeometry1_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1PathGeometry1_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Geometry methods ***/ -#define ID2D1PathGeometry1_GetBounds(This,transform,bounds) (This)->lpVtbl->GetBounds(This,transform,bounds) -#define ID2D1PathGeometry1_GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) (This)->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds) -#define ID2D1PathGeometry1_StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) (This)->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains) -#define ID2D1PathGeometry1_FillContainsPoint(This,point,transform,tolerance,contains) (This)->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains) -#define ID2D1PathGeometry1_CompareWithGeometry(This,geometry,transform,tolerance,relation) (This)->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation) -#define ID2D1PathGeometry1_Simplify(This,option,transform,tolerance,sink) (This)->lpVtbl->Simplify(This,option,transform,tolerance,sink) -#define ID2D1PathGeometry1_Tessellate(This,transform,tolerance,sink) (This)->lpVtbl->Tessellate(This,transform,tolerance,sink) -#define ID2D1PathGeometry1_CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) (This)->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink) -#define ID2D1PathGeometry1_Outline(This,transform,tolerance,sink) (This)->lpVtbl->Outline(This,transform,tolerance,sink) -#define ID2D1PathGeometry1_ComputeArea(This,transform,tolerance,area) (This)->lpVtbl->ComputeArea(This,transform,tolerance,area) -#define ID2D1PathGeometry1_ComputeLength(This,transform,tolerance,length) (This)->lpVtbl->ComputeLength(This,transform,tolerance,length) -#define ID2D1PathGeometry1_ComputePointAtLength(This,length,transform,tolerance,point,tangent) (This)->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent) -#define ID2D1PathGeometry1_Widen(This,stroke_width,stroke_style,transform,tolerance,sink) (This)->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink) -/*** ID2D1PathGeometry methods ***/ -#define ID2D1PathGeometry1_Open(This,sink) (This)->lpVtbl->Open(This,sink) -#define ID2D1PathGeometry1_Stream(This,sink) (This)->lpVtbl->Stream(This,sink) -#define ID2D1PathGeometry1_GetSegmentCount(This,count) (This)->lpVtbl->GetSegmentCount(This,count) -#define ID2D1PathGeometry1_GetFigureCount(This,count) (This)->lpVtbl->GetFigureCount(This,count) -/*** ID2D1PathGeometry1 methods ***/ -#define ID2D1PathGeometry1_ComputePointAndSegmentAtLength(This,length,start_segment,transform,tolerance,point_desc) (This)->lpVtbl->ComputePointAndSegmentAtLength(This,length,start_segment,transform,tolerance,point_desc) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_QueryInterface(ID2D1PathGeometry1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1PathGeometry1_AddRef(ID2D1PathGeometry1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1PathGeometry1_Release(ID2D1PathGeometry1* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1PathGeometry1_GetFactory(ID2D1PathGeometry1* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Geometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_GetBounds(ID2D1PathGeometry1* This,const D2D1_MATRIX_3X2_F *transform,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetBounds(This,transform,bounds); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_GetWidenedBounds(ID2D1PathGeometry1* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetWidenedBounds(This,stroke_width,stroke_style,transform,tolerance,bounds); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_StrokeContainsPoint(ID2D1PathGeometry1* This,D2D1_POINT_2F point,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->StrokeContainsPoint(This,point,stroke_width,stroke_style,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_FillContainsPoint(ID2D1PathGeometry1* This,D2D1_POINT_2F point,const D2D1_MATRIX_3X2_F *transform,float tolerance,WINBOOL *contains) { - return This->lpVtbl->FillContainsPoint(This,point,transform,tolerance,contains); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_CompareWithGeometry(ID2D1PathGeometry1* This,ID2D1Geometry *geometry,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_GEOMETRY_RELATION *relation) { - return This->lpVtbl->CompareWithGeometry(This,geometry,transform,tolerance,relation); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_Simplify(ID2D1PathGeometry1* This,D2D1_GEOMETRY_SIMPLIFICATION_OPTION option,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Simplify(This,option,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_Tessellate(ID2D1PathGeometry1* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1TessellationSink *sink) { - return This->lpVtbl->Tessellate(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_CombineWithGeometry(ID2D1PathGeometry1* This,ID2D1Geometry *geometry,D2D1_COMBINE_MODE combine_mode,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->CombineWithGeometry(This,geometry,combine_mode,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_Outline(ID2D1PathGeometry1* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Outline(This,transform,tolerance,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_ComputeArea(ID2D1PathGeometry1* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *area) { - return This->lpVtbl->ComputeArea(This,transform,tolerance,area); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_ComputeLength(ID2D1PathGeometry1* This,const D2D1_MATRIX_3X2_F *transform,float tolerance,float *length) { - return This->lpVtbl->ComputeLength(This,transform,tolerance,length); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_ComputePointAtLength(ID2D1PathGeometry1* This,float length,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_2F *point,D2D1_POINT_2F *tangent) { - return This->lpVtbl->ComputePointAtLength(This,length,transform,tolerance,point,tangent); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_Widen(ID2D1PathGeometry1* This,float stroke_width,ID2D1StrokeStyle *stroke_style,const D2D1_MATRIX_3X2_F *transform,float tolerance,ID2D1SimplifiedGeometrySink *sink) { - return This->lpVtbl->Widen(This,stroke_width,stroke_style,transform,tolerance,sink); -} -/*** ID2D1PathGeometry methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_Open(ID2D1PathGeometry1* This,ID2D1GeometrySink **sink) { - return This->lpVtbl->Open(This,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_Stream(ID2D1PathGeometry1* This,ID2D1GeometrySink *sink) { - return This->lpVtbl->Stream(This,sink); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_GetSegmentCount(ID2D1PathGeometry1* This,UINT32 *count) { - return This->lpVtbl->GetSegmentCount(This,count); -} -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_GetFigureCount(ID2D1PathGeometry1* This,UINT32 *count) { - return This->lpVtbl->GetFigureCount(This,count); -} -/*** ID2D1PathGeometry1 methods ***/ -static __WIDL_INLINE HRESULT ID2D1PathGeometry1_ComputePointAndSegmentAtLength(ID2D1PathGeometry1* This,float length,UINT32 start_segment,const D2D1_MATRIX_3X2_F *transform,float tolerance,D2D1_POINT_DESCRIPTION *point_desc) { - return This->lpVtbl->ComputePointAndSegmentAtLength(This,length,start_segment,transform,tolerance,point_desc); -} -#endif -#endif + +typedef interface ID2D1GdiMetafile ID2D1GdiMetafile; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1GdiMetafile, 0x2f543dc3,0xcfc1,0x4211,0x86,0x4f,0xcf,0xd9,0x1c,0x6f,0x33,0x95); +__CRT_UUID_DECL(ID2D1GdiMetafile, 0x2f543dc3,0xcfc1,0x4211,0x86,0x4f,0xcf,0xd9,0x1c,0x6f,0x33,0x95); -#endif /* __ID2D1PathGeometry1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Properties interface - */ -#ifndef __ID2D1Properties_INTERFACE_DEFINED__ -#define __ID2D1Properties_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Properties, 0x483473d7, 0xcd46, 0x4f9d, 0x9d,0x3a, 0x31,0x12,0xaa,0x80,0x15,0x9d); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("483473d7-cd46-4f9d-9d3a-3112aa80159d") -ID2D1Properties : public IUnknown +interface ID2D1StrokeStyle1 : public ID2D1StrokeStyle { - virtual UINT32 STDMETHODCALLTYPE GetPropertyCount( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetPropertyName( - UINT32 index, - WCHAR *name, - UINT32 name_count) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetPropertyNameLength( - UINT32 index) = 0; - - virtual D2D1_PROPERTY_TYPE STDMETHODCALLTYPE GetType( - UINT32 index) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetPropertyIndex( - const WCHAR *name) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetValueByName( - const WCHAR *name, - D2D1_PROPERTY_TYPE type, - const BYTE *value, - UINT32 value_size) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetValue( - UINT32 index, - D2D1_PROPERTY_TYPE type, - const BYTE *value, - UINT32 value_size) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetValueByName( - const WCHAR *name, - D2D1_PROPERTY_TYPE type, - BYTE *value, - UINT32 value_size) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetValue( - UINT32 index, - D2D1_PROPERTY_TYPE type, - BYTE *value, - UINT32 value_size) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetValueSize( - UINT32 index) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetSubProperties( - UINT32 index, - ID2D1Properties **props) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Properties, 0x483473d7, 0xcd46, 0x4f9d, 0x9d,0x3a, 0x31,0x12,0xaa,0x80,0x15,0x9d) -#endif -#else -typedef struct ID2D1PropertiesVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Properties *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Properties *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Properties *This); - - /*** ID2D1Properties methods ***/ - UINT32 (STDMETHODCALLTYPE *GetPropertyCount)( - ID2D1Properties *This); - - HRESULT (STDMETHODCALLTYPE *GetPropertyName)( - ID2D1Properties *This, - UINT32 index, - WCHAR *name, - UINT32 name_count); - - UINT32 (STDMETHODCALLTYPE *GetPropertyNameLength)( - ID2D1Properties *This, - UINT32 index); - - D2D1_PROPERTY_TYPE (STDMETHODCALLTYPE *GetType)( - ID2D1Properties *This, - UINT32 index); - - UINT32 (STDMETHODCALLTYPE *GetPropertyIndex)( - ID2D1Properties *This, - const WCHAR *name); - - HRESULT (STDMETHODCALLTYPE *SetValueByName)( - ID2D1Properties *This, - const WCHAR *name, - D2D1_PROPERTY_TYPE type, - const BYTE *value, - UINT32 value_size); - - HRESULT (STDMETHODCALLTYPE *SetValue)( - ID2D1Properties *This, - UINT32 index, - D2D1_PROPERTY_TYPE type, - const BYTE *value, - UINT32 value_size); - - HRESULT (STDMETHODCALLTYPE *GetValueByName)( - ID2D1Properties *This, - const WCHAR *name, - D2D1_PROPERTY_TYPE type, - BYTE *value, - UINT32 value_size); - - HRESULT (STDMETHODCALLTYPE *GetValue)( - ID2D1Properties *This, - UINT32 index, - D2D1_PROPERTY_TYPE type, - BYTE *value, - UINT32 value_size); - - UINT32 (STDMETHODCALLTYPE *GetValueSize)( - ID2D1Properties *This, - UINT32 index); - - HRESULT (STDMETHODCALLTYPE *GetSubProperties)( - ID2D1Properties *This, - UINT32 index, - ID2D1Properties **props); - - END_INTERFACE -} ID2D1PropertiesVtbl; - -interface ID2D1Properties { - CONST_VTBL ID2D1PropertiesVtbl* lpVtbl; + STDMETHOD_(D2D1_STROKE_TRANSFORM_TYPE, GetStrokeTransformType)() CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Properties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Properties_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Properties_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Properties methods ***/ -#define ID2D1Properties_GetPropertyCount(This) (This)->lpVtbl->GetPropertyCount(This) -#define ID2D1Properties_GetPropertyName(This,index,name,name_count) (This)->lpVtbl->GetPropertyName(This,index,name,name_count) -#define ID2D1Properties_GetPropertyNameLength(This,index) (This)->lpVtbl->GetPropertyNameLength(This,index) -#define ID2D1Properties_GetType(This,index) (This)->lpVtbl->GetType(This,index) -#define ID2D1Properties_GetPropertyIndex(This,name) (This)->lpVtbl->GetPropertyIndex(This,name) -#define ID2D1Properties_SetValueByName(This,name,type,value,value_size) (This)->lpVtbl->SetValueByName(This,name,type,value,value_size) -#define ID2D1Properties_SetValue(This,index,type,value,value_size) (This)->lpVtbl->SetValue(This,index,type,value,value_size) -#define ID2D1Properties_GetValueByName(This,name,type,value,value_size) (This)->lpVtbl->GetValueByName(This,name,type,value,value_size) -#define ID2D1Properties_GetValue(This,index,type,value,value_size) (This)->lpVtbl->GetValue(This,index,type,value,value_size) -#define ID2D1Properties_GetValueSize(This,index) (This)->lpVtbl->GetValueSize(This,index) -#define ID2D1Properties_GetSubProperties(This,index,props) (This)->lpVtbl->GetSubProperties(This,index,props) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Properties_QueryInterface(ID2D1Properties* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Properties_AddRef(ID2D1Properties* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Properties_Release(ID2D1Properties* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Properties methods ***/ -static __WIDL_INLINE UINT32 ID2D1Properties_GetPropertyCount(ID2D1Properties* This) { - return This->lpVtbl->GetPropertyCount(This); -} -static __WIDL_INLINE HRESULT ID2D1Properties_GetPropertyName(ID2D1Properties* This,UINT32 index,WCHAR *name,UINT32 name_count) { - return This->lpVtbl->GetPropertyName(This,index,name,name_count); -} -static __WIDL_INLINE UINT32 ID2D1Properties_GetPropertyNameLength(ID2D1Properties* This,UINT32 index) { - return This->lpVtbl->GetPropertyNameLength(This,index); -} -static __WIDL_INLINE D2D1_PROPERTY_TYPE ID2D1Properties_GetType(ID2D1Properties* This,UINT32 index) { - return This->lpVtbl->GetType(This,index); -} -static __WIDL_INLINE UINT32 ID2D1Properties_GetPropertyIndex(ID2D1Properties* This,const WCHAR *name) { - return This->lpVtbl->GetPropertyIndex(This,name); -} -static __WIDL_INLINE HRESULT ID2D1Properties_SetValueByName(ID2D1Properties* This,const WCHAR *name,D2D1_PROPERTY_TYPE type,const BYTE *value,UINT32 value_size) { - return This->lpVtbl->SetValueByName(This,name,type,value,value_size); -} -static __WIDL_INLINE HRESULT ID2D1Properties_SetValue(ID2D1Properties* This,UINT32 index,D2D1_PROPERTY_TYPE type,const BYTE *value,UINT32 value_size) { - return This->lpVtbl->SetValue(This,index,type,value,value_size); -} -static __WIDL_INLINE HRESULT ID2D1Properties_GetValueByName(ID2D1Properties* This,const WCHAR *name,D2D1_PROPERTY_TYPE type,BYTE *value,UINT32 value_size) { - return This->lpVtbl->GetValueByName(This,name,type,value,value_size); -} -static __WIDL_INLINE HRESULT ID2D1Properties_GetValue(ID2D1Properties* This,UINT32 index,D2D1_PROPERTY_TYPE type,BYTE *value,UINT32 value_size) { - return This->lpVtbl->GetValue(This,index,type,value,value_size); -} -static __WIDL_INLINE UINT32 ID2D1Properties_GetValueSize(ID2D1Properties* This,UINT32 index) { - return This->lpVtbl->GetValueSize(This,index); -} -static __WIDL_INLINE HRESULT ID2D1Properties_GetSubProperties(ID2D1Properties* This,UINT32 index,ID2D1Properties **props) { - return This->lpVtbl->GetSubProperties(This,index,props); -} -#endif -#endif + +typedef interface ID2D1StrokeStyle1 ID2D1StrokeStyle1; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1StrokeStyle1, 0x10a72a66,0xe91c,0x43f4,0x99,0x3f,0xdd,0xf4,0xb8,0x2b,0x0b,0x4a); +__CRT_UUID_DECL(ID2D1StrokeStyle1, 0x10a72a66,0xe91c,0x43f4,0x99,0x3f,0xdd,0xf4,0xb8,0x2b,0x0b,0x4a); -#endif /* __ID2D1Properties_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Effect interface - */ -#ifndef __ID2D1Effect_INTERFACE_DEFINED__ -#define __ID2D1Effect_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Effect, 0x28211a43, 0x7d89, 0x476f, 0x81,0x81, 0x2d,0x61,0x59,0xb2,0x20,0xad); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("28211a43-7d89-476f-8181-2d6159b220ad") -ID2D1Effect : public ID2D1Properties +interface ID2D1CommandSink : public IUnknown { - virtual void STDMETHODCALLTYPE SetInput( - UINT32 index, - ID2D1Image *input, - WINBOOL invalidate) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetInputCount( - UINT32 count) = 0; - - virtual void STDMETHODCALLTYPE GetInput( - UINT32 index, - ID2D1Image **input) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetInputCount( - ) = 0; - - virtual void STDMETHODCALLTYPE GetOutput( - ID2D1Image **output) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Effect, 0x28211a43, 0x7d89, 0x476f, 0x81,0x81, 0x2d,0x61,0x59,0xb2,0x20,0xad) -#endif -#else -typedef struct ID2D1EffectVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Effect *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Effect *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Effect *This); - - /*** ID2D1Properties methods ***/ - UINT32 (STDMETHODCALLTYPE *GetPropertyCount)( - ID2D1Effect *This); - - HRESULT (STDMETHODCALLTYPE *GetPropertyName)( - ID2D1Effect *This, - UINT32 index, - WCHAR *name, - UINT32 name_count); - - UINT32 (STDMETHODCALLTYPE *GetPropertyNameLength)( - ID2D1Effect *This, - UINT32 index); - - D2D1_PROPERTY_TYPE (STDMETHODCALLTYPE *GetType)( - ID2D1Effect *This, - UINT32 index); - - UINT32 (STDMETHODCALLTYPE *GetPropertyIndex)( - ID2D1Effect *This, - const WCHAR *name); - - HRESULT (STDMETHODCALLTYPE *SetValueByName)( - ID2D1Effect *This, - const WCHAR *name, - D2D1_PROPERTY_TYPE type, - const BYTE *value, - UINT32 value_size); - - HRESULT (STDMETHODCALLTYPE *SetValue)( - ID2D1Effect *This, - UINT32 index, - D2D1_PROPERTY_TYPE type, - const BYTE *value, - UINT32 value_size); - - HRESULT (STDMETHODCALLTYPE *GetValueByName)( - ID2D1Effect *This, - const WCHAR *name, - D2D1_PROPERTY_TYPE type, - BYTE *value, - UINT32 value_size); - - HRESULT (STDMETHODCALLTYPE *GetValue)( - ID2D1Effect *This, - UINT32 index, - D2D1_PROPERTY_TYPE type, - BYTE *value, - UINT32 value_size); - - UINT32 (STDMETHODCALLTYPE *GetValueSize)( - ID2D1Effect *This, - UINT32 index); - - HRESULT (STDMETHODCALLTYPE *GetSubProperties)( - ID2D1Effect *This, - UINT32 index, - ID2D1Properties **props); - - /*** ID2D1Effect methods ***/ - void (STDMETHODCALLTYPE *SetInput)( - ID2D1Effect *This, - UINT32 index, - ID2D1Image *input, - WINBOOL invalidate); - - HRESULT (STDMETHODCALLTYPE *SetInputCount)( - ID2D1Effect *This, - UINT32 count); - - void (STDMETHODCALLTYPE *GetInput)( - ID2D1Effect *This, - UINT32 index, - ID2D1Image **input); - - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1Effect *This); - - void (STDMETHODCALLTYPE *GetOutput)( - ID2D1Effect *This, - ID2D1Image **output); - - END_INTERFACE -} ID2D1EffectVtbl; - -interface ID2D1Effect { - CONST_VTBL ID2D1EffectVtbl* lpVtbl; + STDMETHOD(BeginDraw)() PURE; + STDMETHOD(EndDraw)() PURE; + STDMETHOD(SetAntialiasMode)(D2D1_ANTIALIAS_MODE antialiasMode) PURE; + STDMETHOD(SetTags)(D2D1_TAG tag1, D2D1_TAG tag2) PURE; + STDMETHOD(SetTextAntialiasMode)(D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode) PURE; + STDMETHOD(SetTextRenderingParams)(IDWriteRenderingParams *textRenderingParams) PURE; + STDMETHOD(SetTransform)(CONST D2D1_MATRIX_3X2_F *transform) PURE; + STDMETHOD(SetPrimitiveBlend)(D2D1_PRIMITIVE_BLEND primitiveBlend) PURE; + STDMETHOD(SetUnitMode)(D2D1_UNIT_MODE unitMode) PURE; + STDMETHOD(Clear)(CONST D2D1_COLOR_F *color) PURE; + STDMETHOD(DrawGlyphRun)(D2D1_POINT_2F baselineOrigin, CONST DWRITE_GLYPH_RUN *glyphRun, + CONST DWRITE_GLYPH_RUN_DESCRIPTION *glyphRunDescription, ID2D1Brush *foregroundBrush, + DWRITE_MEASURING_MODE measuringMode) PURE; + STDMETHOD(DrawLine)(D2D1_POINT_2F point0, D2D1_POINT_2F point1, ID2D1Brush *brush, FLOAT strokeWidth, + ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD(DrawGeometry)(ID2D1Geometry *geometry, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD(DrawRectangle)(CONST D2D1_RECT_F *rect, ID2D1Brush *brush, FLOAT strokeWidth, ID2D1StrokeStyle *strokeStyle) PURE; + STDMETHOD(DrawBitmap)(ID2D1Bitmap *bitmap, CONST D2D1_RECT_F *destinationRectangle, FLOAT opacity, + D2D1_INTERPOLATION_MODE interpolationMode, CONST D2D1_RECT_F *sourceRectangle, + CONST D2D1_MATRIX_4X4_F *perspectiveTransform) PURE; + STDMETHOD(DrawImage)(ID2D1Image *image, CONST D2D1_POINT_2F *targetOffset, CONST D2D1_RECT_F *imageRectangle, + D2D1_INTERPOLATION_MODE interpolationMode, D2D1_COMPOSITE_MODE compositeMode) PURE; + STDMETHOD(DrawGdiMetafile)(ID2D1GdiMetafile *gdiMetafile, CONST D2D1_POINT_2F *targetOffset) PURE; + STDMETHOD(FillMesh)(ID2D1Mesh *mesh, ID2D1Brush *brush) PURE; + STDMETHOD(FillOpacityMask)(ID2D1Bitmap *opacityMask, ID2D1Brush *brush, CONST D2D1_RECT_F *destinationRectangle, + CONST D2D1_RECT_F *sourceRectangle) PURE; + STDMETHOD(FillGeometry)(ID2D1Geometry *geometry, ID2D1Brush *brush, ID2D1Brush *opacityBrush) PURE; + STDMETHOD(FillRectangle)(CONST D2D1_RECT_F *rect, ID2D1Brush *brush) PURE; + STDMETHOD(PushAxisAlignedClip)(CONST D2D1_RECT_F *clipRect, D2D1_ANTIALIAS_MODE antialiasMode) PURE; + STDMETHOD(PushLayer)(CONST D2D1_LAYER_PARAMETERS1 *layerParameters1, ID2D1Layer *layer) PURE; + STDMETHOD(PopAxisAlignedClip)() PURE; + STDMETHOD(PopLayer)() PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Effect_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Effect_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Effect_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Properties methods ***/ -#define ID2D1Effect_GetPropertyCount(This) (This)->lpVtbl->GetPropertyCount(This) -#define ID2D1Effect_GetPropertyName(This,index,name,name_count) (This)->lpVtbl->GetPropertyName(This,index,name,name_count) -#define ID2D1Effect_GetPropertyNameLength(This,index) (This)->lpVtbl->GetPropertyNameLength(This,index) -#define ID2D1Effect_GetType(This,index) (This)->lpVtbl->GetType(This,index) -#define ID2D1Effect_GetPropertyIndex(This,name) (This)->lpVtbl->GetPropertyIndex(This,name) -#define ID2D1Effect_SetValueByName(This,name,type,value,value_size) (This)->lpVtbl->SetValueByName(This,name,type,value,value_size) -#define ID2D1Effect_SetValue(This,index,type,value,value_size) (This)->lpVtbl->SetValue(This,index,type,value,value_size) -#define ID2D1Effect_GetValueByName(This,name,type,value,value_size) (This)->lpVtbl->GetValueByName(This,name,type,value,value_size) -#define ID2D1Effect_GetValue(This,index,type,value,value_size) (This)->lpVtbl->GetValue(This,index,type,value,value_size) -#define ID2D1Effect_GetValueSize(This,index) (This)->lpVtbl->GetValueSize(This,index) -#define ID2D1Effect_GetSubProperties(This,index,props) (This)->lpVtbl->GetSubProperties(This,index,props) -/*** ID2D1Effect methods ***/ -#define ID2D1Effect_SetInput(This,index,input,invalidate) (This)->lpVtbl->SetInput(This,index,input,invalidate) -#define ID2D1Effect_SetInputCount(This,count) (This)->lpVtbl->SetInputCount(This,count) -#define ID2D1Effect_GetInput(This,index,input) (This)->lpVtbl->GetInput(This,index,input) -#define ID2D1Effect_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -#define ID2D1Effect_GetOutput(This,output) (This)->lpVtbl->GetOutput(This,output) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Effect_QueryInterface(ID2D1Effect* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Effect_AddRef(ID2D1Effect* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Effect_Release(ID2D1Effect* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Properties methods ***/ -static __WIDL_INLINE UINT32 ID2D1Effect_GetPropertyCount(ID2D1Effect* This) { - return This->lpVtbl->GetPropertyCount(This); -} -static __WIDL_INLINE HRESULT ID2D1Effect_GetPropertyName(ID2D1Effect* This,UINT32 index,WCHAR *name,UINT32 name_count) { - return This->lpVtbl->GetPropertyName(This,index,name,name_count); -} -static __WIDL_INLINE UINT32 ID2D1Effect_GetPropertyNameLength(ID2D1Effect* This,UINT32 index) { - return This->lpVtbl->GetPropertyNameLength(This,index); -} -static __WIDL_INLINE D2D1_PROPERTY_TYPE ID2D1Effect_GetType(ID2D1Effect* This,UINT32 index) { - return This->lpVtbl->GetType(This,index); -} -static __WIDL_INLINE UINT32 ID2D1Effect_GetPropertyIndex(ID2D1Effect* This,const WCHAR *name) { - return This->lpVtbl->GetPropertyIndex(This,name); -} -static __WIDL_INLINE HRESULT ID2D1Effect_SetValueByName(ID2D1Effect* This,const WCHAR *name,D2D1_PROPERTY_TYPE type,const BYTE *value,UINT32 value_size) { - return This->lpVtbl->SetValueByName(This,name,type,value,value_size); -} -static __WIDL_INLINE HRESULT ID2D1Effect_SetValue(ID2D1Effect* This,UINT32 index,D2D1_PROPERTY_TYPE type,const BYTE *value,UINT32 value_size) { - return This->lpVtbl->SetValue(This,index,type,value,value_size); -} -static __WIDL_INLINE HRESULT ID2D1Effect_GetValueByName(ID2D1Effect* This,const WCHAR *name,D2D1_PROPERTY_TYPE type,BYTE *value,UINT32 value_size) { - return This->lpVtbl->GetValueByName(This,name,type,value,value_size); -} -static __WIDL_INLINE HRESULT ID2D1Effect_GetValue(ID2D1Effect* This,UINT32 index,D2D1_PROPERTY_TYPE type,BYTE *value,UINT32 value_size) { - return This->lpVtbl->GetValue(This,index,type,value,value_size); -} -static __WIDL_INLINE UINT32 ID2D1Effect_GetValueSize(ID2D1Effect* This,UINT32 index) { - return This->lpVtbl->GetValueSize(This,index); -} -static __WIDL_INLINE HRESULT ID2D1Effect_GetSubProperties(ID2D1Effect* This,UINT32 index,ID2D1Properties **props) { - return This->lpVtbl->GetSubProperties(This,index,props); -} -/*** ID2D1Effect methods ***/ -static __WIDL_INLINE void ID2D1Effect_SetInput(ID2D1Effect* This,UINT32 index,ID2D1Image *input,WINBOOL invalidate) { - This->lpVtbl->SetInput(This,index,input,invalidate); -} -static __WIDL_INLINE HRESULT ID2D1Effect_SetInputCount(ID2D1Effect* This,UINT32 count) { - return This->lpVtbl->SetInputCount(This,count); -} -static __WIDL_INLINE void ID2D1Effect_GetInput(ID2D1Effect* This,UINT32 index,ID2D1Image **input) { - This->lpVtbl->GetInput(This,index,input); -} -static __WIDL_INLINE UINT32 ID2D1Effect_GetInputCount(ID2D1Effect* This) { - return This->lpVtbl->GetInputCount(This); -} -static __WIDL_INLINE void ID2D1Effect_GetOutput(ID2D1Effect* This,ID2D1Image **output) { - This->lpVtbl->GetOutput(This,output); -} -#endif -#endif + +typedef interface ID2D1CommandSink ID2D1CommandSink; #endif +DEFINE_GUID(IID_ID2D1CommandSink, 0x54d7898a,0xa061,0x40a7,0xbe,0xc7,0xe4,0x65,0xbc,0xba,0x2c,0x4f); +__CRT_UUID_DECL(ID2D1CommandSink, 0x54d7898a,0xa061,0x40a7,0xbe,0xc7,0xe4,0x65,0xbc,0xba,0x2c,0x4f); -#endif /* __ID2D1Effect_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1DrawingStateBlock1 interface - */ -#ifndef __ID2D1DrawingStateBlock1_INTERFACE_DEFINED__ -#define __ID2D1DrawingStateBlock1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1DrawingStateBlock1, 0x689f1f85, 0xc72e, 0x4e33, 0x8f,0x19, 0x85,0x75,0x4e,0xfd,0x5a,0xce); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("689f1f85-c72e-4e33-8f19-85754efd5ace") -ID2D1DrawingStateBlock1 : public ID2D1DrawingStateBlock +interface ID2D1CommandList : public ID2D1Image { - virtual void STDMETHODCALLTYPE GetDescription( - D2D1_DRAWING_STATE_DESCRIPTION1 *desc) = 0; - - virtual void STDMETHODCALLTYPE SetDescription( - const D2D1_DRAWING_STATE_DESCRIPTION1 *desc) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1DrawingStateBlock1, 0x689f1f85, 0xc72e, 0x4e33, 0x8f,0x19, 0x85,0x75,0x4e,0xfd,0x5a,0xce) -#endif -#else -typedef struct ID2D1DrawingStateBlock1Vtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1DrawingStateBlock1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1DrawingStateBlock1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1DrawingStateBlock1 *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1DrawingStateBlock1 *This, - ID2D1Factory **factory); - - /*** ID2D1DrawingStateBlock methods ***/ - void (STDMETHODCALLTYPE *GetDescription)( - ID2D1DrawingStateBlock1 *This, - D2D1_DRAWING_STATE_DESCRIPTION *desc); - - void (STDMETHODCALLTYPE *SetDescription)( - ID2D1DrawingStateBlock1 *This, - const D2D1_DRAWING_STATE_DESCRIPTION *desc); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1DrawingStateBlock1 *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1DrawingStateBlock1 *This, - IDWriteRenderingParams **text_rendering_params); - - /*** ID2D1DrawingStateBlock1 methods ***/ - void (STDMETHODCALLTYPE *ID2D1DrawingStateBlock1_GetDescription)( - ID2D1DrawingStateBlock1 *This, - D2D1_DRAWING_STATE_DESCRIPTION1 *desc); - - void (STDMETHODCALLTYPE *ID2D1DrawingStateBlock1_SetDescription)( - ID2D1DrawingStateBlock1 *This, - const D2D1_DRAWING_STATE_DESCRIPTION1 *desc); - - END_INTERFACE -} ID2D1DrawingStateBlock1Vtbl; - -interface ID2D1DrawingStateBlock1 { - CONST_VTBL ID2D1DrawingStateBlock1Vtbl* lpVtbl; + STDMETHOD(Stream)(ID2D1CommandSink *sink) PURE; + STDMETHOD(Close)() PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1DrawingStateBlock1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1DrawingStateBlock1_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1DrawingStateBlock1_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1DrawingStateBlock1_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1DrawingStateBlock methods ***/ -#define ID2D1DrawingStateBlock1_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1DrawingStateBlock1_GetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->GetTextRenderingParams(This,text_rendering_params) -/*** ID2D1DrawingStateBlock1 methods ***/ -#define ID2D1DrawingStateBlock1_GetDescription(This,desc) (This)->lpVtbl->ID2D1DrawingStateBlock1_GetDescription(This,desc) -#define ID2D1DrawingStateBlock1_SetDescription(This,desc) (This)->lpVtbl->ID2D1DrawingStateBlock1_SetDescription(This,desc) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawingStateBlock1_QueryInterface(ID2D1DrawingStateBlock1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1DrawingStateBlock1_AddRef(ID2D1DrawingStateBlock1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1DrawingStateBlock1_Release(ID2D1DrawingStateBlock1* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1DrawingStateBlock1_GetFactory(ID2D1DrawingStateBlock1* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1DrawingStateBlock methods ***/ -static __WIDL_INLINE void ID2D1DrawingStateBlock1_SetTextRenderingParams(ID2D1DrawingStateBlock1* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1DrawingStateBlock1_GetTextRenderingParams(ID2D1DrawingStateBlock1* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -/*** ID2D1DrawingStateBlock1 methods ***/ -static __WIDL_INLINE void ID2D1DrawingStateBlock1_GetDescription(ID2D1DrawingStateBlock1* This,D2D1_DRAWING_STATE_DESCRIPTION1 *desc) { - This->lpVtbl->ID2D1DrawingStateBlock1_GetDescription(This,desc); -} -static __WIDL_INLINE void ID2D1DrawingStateBlock1_SetDescription(ID2D1DrawingStateBlock1* This,const D2D1_DRAWING_STATE_DESCRIPTION1 *desc) { - This->lpVtbl->ID2D1DrawingStateBlock1_SetDescription(This,desc); -} -#endif -#endif + +typedef interface ID2D1CommandList ID2D1CommandList; #endif +DEFINE_GUID(IID_ID2D1CommandList, 0xb4f34a19,0x2383,0x4d76,0x94,0xf6,0xec,0x34,0x36,0x57,0xc3,0xdc); +__CRT_UUID_DECL(ID2D1CommandList, 0xb4f34a19,0x2383,0x4d76,0x94,0xf6,0xec,0x34,0x36,0x57,0xc3,0xdc); -#endif /* __ID2D1DrawingStateBlock1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1ColorContext interface - */ -#ifndef __ID2D1ColorContext_INTERFACE_DEFINED__ -#define __ID2D1ColorContext_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1ColorContext, 0x1c4820bb, 0x5771, 0x4518, 0xa5,0x81, 0x2f,0xe4,0xdd,0x0e,0xc6,0x57); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("1c4820bb-5771-4518-a581-2fe4dd0ec657") -ID2D1ColorContext : public ID2D1Resource +interface ID2D1PrintControl : public IUnknown { - virtual D2D1_COLOR_SPACE STDMETHODCALLTYPE GetColorSpace( - ) = 0; - - virtual UINT32 STDMETHODCALLTYPE GetProfileSize( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetProfile( - BYTE *profile, - UINT32 size) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1ColorContext, 0x1c4820bb, 0x5771, 0x4518, 0xa5,0x81, 0x2f,0xe4,0xdd,0x0e,0xc6,0x57) -#endif -#else -typedef struct ID2D1ColorContextVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1ColorContext *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1ColorContext *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1ColorContext *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1ColorContext *This, - ID2D1Factory **factory); - - /*** ID2D1ColorContext methods ***/ - D2D1_COLOR_SPACE (STDMETHODCALLTYPE *GetColorSpace)( - ID2D1ColorContext *This); - - UINT32 (STDMETHODCALLTYPE *GetProfileSize)( - ID2D1ColorContext *This); - - HRESULT (STDMETHODCALLTYPE *GetProfile)( - ID2D1ColorContext *This, - BYTE *profile, - UINT32 size); - - END_INTERFACE -} ID2D1ColorContextVtbl; - -interface ID2D1ColorContext { - CONST_VTBL ID2D1ColorContextVtbl* lpVtbl; + STDMETHOD(AddPage)(ID2D1CommandList *commandList, D2D_SIZE_F pageSize, IStream *pagePrintTicketStream, + D2D1_TAG *tag1 = NULL, D2D1_TAG *tag2 = NULL) PURE; + STDMETHOD(Close)() PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1ColorContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1ColorContext_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1ColorContext_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1ColorContext_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1ColorContext methods ***/ -#define ID2D1ColorContext_GetColorSpace(This) (This)->lpVtbl->GetColorSpace(This) -#define ID2D1ColorContext_GetProfileSize(This) (This)->lpVtbl->GetProfileSize(This) -#define ID2D1ColorContext_GetProfile(This,profile,size) (This)->lpVtbl->GetProfile(This,profile,size) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1ColorContext_QueryInterface(ID2D1ColorContext* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1ColorContext_AddRef(ID2D1ColorContext* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1ColorContext_Release(ID2D1ColorContext* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1ColorContext_GetFactory(ID2D1ColorContext* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1ColorContext methods ***/ -static __WIDL_INLINE D2D1_COLOR_SPACE ID2D1ColorContext_GetColorSpace(ID2D1ColorContext* This) { - return This->lpVtbl->GetColorSpace(This); -} -static __WIDL_INLINE UINT32 ID2D1ColorContext_GetProfileSize(ID2D1ColorContext* This) { - return This->lpVtbl->GetProfileSize(This); -} -static __WIDL_INLINE HRESULT ID2D1ColorContext_GetProfile(ID2D1ColorContext* This,BYTE *profile,UINT32 size) { - return This->lpVtbl->GetProfile(This,profile,size); -} -#endif -#endif + +typedef interface ID2D1PrintControl ID2D1PrintControl; #endif +DEFINE_GUID(IID_ID2D1PrintControl, 0x2c1d867d,0xc290,0x41c8,0xae,0x7e,0x34,0xa9,0x87,0x02,0xe9,0xa5); +__CRT_UUID_DECL(ID2D1PrintControl, 0x2c1d867d,0xc290,0x41c8,0xae,0x7e,0x34,0xa9,0x87,0x02,0xe9,0xa5); -#endif /* __ID2D1ColorContext_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Bitmap1 interface - */ -#ifndef __ID2D1Bitmap1_INTERFACE_DEFINED__ -#define __ID2D1Bitmap1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Bitmap1, 0xa898a84c, 0x3873, 0x4588, 0xb0,0x8b, 0xeb,0xbf,0x97,0x8d,0xf0,0x41); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("a898a84c-3873-4588-b08b-ebbf978df041") -ID2D1Bitmap1 : public ID2D1Bitmap +interface ID2D1Effect : public ID2D1Properties { - virtual void STDMETHODCALLTYPE GetColorContext( - ID2D1ColorContext **context) = 0; - - virtual D2D1_BITMAP_OPTIONS STDMETHODCALLTYPE GetOptions( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetSurface( - IDXGISurface **surface) = 0; - - virtual HRESULT STDMETHODCALLTYPE Map( - D2D1_MAP_OPTIONS options, - D2D1_MAPPED_RECT *mapped_rect) = 0; - - virtual HRESULT STDMETHODCALLTYPE Unmap( - ) = 0; + STDMETHOD_(void, SetInput)(UINT32 index, ID2D1Image *input, BOOL invalidate=TRUE) PURE; + STDMETHOD(SetInputCount)(UINT32 inputCount) PURE; + STDMETHOD_(void, GetInput)(UINT32 index, ID2D1Image **input) CONST PURE; + STDMETHOD_(UINT32, GetInputCount)() CONST PURE; + STDMETHOD_(void, GetOutput)(ID2D1Image **outputImage) CONST PURE; + void SetInputEffect(UINT32 index, ID2D1Effect *inputEffect, BOOL invalidate=TRUE) { + ID2D1Image *output = NULL; + if(inputEffect) + inputEffect->GetOutput(&output); + SetInput(index, output, invalidate); + if(output) + output->Release(); + } }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Bitmap1, 0xa898a84c, 0x3873, 0x4588, 0xb0,0x8b, 0xeb,0xbf,0x97,0x8d,0xf0,0x41) -#endif + #else + +typedef interface ID2D1Effect ID2D1Effect; +/* FIXME: Add full C declaration */ + +#endif + +DEFINE_GUID(IID_ID2D1Effect,0x28211a43,0x7d89,0x476f,0x81,0x81,0x2d,0x61,0x59,0xb2,0x20,0xad); +__CRT_UUID_DECL(ID2D1Effect,0x28211a43,0x7d89,0x476f,0x81,0x81,0x2d,0x61,0x59,0xb2,0x20,0xad); + +#endif + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Bitmap1 : public ID2D1Bitmap +{ + STDMETHOD_(void, GetColorContext)(ID2D1ColorContext **colorContext) CONST PURE; + STDMETHOD_(D2D1_BITMAP_OPTIONS, GetOptions)() CONST PURE; + STDMETHOD(GetSurface)(IDXGISurface **dxgiSurface) CONST PURE; + STDMETHOD(Map)(D2D1_MAP_OPTIONS options, D2D1_MAPPED_RECT *mappedRect) PURE; + STDMETHOD(Unmap)() PURE; +}; + +#else + +typedef interface ID2D1Bitmap1 ID2D1Bitmap1; + typedef struct ID2D1Bitmap1Vtbl { - BEGIN_INTERFACE + ID2D1BitmapVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Bitmap1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Bitmap1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Bitmap1 *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Bitmap1 *This, - ID2D1Factory **factory); - - /*** ID2D1Bitmap methods ***/ - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1Bitmap1 *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1Bitmap1 *This, - D2D1_SIZE_U *__ret); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1Bitmap1 *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1Bitmap1 *This, - float *dpi_x, - float *dpi_y); - - HRESULT (STDMETHODCALLTYPE *CopyFromBitmap)( - ID2D1Bitmap1 *This, - const D2D1_POINT_2U *dst_point, - ID2D1Bitmap *bitmap, - const D2D1_RECT_U *src_rect); - - HRESULT (STDMETHODCALLTYPE *CopyFromRenderTarget)( - ID2D1Bitmap1 *This, - const D2D1_POINT_2U *dst_point, - ID2D1RenderTarget *render_target, - const D2D1_RECT_U *src_rect); - - HRESULT (STDMETHODCALLTYPE *CopyFromMemory)( - ID2D1Bitmap1 *This, - const D2D1_RECT_U *dst_rect, - const void *src_data, - UINT32 pitch); - - /*** ID2D1Bitmap1 methods ***/ - void (STDMETHODCALLTYPE *GetColorContext)( - ID2D1Bitmap1 *This, - ID2D1ColorContext **context); - - D2D1_BITMAP_OPTIONS (STDMETHODCALLTYPE *GetOptions)( - ID2D1Bitmap1 *This); - - HRESULT (STDMETHODCALLTYPE *GetSurface)( - ID2D1Bitmap1 *This, - IDXGISurface **surface); - - HRESULT (STDMETHODCALLTYPE *Map)( - ID2D1Bitmap1 *This, - D2D1_MAP_OPTIONS options, - D2D1_MAPPED_RECT *mapped_rect); - - HRESULT (STDMETHODCALLTYPE *Unmap)( - ID2D1Bitmap1 *This); - - END_INTERFACE -} ID2D1Bitmap1Vtbl; + STDMETHOD_(void, GetColorContext)(ID2D1Bitmap1 *This, ID2D1ColorContext **colorContext) PURE; + STDMETHOD_(D2D1_BITMAP_OPTIONS, GetOptions)(ID2D1Bitmap1 *This) PURE; + STDMETHOD(GetSurface)(ID2D1Bitmap1 *This, IDXGISurface **dxgiSurface) PURE; + STDMETHOD(Map)(ID2D1Bitmap1 *This, D2D1_MAP_OPTIONS options, D2D1_MAPPED_RECT *mappedRect) PURE; + STDMETHOD(Unmap)(ID2D1Bitmap1 *This) PURE; +} +ID2D1Bitmap1Vtbl; interface ID2D1Bitmap1 { - CONST_VTBL ID2D1Bitmap1Vtbl* lpVtbl; + const ID2D1Bitmap1Vtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID2D1Bitmap1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID2D1Bitmap1_AddRef(This) (This)->lpVtbl->AddRef(This) @@ -1765,2077 +637,430 @@ interface ID2D1Bitmap1 { #define ID2D1Bitmap1_GetSurface(This,surface) (This)->lpVtbl->GetSurface(This,surface) #define ID2D1Bitmap1_Map(This,options,mapped_rect) (This)->lpVtbl->Map(This,options,mapped_rect) #define ID2D1Bitmap1_Unmap(This) (This)->lpVtbl->Unmap(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Bitmap1_QueryInterface(ID2D1Bitmap1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Bitmap1_AddRef(ID2D1Bitmap1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Bitmap1_Release(ID2D1Bitmap1* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Bitmap1_GetFactory(ID2D1Bitmap1* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Bitmap methods ***/ -static __WIDL_INLINE D2D1_SIZE_F ID2D1Bitmap1_GetSize(ID2D1Bitmap1* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1Bitmap1_GetPixelSize(ID2D1Bitmap1* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1Bitmap1_GetPixelFormat(ID2D1Bitmap1* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1Bitmap1_GetDpi(ID2D1Bitmap1* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap1_CopyFromBitmap(ID2D1Bitmap1* This,const D2D1_POINT_2U *dst_point,ID2D1Bitmap *bitmap,const D2D1_RECT_U *src_rect) { - return This->lpVtbl->CopyFromBitmap(This,dst_point,bitmap,src_rect); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap1_CopyFromRenderTarget(ID2D1Bitmap1* This,const D2D1_POINT_2U *dst_point,ID2D1RenderTarget *render_target,const D2D1_RECT_U *src_rect) { - return This->lpVtbl->CopyFromRenderTarget(This,dst_point,render_target,src_rect); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap1_CopyFromMemory(ID2D1Bitmap1* This,const D2D1_RECT_U *dst_rect,const void *src_data,UINT32 pitch) { - return This->lpVtbl->CopyFromMemory(This,dst_rect,src_data,pitch); -} -/*** ID2D1Bitmap1 methods ***/ -static __WIDL_INLINE void ID2D1Bitmap1_GetColorContext(ID2D1Bitmap1* This,ID2D1ColorContext **context) { - This->lpVtbl->GetColorContext(This,context); -} -static __WIDL_INLINE D2D1_BITMAP_OPTIONS ID2D1Bitmap1_GetOptions(ID2D1Bitmap1* This) { - return This->lpVtbl->GetOptions(This); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap1_GetSurface(ID2D1Bitmap1* This,IDXGISurface **surface) { - return This->lpVtbl->GetSurface(This,surface); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap1_Map(ID2D1Bitmap1* This,D2D1_MAP_OPTIONS options,D2D1_MAPPED_RECT *mapped_rect) { - return This->lpVtbl->Map(This,options,mapped_rect); -} -static __WIDL_INLINE HRESULT ID2D1Bitmap1_Unmap(ID2D1Bitmap1* This) { - return This->lpVtbl->Unmap(This); -} -#endif -#endif #endif +DEFINE_GUID(IID_ID2D1Bitmap1, 0xa898a84c,0x3873,0x4588,0xb0,0x8b,0xeb,0xbf,0x97,0x8d,0xf0,0x41); +__CRT_UUID_DECL(ID2D1Bitmap1, 0xa898a84c,0x3873,0x4588,0xb0,0x8b,0xeb,0xbf,0x97,0x8d,0xf0,0x41); -#endif /* __ID2D1Bitmap1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1BitmapBrush1 interface - */ -#ifndef __ID2D1BitmapBrush1_INTERFACE_DEFINED__ -#define __ID2D1BitmapBrush1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1BitmapBrush1, 0x41343a53, 0xe41a, 0x49a2, 0x91,0xcd, 0x21,0x79,0x3b,0xbb,0x62,0xe5); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("41343a53-e41a-49a2-91cd-21793bbb62e5") -ID2D1BitmapBrush1 : public ID2D1BitmapBrush +interface ID2D1ImageBrush : public ID2D1Brush { - virtual void STDMETHODCALLTYPE SetInterpolationMode1( - D2D1_INTERPOLATION_MODE mode) = 0; - - virtual D2D1_INTERPOLATION_MODE STDMETHODCALLTYPE GetInterpolationMode1( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1BitmapBrush1, 0x41343a53, 0xe41a, 0x49a2, 0x91,0xcd, 0x21,0x79,0x3b,0xbb,0x62,0xe5) -#endif -#else -typedef struct ID2D1BitmapBrush1Vtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1BitmapBrush1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1BitmapBrush1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1BitmapBrush1 *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1BitmapBrush1 *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1BitmapBrush1 *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1BitmapBrush1 *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1BitmapBrush1 *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1BitmapBrush1 *This, - D2D1_MATRIX_3X2_F *transform); - - /*** ID2D1BitmapBrush methods ***/ - void (STDMETHODCALLTYPE *SetExtendModeX)( - ID2D1BitmapBrush1 *This, - D2D1_EXTEND_MODE mode); - - void (STDMETHODCALLTYPE *SetExtendModeY)( - ID2D1BitmapBrush1 *This, - D2D1_EXTEND_MODE mode); - - void (STDMETHODCALLTYPE *SetInterpolationMode)( - ID2D1BitmapBrush1 *This, - D2D1_BITMAP_INTERPOLATION_MODE mode); - - void (STDMETHODCALLTYPE *SetBitmap)( - ID2D1BitmapBrush1 *This, - ID2D1Bitmap *bitmap); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeX)( - ID2D1BitmapBrush1 *This); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeY)( - ID2D1BitmapBrush1 *This); - - D2D1_BITMAP_INTERPOLATION_MODE (STDMETHODCALLTYPE *GetInterpolationMode)( - ID2D1BitmapBrush1 *This); - - void (STDMETHODCALLTYPE *GetBitmap)( - ID2D1BitmapBrush1 *This, - ID2D1Bitmap **bitmap); - - /*** ID2D1BitmapBrush1 methods ***/ - void (STDMETHODCALLTYPE *SetInterpolationMode1)( - ID2D1BitmapBrush1 *This, - D2D1_INTERPOLATION_MODE mode); - - D2D1_INTERPOLATION_MODE (STDMETHODCALLTYPE *GetInterpolationMode1)( - ID2D1BitmapBrush1 *This); - - END_INTERFACE -} ID2D1BitmapBrush1Vtbl; - -interface ID2D1BitmapBrush1 { - CONST_VTBL ID2D1BitmapBrush1Vtbl* lpVtbl; + STDMETHOD_(void, SetImage)(ID2D1Image *image) PURE; + STDMETHOD_(void, SetExtendModeX)(D2D1_EXTEND_MODE extendModeX) PURE; + STDMETHOD_(void, SetExtendModeY)(D2D1_EXTEND_MODE extendModeY) PURE; + STDMETHOD_(void, SetInterpolationMode)(D2D1_INTERPOLATION_MODE interpolationMode) PURE; + STDMETHOD_(void, SetSourceRectangle)(CONST D2D1_RECT_F *sourceRectangle) PURE; + STDMETHOD_(void, GetImage)(ID2D1Image **image) CONST PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeX)() CONST PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeY)() CONST PURE; + STDMETHOD_(D2D1_INTERPOLATION_MODE, GetInterpolationMode)() CONST PURE; + STDMETHOD_(void, GetSourceRectangle)(D2D1_RECT_F *sourceRectangle) CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1BitmapBrush1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1BitmapBrush1_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1BitmapBrush1_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1BitmapBrush1_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1BitmapBrush1_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1BitmapBrush1_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1BitmapBrush1_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1BitmapBrush1_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -/*** ID2D1BitmapBrush methods ***/ -#define ID2D1BitmapBrush1_SetExtendModeX(This,mode) (This)->lpVtbl->SetExtendModeX(This,mode) -#define ID2D1BitmapBrush1_SetExtendModeY(This,mode) (This)->lpVtbl->SetExtendModeY(This,mode) -#define ID2D1BitmapBrush1_SetInterpolationMode(This,mode) (This)->lpVtbl->SetInterpolationMode(This,mode) -#define ID2D1BitmapBrush1_SetBitmap(This,bitmap) (This)->lpVtbl->SetBitmap(This,bitmap) -#define ID2D1BitmapBrush1_GetExtendModeX(This) (This)->lpVtbl->GetExtendModeX(This) -#define ID2D1BitmapBrush1_GetExtendModeY(This) (This)->lpVtbl->GetExtendModeY(This) -#define ID2D1BitmapBrush1_GetInterpolationMode(This) (This)->lpVtbl->GetInterpolationMode(This) -#define ID2D1BitmapBrush1_GetBitmap(This,bitmap) (This)->lpVtbl->GetBitmap(This,bitmap) -/*** ID2D1BitmapBrush1 methods ***/ -#define ID2D1BitmapBrush1_SetInterpolationMode1(This,mode) (This)->lpVtbl->SetInterpolationMode1(This,mode) -#define ID2D1BitmapBrush1_GetInterpolationMode1(This) (This)->lpVtbl->GetInterpolationMode1(This) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1BitmapBrush1_QueryInterface(ID2D1BitmapBrush1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1BitmapBrush1_AddRef(ID2D1BitmapBrush1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1BitmapBrush1_Release(ID2D1BitmapBrush1* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush1_GetFactory(ID2D1BitmapBrush1* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush1_SetOpacity(ID2D1BitmapBrush1* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1BitmapBrush1_SetTransform(ID2D1BitmapBrush1* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1BitmapBrush1_GetOpacity(ID2D1BitmapBrush1* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1BitmapBrush1_GetTransform(ID2D1BitmapBrush1* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -/*** ID2D1BitmapBrush methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush1_SetExtendModeX(ID2D1BitmapBrush1* This,D2D1_EXTEND_MODE mode) { - This->lpVtbl->SetExtendModeX(This,mode); -} -static __WIDL_INLINE void ID2D1BitmapBrush1_SetExtendModeY(ID2D1BitmapBrush1* This,D2D1_EXTEND_MODE mode) { - This->lpVtbl->SetExtendModeY(This,mode); -} -static __WIDL_INLINE void ID2D1BitmapBrush1_SetInterpolationMode(ID2D1BitmapBrush1* This,D2D1_BITMAP_INTERPOLATION_MODE mode) { - This->lpVtbl->SetInterpolationMode(This,mode); -} -static __WIDL_INLINE void ID2D1BitmapBrush1_SetBitmap(ID2D1BitmapBrush1* This,ID2D1Bitmap *bitmap) { - This->lpVtbl->SetBitmap(This,bitmap); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1BitmapBrush1_GetExtendModeX(ID2D1BitmapBrush1* This) { - return This->lpVtbl->GetExtendModeX(This); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1BitmapBrush1_GetExtendModeY(ID2D1BitmapBrush1* This) { - return This->lpVtbl->GetExtendModeY(This); -} -static __WIDL_INLINE D2D1_BITMAP_INTERPOLATION_MODE ID2D1BitmapBrush1_GetInterpolationMode(ID2D1BitmapBrush1* This) { - return This->lpVtbl->GetInterpolationMode(This); -} -static __WIDL_INLINE void ID2D1BitmapBrush1_GetBitmap(ID2D1BitmapBrush1* This,ID2D1Bitmap **bitmap) { - This->lpVtbl->GetBitmap(This,bitmap); -} -/*** ID2D1BitmapBrush1 methods ***/ -static __WIDL_INLINE void ID2D1BitmapBrush1_SetInterpolationMode1(ID2D1BitmapBrush1* This,D2D1_INTERPOLATION_MODE mode) { - This->lpVtbl->SetInterpolationMode1(This,mode); -} -static __WIDL_INLINE D2D1_INTERPOLATION_MODE ID2D1BitmapBrush1_GetInterpolationMode1(ID2D1BitmapBrush1* This) { - return This->lpVtbl->GetInterpolationMode1(This); -} -#endif -#endif + +typedef interface ID2D1ImageBrush ID2D1ImageBrush; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1ImageBrush, 0xfe9e984d,0x3f95,0x407c,0xb5,0xdb,0xcb,0x94,0xd4,0xe8,0xf8,0x7c); +__CRT_UUID_DECL(ID2D1ImageBrush, 0xfe9e984d,0x3f95,0x407c,0xb5,0xdb,0xcb,0x94,0xd4,0xe8,0xf8,0x7c); -#endif /* __ID2D1BitmapBrush1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1GradientStopCollection1 interface - */ -#ifndef __ID2D1GradientStopCollection1_INTERFACE_DEFINED__ -#define __ID2D1GradientStopCollection1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1GradientStopCollection1, 0xae1572f4, 0x5dd0, 0x4777, 0x99,0x8b, 0x92,0x79,0x47,0x2a,0xe6,0x3b); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("ae1572f4-5dd0-4777-998b-9279472ae63b") -ID2D1GradientStopCollection1 : public ID2D1GradientStopCollection +interface ID2D1BitmapBrush1 : public ID2D1BitmapBrush { - virtual void STDMETHODCALLTYPE GetGradientStops1( - D2D1_GRADIENT_STOP *gradient, - UINT32 count) = 0; - - virtual D2D1_COLOR_SPACE STDMETHODCALLTYPE GetPreInterpolationSpace( - ) = 0; - - virtual D2D1_COLOR_SPACE STDMETHODCALLTYPE GetPostInterpolationSpace( - ) = 0; - - virtual D2D1_BUFFER_PRECISION STDMETHODCALLTYPE GetBufferPrecision( - ) = 0; - - virtual D2D1_COLOR_INTERPOLATION_MODE STDMETHODCALLTYPE GetColorInterpolationMode( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1GradientStopCollection1, 0xae1572f4, 0x5dd0, 0x4777, 0x99,0x8b, 0x92,0x79,0x47,0x2a,0xe6,0x3b) -#endif -#else -typedef struct ID2D1GradientStopCollection1Vtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1GradientStopCollection1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1GradientStopCollection1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1GradientStopCollection1 *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1GradientStopCollection1 *This, - ID2D1Factory **factory); - - /*** ID2D1GradientStopCollection methods ***/ - UINT32 (STDMETHODCALLTYPE *GetGradientStopCount)( - ID2D1GradientStopCollection1 *This); - - void (STDMETHODCALLTYPE *GetGradientStops)( - ID2D1GradientStopCollection1 *This, - D2D1_GRADIENT_STOP *stops, - UINT32 stop_count); - - D2D1_GAMMA (STDMETHODCALLTYPE *GetColorInterpolationGamma)( - ID2D1GradientStopCollection1 *This); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendMode)( - ID2D1GradientStopCollection1 *This); - - /*** ID2D1GradientStopCollection1 methods ***/ - void (STDMETHODCALLTYPE *GetGradientStops1)( - ID2D1GradientStopCollection1 *This, - D2D1_GRADIENT_STOP *gradient, - UINT32 count); - - D2D1_COLOR_SPACE (STDMETHODCALLTYPE *GetPreInterpolationSpace)( - ID2D1GradientStopCollection1 *This); - - D2D1_COLOR_SPACE (STDMETHODCALLTYPE *GetPostInterpolationSpace)( - ID2D1GradientStopCollection1 *This); - - D2D1_BUFFER_PRECISION (STDMETHODCALLTYPE *GetBufferPrecision)( - ID2D1GradientStopCollection1 *This); - - D2D1_COLOR_INTERPOLATION_MODE (STDMETHODCALLTYPE *GetColorInterpolationMode)( - ID2D1GradientStopCollection1 *This); - - END_INTERFACE -} ID2D1GradientStopCollection1Vtbl; - -interface ID2D1GradientStopCollection1 { - CONST_VTBL ID2D1GradientStopCollection1Vtbl* lpVtbl; + STDMETHOD_(void, SetInterpolationMode1)(D2D1_INTERPOLATION_MODE interpolationMode) PURE; + STDMETHOD_(D2D1_INTERPOLATION_MODE, GetInterpolationMode1)() CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1GradientStopCollection1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1GradientStopCollection1_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1GradientStopCollection1_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1GradientStopCollection1_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1GradientStopCollection methods ***/ -#define ID2D1GradientStopCollection1_GetGradientStopCount(This) (This)->lpVtbl->GetGradientStopCount(This) -#define ID2D1GradientStopCollection1_GetGradientStops(This,stops,stop_count) (This)->lpVtbl->GetGradientStops(This,stops,stop_count) -#define ID2D1GradientStopCollection1_GetColorInterpolationGamma(This) (This)->lpVtbl->GetColorInterpolationGamma(This) -#define ID2D1GradientStopCollection1_GetExtendMode(This) (This)->lpVtbl->GetExtendMode(This) -/*** ID2D1GradientStopCollection1 methods ***/ -#define ID2D1GradientStopCollection1_GetGradientStops1(This,gradient,count) (This)->lpVtbl->GetGradientStops1(This,gradient,count) -#define ID2D1GradientStopCollection1_GetPreInterpolationSpace(This) (This)->lpVtbl->GetPreInterpolationSpace(This) -#define ID2D1GradientStopCollection1_GetPostInterpolationSpace(This) (This)->lpVtbl->GetPostInterpolationSpace(This) -#define ID2D1GradientStopCollection1_GetBufferPrecision(This) (This)->lpVtbl->GetBufferPrecision(This) -#define ID2D1GradientStopCollection1_GetColorInterpolationMode(This) (This)->lpVtbl->GetColorInterpolationMode(This) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1GradientStopCollection1_QueryInterface(ID2D1GradientStopCollection1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1GradientStopCollection1_AddRef(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1GradientStopCollection1_Release(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1GradientStopCollection1_GetFactory(ID2D1GradientStopCollection1* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1GradientStopCollection methods ***/ -static __WIDL_INLINE UINT32 ID2D1GradientStopCollection1_GetGradientStopCount(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetGradientStopCount(This); -} -static __WIDL_INLINE void ID2D1GradientStopCollection1_GetGradientStops(ID2D1GradientStopCollection1* This,D2D1_GRADIENT_STOP *stops,UINT32 stop_count) { - This->lpVtbl->GetGradientStops(This,stops,stop_count); -} -static __WIDL_INLINE D2D1_GAMMA ID2D1GradientStopCollection1_GetColorInterpolationGamma(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetColorInterpolationGamma(This); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1GradientStopCollection1_GetExtendMode(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetExtendMode(This); -} -/*** ID2D1GradientStopCollection1 methods ***/ -static __WIDL_INLINE void ID2D1GradientStopCollection1_GetGradientStops1(ID2D1GradientStopCollection1* This,D2D1_GRADIENT_STOP *gradient,UINT32 count) { - This->lpVtbl->GetGradientStops1(This,gradient,count); -} -static __WIDL_INLINE D2D1_COLOR_SPACE ID2D1GradientStopCollection1_GetPreInterpolationSpace(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetPreInterpolationSpace(This); -} -static __WIDL_INLINE D2D1_COLOR_SPACE ID2D1GradientStopCollection1_GetPostInterpolationSpace(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetPostInterpolationSpace(This); -} -static __WIDL_INLINE D2D1_BUFFER_PRECISION ID2D1GradientStopCollection1_GetBufferPrecision(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetBufferPrecision(This); -} -static __WIDL_INLINE D2D1_COLOR_INTERPOLATION_MODE ID2D1GradientStopCollection1_GetColorInterpolationMode(ID2D1GradientStopCollection1* This) { - return This->lpVtbl->GetColorInterpolationMode(This); -} -#endif -#endif + +typedef interface ID2D1BitmapBrush1 ID2D1BitmapBrush1; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1BitmapBrush1, 0x41343a53,0xe41a,0x49a2,0x91,0xcd,0x21,0x79,0x3b,0xbb,0x62,0xe5); +__CRT_UUID_DECL(ID2D1BitmapBrush1, 0x41343a53,0xe41a,0x49a2,0x91,0xcd,0x21,0x79,0x3b,0xbb,0x62,0xe5); -#endif /* __ID2D1GradientStopCollection1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Device interface - */ -#ifndef __ID2D1Device_INTERFACE_DEFINED__ -#define __ID2D1Device_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Device, 0x47dd575d, 0xac05, 0x4cdd, 0x80,0x49, 0x9b,0x02,0xcd,0x16,0xf4,0x4c); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("47dd575d-ac05-4cdd-8049-9b02cd16f44c") -ID2D1Device : public ID2D1Resource +interface ID2D1GradientStopCollection1 : public ID2D1GradientStopCollection { - virtual HRESULT STDMETHODCALLTYPE CreateDeviceContext( - D2D1_DEVICE_CONTEXT_OPTIONS options, - ID2D1DeviceContext **context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreatePrintControl( - IWICImagingFactory *wic_factory, - IPrintDocumentPackageTarget *document_target, - const D2D1_PRINT_CONTROL_PROPERTIES *desc, - ID2D1PrintControl **print_control) = 0; - - virtual void STDMETHODCALLTYPE SetMaximumTextureMemory( - UINT64 max_texture_memory) = 0; - - virtual UINT64 STDMETHODCALLTYPE GetMaximumTextureMemory( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE ClearResources( - UINT msec_since_use = 0) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Device, 0x47dd575d, 0xac05, 0x4cdd, 0x80,0x49, 0x9b,0x02,0xcd,0x16,0xf4,0x4c) -#endif -#else -typedef struct ID2D1DeviceVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Device *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Device *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Device *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1Device *This, - ID2D1Factory **factory); - - /*** ID2D1Device methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateDeviceContext)( - ID2D1Device *This, - D2D1_DEVICE_CONTEXT_OPTIONS options, - ID2D1DeviceContext **context); - - HRESULT (STDMETHODCALLTYPE *CreatePrintControl)( - ID2D1Device *This, - IWICImagingFactory *wic_factory, - IPrintDocumentPackageTarget *document_target, - const D2D1_PRINT_CONTROL_PROPERTIES *desc, - ID2D1PrintControl **print_control); - - void (STDMETHODCALLTYPE *SetMaximumTextureMemory)( - ID2D1Device *This, - UINT64 max_texture_memory); - - UINT64 (STDMETHODCALLTYPE *GetMaximumTextureMemory)( - ID2D1Device *This); - - HRESULT (STDMETHODCALLTYPE *ClearResources)( - ID2D1Device *This, - UINT msec_since_use); - - END_INTERFACE -} ID2D1DeviceVtbl; - -interface ID2D1Device { - CONST_VTBL ID2D1DeviceVtbl* lpVtbl; + STDMETHOD_(void, GetGradientStops1)(D2D1_GRADIENT_STOP *gradientStops, UINT32 gradientStopsCount) CONST PURE; + STDMETHOD_(D2D1_COLOR_SPACE, GetPreInterpolationSpace)() CONST PURE; + STDMETHOD_(D2D1_COLOR_SPACE, GetPostInterpolationSpace)() CONST PURE; + STDMETHOD_(D2D1_BUFFER_PRECISION, GetBufferPrecision)() CONST PURE; + STDMETHOD_(D2D1_COLOR_INTERPOLATION_MODE, GetColorInterpolationMode)() CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Device_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Device_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1Device_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Device methods ***/ -#define ID2D1Device_CreateDeviceContext(This,options,context) (This)->lpVtbl->CreateDeviceContext(This,options,context) -#define ID2D1Device_CreatePrintControl(This,wic_factory,document_target,desc,print_control) (This)->lpVtbl->CreatePrintControl(This,wic_factory,document_target,desc,print_control) -#define ID2D1Device_SetMaximumTextureMemory(This,max_texture_memory) (This)->lpVtbl->SetMaximumTextureMemory(This,max_texture_memory) -#define ID2D1Device_GetMaximumTextureMemory(This) (This)->lpVtbl->GetMaximumTextureMemory(This) -#define ID2D1Device_ClearResources(This,msec_since_use) (This)->lpVtbl->ClearResources(This,msec_since_use) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Device_QueryInterface(ID2D1Device* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Device_AddRef(ID2D1Device* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Device_Release(ID2D1Device* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1Device_GetFactory(ID2D1Device* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Device methods ***/ -static __WIDL_INLINE HRESULT ID2D1Device_CreateDeviceContext(ID2D1Device* This,D2D1_DEVICE_CONTEXT_OPTIONS options,ID2D1DeviceContext **context) { - return This->lpVtbl->CreateDeviceContext(This,options,context); -} -static __WIDL_INLINE HRESULT ID2D1Device_CreatePrintControl(ID2D1Device* This,IWICImagingFactory *wic_factory,IPrintDocumentPackageTarget *document_target,const D2D1_PRINT_CONTROL_PROPERTIES *desc,ID2D1PrintControl **print_control) { - return This->lpVtbl->CreatePrintControl(This,wic_factory,document_target,desc,print_control); -} -static __WIDL_INLINE void ID2D1Device_SetMaximumTextureMemory(ID2D1Device* This,UINT64 max_texture_memory) { - This->lpVtbl->SetMaximumTextureMemory(This,max_texture_memory); -} -static __WIDL_INLINE UINT64 ID2D1Device_GetMaximumTextureMemory(ID2D1Device* This) { - return This->lpVtbl->GetMaximumTextureMemory(This); -} -static __WIDL_INLINE HRESULT ID2D1Device_ClearResources(ID2D1Device* This,UINT msec_since_use) { - return This->lpVtbl->ClearResources(This,msec_since_use); -} -#endif -#endif + +typedef interface ID2D1GradientStopCollection1 ID2D1GradientStopCollection1; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1GradientStopCollection1, 0xae1572f4,0x5dd0,0x4777,0x99,0x8b,0x92,0x79,0x47,0x2a,0xe6,0x3b); +__CRT_UUID_DECL(ID2D1GradientStopCollection1, 0xae1572f4,0x5dd0,0x4777,0x99,0x8b,0x92,0x79,0x47,0x2a,0xe6,0x3b); -#endif /* __ID2D1Device_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1CommandSink interface - */ -#ifndef __ID2D1CommandSink_INTERFACE_DEFINED__ -#define __ID2D1CommandSink_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1CommandSink, 0x54d7898a, 0xa061, 0x40a7, 0xbe,0xc7, 0xe4,0x65,0xbc,0xba,0x2c,0x4f); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("54d7898a-a061-40a7-bec7-e465bcba2c4f") -ID2D1CommandSink : public IUnknown +interface ID2D1ColorContext : public ID2D1Resource { - virtual HRESULT STDMETHODCALLTYPE BeginDraw( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE EndDraw( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetAntialiasMode( - D2D1_ANTIALIAS_MODE antialias_mode) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetTags( - D2D1_TAG tag1, - D2D1_TAG tag2) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetTextAntialiasMode( - D2D1_TEXT_ANTIALIAS_MODE antialias_mode) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetTextRenderingParams( - IDWriteRenderingParams *text_rendering_params) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetTransform( - const D2D1_MATRIX_3X2_F *transform) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetPrimitiveBlend( - D2D1_PRIMITIVE_BLEND primitive_blend) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetUnitMode( - D2D1_UNIT_MODE unit_mode) = 0; - - virtual HRESULT STDMETHODCALLTYPE Clear( - const D2D1_COLOR_F *color) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawGlyphRun( - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawLine( - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawGeometry( - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawRectangle( - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawBitmap( - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect, - const D2D1_MATRIX_4X4_F *perspective_transform) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawImage( - ID2D1Image *image, - const D2D1_POINT_2F *target_offset, - const D2D1_RECT_F *image_rect, - D2D1_INTERPOLATION_MODE interpolation_mode, - D2D1_COMPOSITE_MODE composite_mode) = 0; - - virtual HRESULT STDMETHODCALLTYPE DrawGdiMetafile( - ID2D1GdiMetafile *metafile, - const D2D1_POINT_2F *target_offset) = 0; - - virtual HRESULT STDMETHODCALLTYPE FillMesh( - ID2D1Mesh *mesh, - ID2D1Brush *brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE FillOpacityMask( - ID2D1Bitmap *bitmap, - ID2D1Brush *brush, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect) = 0; - - virtual HRESULT STDMETHODCALLTYPE FillGeometry( - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE FillRectangle( - const D2D1_RECT_F *rect, - ID2D1Brush *brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE PushAxisAlignedClip( - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode) = 0; - - virtual HRESULT STDMETHODCALLTYPE PushLayer( - const D2D1_LAYER_PARAMETERS1 *layer_parameters, - ID2D1Layer *layer) = 0; - - virtual HRESULT STDMETHODCALLTYPE PopAxisAlignedClip( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE PopLayer( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1CommandSink, 0x54d7898a, 0xa061, 0x40a7, 0xbe,0xc7, 0xe4,0x65,0xbc,0xba,0x2c,0x4f) -#endif -#else -typedef struct ID2D1CommandSinkVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1CommandSink *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1CommandSink *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1CommandSink *This); - - /*** ID2D1CommandSink methods ***/ - HRESULT (STDMETHODCALLTYPE *BeginDraw)( - ID2D1CommandSink *This); - - HRESULT (STDMETHODCALLTYPE *EndDraw)( - ID2D1CommandSink *This); - - HRESULT (STDMETHODCALLTYPE *SetAntialiasMode)( - ID2D1CommandSink *This, - D2D1_ANTIALIAS_MODE antialias_mode); - - HRESULT (STDMETHODCALLTYPE *SetTags)( - ID2D1CommandSink *This, - D2D1_TAG tag1, - D2D1_TAG tag2); - - HRESULT (STDMETHODCALLTYPE *SetTextAntialiasMode)( - ID2D1CommandSink *This, - D2D1_TEXT_ANTIALIAS_MODE antialias_mode); - - HRESULT (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1CommandSink *This, - IDWriteRenderingParams *text_rendering_params); - - HRESULT (STDMETHODCALLTYPE *SetTransform)( - ID2D1CommandSink *This, - const D2D1_MATRIX_3X2_F *transform); - - HRESULT (STDMETHODCALLTYPE *SetPrimitiveBlend)( - ID2D1CommandSink *This, - D2D1_PRIMITIVE_BLEND primitive_blend); - - HRESULT (STDMETHODCALLTYPE *SetUnitMode)( - ID2D1CommandSink *This, - D2D1_UNIT_MODE unit_mode); - - HRESULT (STDMETHODCALLTYPE *Clear)( - ID2D1CommandSink *This, - const D2D1_COLOR_F *color); - - HRESULT (STDMETHODCALLTYPE *DrawGlyphRun)( - ID2D1CommandSink *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - HRESULT (STDMETHODCALLTYPE *DrawLine)( - ID2D1CommandSink *This, - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - HRESULT (STDMETHODCALLTYPE *DrawGeometry)( - ID2D1CommandSink *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - HRESULT (STDMETHODCALLTYPE *DrawRectangle)( - ID2D1CommandSink *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - HRESULT (STDMETHODCALLTYPE *DrawBitmap)( - ID2D1CommandSink *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect, - const D2D1_MATRIX_4X4_F *perspective_transform); - - HRESULT (STDMETHODCALLTYPE *DrawImage)( - ID2D1CommandSink *This, - ID2D1Image *image, - const D2D1_POINT_2F *target_offset, - const D2D1_RECT_F *image_rect, - D2D1_INTERPOLATION_MODE interpolation_mode, - D2D1_COMPOSITE_MODE composite_mode); - - HRESULT (STDMETHODCALLTYPE *DrawGdiMetafile)( - ID2D1CommandSink *This, - ID2D1GdiMetafile *metafile, - const D2D1_POINT_2F *target_offset); - - HRESULT (STDMETHODCALLTYPE *FillMesh)( - ID2D1CommandSink *This, - ID2D1Mesh *mesh, - ID2D1Brush *brush); - - HRESULT (STDMETHODCALLTYPE *FillOpacityMask)( - ID2D1CommandSink *This, - ID2D1Bitmap *bitmap, - ID2D1Brush *brush, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - HRESULT (STDMETHODCALLTYPE *FillGeometry)( - ID2D1CommandSink *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush); - - HRESULT (STDMETHODCALLTYPE *FillRectangle)( - ID2D1CommandSink *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush); - - HRESULT (STDMETHODCALLTYPE *PushAxisAlignedClip)( - ID2D1CommandSink *This, - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode); - - HRESULT (STDMETHODCALLTYPE *PushLayer)( - ID2D1CommandSink *This, - const D2D1_LAYER_PARAMETERS1 *layer_parameters, - ID2D1Layer *layer); - - HRESULT (STDMETHODCALLTYPE *PopAxisAlignedClip)( - ID2D1CommandSink *This); - - HRESULT (STDMETHODCALLTYPE *PopLayer)( - ID2D1CommandSink *This); - - END_INTERFACE -} ID2D1CommandSinkVtbl; - -interface ID2D1CommandSink { - CONST_VTBL ID2D1CommandSinkVtbl* lpVtbl; + STDMETHOD_(D2D1_COLOR_SPACE, GetColorSpace)() CONST PURE; + STDMETHOD_(UINT32, GetProfileSize)() CONST PURE; + STDMETHOD(GetProfile)(BYTE *profile, UINT32 profileSize) CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1CommandSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1CommandSink_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1CommandSink_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1CommandSink methods ***/ -#define ID2D1CommandSink_BeginDraw(This) (This)->lpVtbl->BeginDraw(This) -#define ID2D1CommandSink_EndDraw(This) (This)->lpVtbl->EndDraw(This) -#define ID2D1CommandSink_SetAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetAntialiasMode(This,antialias_mode) -#define ID2D1CommandSink_SetTags(This,tag1,tag2) (This)->lpVtbl->SetTags(This,tag1,tag2) -#define ID2D1CommandSink_SetTextAntialiasMode(This,antialias_mode) (This)->lpVtbl->SetTextAntialiasMode(This,antialias_mode) -#define ID2D1CommandSink_SetTextRenderingParams(This,text_rendering_params) (This)->lpVtbl->SetTextRenderingParams(This,text_rendering_params) -#define ID2D1CommandSink_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1CommandSink_SetPrimitiveBlend(This,primitive_blend) (This)->lpVtbl->SetPrimitiveBlend(This,primitive_blend) -#define ID2D1CommandSink_SetUnitMode(This,unit_mode) (This)->lpVtbl->SetUnitMode(This,unit_mode) -#define ID2D1CommandSink_Clear(This,color) (This)->lpVtbl->Clear(This,color) -#define ID2D1CommandSink_DrawGlyphRun(This,baseline_origin,glyph_run,glyph_run_desc,brush,measuring_mode) (This)->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,glyph_run_desc,brush,measuring_mode) -#define ID2D1CommandSink_DrawLine(This,p0,p1,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style) -#define ID2D1CommandSink_DrawGeometry(This,geometry,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style) -#define ID2D1CommandSink_DrawRectangle(This,rect,brush,stroke_width,stroke_style) (This)->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style) -#define ID2D1CommandSink_DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect,perspective_transform) (This)->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect,perspective_transform) -#define ID2D1CommandSink_DrawImage(This,image,target_offset,image_rect,interpolation_mode,composite_mode) (This)->lpVtbl->DrawImage(This,image,target_offset,image_rect,interpolation_mode,composite_mode) -#define ID2D1CommandSink_DrawGdiMetafile(This,metafile,target_offset) (This)->lpVtbl->DrawGdiMetafile(This,metafile,target_offset) -#define ID2D1CommandSink_FillMesh(This,mesh,brush) (This)->lpVtbl->FillMesh(This,mesh,brush) -#define ID2D1CommandSink_FillOpacityMask(This,bitmap,brush,dst_rect,src_rect) (This)->lpVtbl->FillOpacityMask(This,bitmap,brush,dst_rect,src_rect) -#define ID2D1CommandSink_FillGeometry(This,geometry,brush,opacity_brush) (This)->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush) -#define ID2D1CommandSink_FillRectangle(This,rect,brush) (This)->lpVtbl->FillRectangle(This,rect,brush) -#define ID2D1CommandSink_PushAxisAlignedClip(This,clip_rect,antialias_mode) (This)->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode) -#define ID2D1CommandSink_PushLayer(This,layer_parameters,layer) (This)->lpVtbl->PushLayer(This,layer_parameters,layer) -#define ID2D1CommandSink_PopAxisAlignedClip(This) (This)->lpVtbl->PopAxisAlignedClip(This) -#define ID2D1CommandSink_PopLayer(This) (This)->lpVtbl->PopLayer(This) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1CommandSink_QueryInterface(ID2D1CommandSink* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1CommandSink_AddRef(ID2D1CommandSink* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1CommandSink_Release(ID2D1CommandSink* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1CommandSink methods ***/ -static __WIDL_INLINE HRESULT ID2D1CommandSink_BeginDraw(ID2D1CommandSink* This) { - return This->lpVtbl->BeginDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_EndDraw(ID2D1CommandSink* This) { - return This->lpVtbl->EndDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetAntialiasMode(ID2D1CommandSink* This,D2D1_ANTIALIAS_MODE antialias_mode) { - return This->lpVtbl->SetAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetTags(ID2D1CommandSink* This,D2D1_TAG tag1,D2D1_TAG tag2) { - return This->lpVtbl->SetTags(This,tag1,tag2); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetTextAntialiasMode(ID2D1CommandSink* This,D2D1_TEXT_ANTIALIAS_MODE antialias_mode) { - return This->lpVtbl->SetTextAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetTextRenderingParams(ID2D1CommandSink* This,IDWriteRenderingParams *text_rendering_params) { - return This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetTransform(ID2D1CommandSink* This,const D2D1_MATRIX_3X2_F *transform) { - return This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetPrimitiveBlend(ID2D1CommandSink* This,D2D1_PRIMITIVE_BLEND primitive_blend) { - return This->lpVtbl->SetPrimitiveBlend(This,primitive_blend); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_SetUnitMode(ID2D1CommandSink* This,D2D1_UNIT_MODE unit_mode) { - return This->lpVtbl->SetUnitMode(This,unit_mode); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_Clear(ID2D1CommandSink* This,const D2D1_COLOR_F *color) { - return This->lpVtbl->Clear(This,color); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawGlyphRun(ID2D1CommandSink* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc,ID2D1Brush *brush,DWRITE_MEASURING_MODE measuring_mode) { - return This->lpVtbl->DrawGlyphRun(This,baseline_origin,glyph_run,glyph_run_desc,brush,measuring_mode); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawLine(ID2D1CommandSink* This,D2D1_POINT_2F p0,D2D1_POINT_2F p1,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - return This->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawGeometry(ID2D1CommandSink* This,ID2D1Geometry *geometry,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - return This->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawRectangle(ID2D1CommandSink* This,const D2D1_RECT_F *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - return This->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawBitmap(ID2D1CommandSink* This,ID2D1Bitmap *bitmap,const D2D1_RECT_F *dst_rect,float opacity,D2D1_INTERPOLATION_MODE interpolation_mode,const D2D1_RECT_F *src_rect,const D2D1_MATRIX_4X4_F *perspective_transform) { - return This->lpVtbl->DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect,perspective_transform); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawImage(ID2D1CommandSink* This,ID2D1Image *image,const D2D1_POINT_2F *target_offset,const D2D1_RECT_F *image_rect,D2D1_INTERPOLATION_MODE interpolation_mode,D2D1_COMPOSITE_MODE composite_mode) { - return This->lpVtbl->DrawImage(This,image,target_offset,image_rect,interpolation_mode,composite_mode); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_DrawGdiMetafile(ID2D1CommandSink* This,ID2D1GdiMetafile *metafile,const D2D1_POINT_2F *target_offset) { - return This->lpVtbl->DrawGdiMetafile(This,metafile,target_offset); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_FillMesh(ID2D1CommandSink* This,ID2D1Mesh *mesh,ID2D1Brush *brush) { - return This->lpVtbl->FillMesh(This,mesh,brush); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_FillOpacityMask(ID2D1CommandSink* This,ID2D1Bitmap *bitmap,ID2D1Brush *brush,const D2D1_RECT_F *dst_rect,const D2D1_RECT_F *src_rect) { - return This->lpVtbl->FillOpacityMask(This,bitmap,brush,dst_rect,src_rect); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_FillGeometry(ID2D1CommandSink* This,ID2D1Geometry *geometry,ID2D1Brush *brush,ID2D1Brush *opacity_brush) { - return This->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_FillRectangle(ID2D1CommandSink* This,const D2D1_RECT_F *rect,ID2D1Brush *brush) { - return This->lpVtbl->FillRectangle(This,rect,brush); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_PushAxisAlignedClip(ID2D1CommandSink* This,const D2D1_RECT_F *clip_rect,D2D1_ANTIALIAS_MODE antialias_mode) { - return This->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_PushLayer(ID2D1CommandSink* This,const D2D1_LAYER_PARAMETERS1 *layer_parameters,ID2D1Layer *layer) { - return This->lpVtbl->PushLayer(This,layer_parameters,layer); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_PopAxisAlignedClip(ID2D1CommandSink* This) { - return This->lpVtbl->PopAxisAlignedClip(This); -} -static __WIDL_INLINE HRESULT ID2D1CommandSink_PopLayer(ID2D1CommandSink* This) { - return This->lpVtbl->PopLayer(This); -} -#endif -#endif + +typedef interface ID2D1ColorContext ID2D1ColorContext; #endif +DEFINE_GUID(IID_ID2D1ColorContext, 0x1c4820bb,0x5771,0x4518,0xa5,0x81,0x2f,0xe4,0xdd,0x0e,0xc6,0x57); +__CRT_UUID_DECL(ID2D1ColorContext, 0x1c4820bb,0x5771,0x4518,0xa5,0x81,0x2f,0xe4,0xdd,0x0e,0xc6,0x57); -#endif /* __ID2D1CommandSink_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1CommandList interface - */ -#ifndef __ID2D1CommandList_INTERFACE_DEFINED__ -#define __ID2D1CommandList_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1CommandList, 0xb4f34a19, 0x2383, 0x4d76, 0x94,0xf6, 0xec,0x34,0x36,0x57,0xc3,0xdc); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("b4f34a19-2383-4d76-94f6-ec343657c3dc") -ID2D1CommandList : public ID2D1Image +interface ID2D1DeviceContext : public ID2D1RenderTarget { - virtual HRESULT STDMETHODCALLTYPE Stream( - ID2D1CommandSink *sink) = 0; + STDMETHOD(CreateBitmap)(D2D1_SIZE_U size, CONST void *sourceData, UINT32 pitch, + CONST D2D1_BITMAP_PROPERTIES1 *bitmapProperties, ID2D1Bitmap1 **bitmap) PURE; + using ID2D1RenderTarget::CreateBitmap; - virtual HRESULT STDMETHODCALLTYPE Close( - ) = 0; + STDMETHOD(CreateBitmapFromWicBitmap)(IWICBitmapSource *wicBitmapSource, + CONST D2D1_BITMAP_PROPERTIES1 *bitmapProperties, ID2D1Bitmap1 **bitmap) PURE; + using ID2D1RenderTarget::CreateBitmapFromWicBitmap; -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1CommandList, 0xb4f34a19, 0x2383, 0x4d76, 0x94,0xf6, 0xec,0x34,0x36,0x57,0xc3,0xdc) -#endif -#else -typedef struct ID2D1CommandListVtbl { - BEGIN_INTERFACE + STDMETHOD(CreateColorContext)(D2D1_COLOR_SPACE space, CONST BYTE *profile, UINT32 profileSize, + ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateColorContextFromFilename)(PCWSTR filename, ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateColorContextFromWicColorContext)(IWICColorContext *wicColorContext, ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateBitmapFromDxgiSurface)(IDXGISurface *surface, CONST D2D1_BITMAP_PROPERTIES1 *bitmapProperties, + ID2D1Bitmap1 **bitmap) PURE; + STDMETHOD(CreateEffect)(REFCLSID effectId, ID2D1Effect **effect) PURE; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1CommandList *This, - REFIID riid, - void **ppvObject); + STDMETHOD(CreateGradientStopCollection)(CONST D2D1_GRADIENT_STOP *straightAlphaGradientStops, + UINT32 straightAlphaGradientStopsCount, D2D1_COLOR_SPACE preInterpolationSpace, + D2D1_COLOR_SPACE postInterpolationSpace, D2D1_BUFFER_PRECISION bufferPrecision, + D2D1_EXTEND_MODE extendMode, D2D1_COLOR_INTERPOLATION_MODE colorInterpolationMode, + ID2D1GradientStopCollection1 **gradientStopCollection1) PURE; + using ID2D1RenderTarget::CreateGradientStopCollection; - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1CommandList *This); + STDMETHOD(CreateImageBrush)(ID2D1Image *image, CONST D2D1_IMAGE_BRUSH_PROPERTIES *imageBrushProperties, + CONST D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1ImageBrush **imageBrush) PURE; - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1CommandList *This); + STDMETHOD(CreateBitmapBrush)(ID2D1Bitmap *bitmap, CONST D2D1_BITMAP_BRUSH_PROPERTIES1 *bitmapBrushProperties, + CONST D2D1_BRUSH_PROPERTIES *brushProperties, ID2D1BitmapBrush1 **bitmapBrush) PURE; + using ID2D1RenderTarget::CreateBitmapBrush; - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1CommandList *This, - ID2D1Factory **factory); + STDMETHOD(CreateCommandList)(ID2D1CommandList **commandList) PURE; + STDMETHOD_(BOOL, IsDxgiFormatSupported)(DXGI_FORMAT format) CONST PURE; + STDMETHOD_(BOOL, IsBufferPrecisionSupported)(D2D1_BUFFER_PRECISION bufferPrecision) CONST PURE; + STDMETHOD(GetImageLocalBounds)(ID2D1Image *image, D2D1_RECT_F *localBounds) CONST PURE; + STDMETHOD(GetImageWorldBounds)(ID2D1Image *image, D2D1_RECT_F *worldBounds) CONST PURE; + STDMETHOD(GetGlyphRunWorldBounds)(D2D1_POINT_2F baselineOrigin, CONST DWRITE_GLYPH_RUN *glyphRun, + DWRITE_MEASURING_MODE measuringMode, D2D1_RECT_F *bounds) CONST PURE; + STDMETHOD_(void, GetDevice)(ID2D1Device **device) CONST PURE; + STDMETHOD_(void, SetTarget)(ID2D1Image *image) PURE; + STDMETHOD_(void, GetTarget)(ID2D1Image **image) CONST PURE; + STDMETHOD_(void, SetRenderingControls)(CONST D2D1_RENDERING_CONTROLS *renderingControls) PURE; + STDMETHOD_(void, GetRenderingControls)(D2D1_RENDERING_CONTROLS *renderingControls) CONST PURE; + STDMETHOD_(void, SetPrimitiveBlend)(D2D1_PRIMITIVE_BLEND primitiveBlend) PURE; + STDMETHOD_(D2D1_PRIMITIVE_BLEND, GetPrimitiveBlend)() CONST PURE; + STDMETHOD_(void, SetUnitMode)(D2D1_UNIT_MODE unitMode) PURE; + STDMETHOD_(D2D1_UNIT_MODE, GetUnitMode)() CONST PURE; - /*** ID2D1CommandList methods ***/ - HRESULT (STDMETHODCALLTYPE *Stream)( - ID2D1CommandList *This, - ID2D1CommandSink *sink); + STDMETHOD_(void, DrawGlyphRun)(D2D1_POINT_2F baselineOrigin, CONST DWRITE_GLYPH_RUN *glyphRun, + CONST DWRITE_GLYPH_RUN_DESCRIPTION *glyphRunDescription, ID2D1Brush *foregroundBrush, + DWRITE_MEASURING_MODE measuringMode = DWRITE_MEASURING_MODE_NATURAL) PURE; + using ID2D1RenderTarget::DrawGlyphRun; - HRESULT (STDMETHODCALLTYPE *Close)( - ID2D1CommandList *This); + STDMETHOD_(void, DrawImage)(ID2D1Image *image, CONST D2D1_POINT_2F *targetOffset = NULL, + CONST D2D1_RECT_F *imageRectangle = NULL, D2D1_INTERPOLATION_MODE interpolationMode = D2D1_INTERPOLATION_MODE_LINEAR, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) PURE; + STDMETHOD_(void, DrawGdiMetafile)(ID2D1GdiMetafile *gdiMetafile, CONST D2D1_POINT_2F *targetOffset = NULL) PURE; - END_INTERFACE -} ID2D1CommandListVtbl; + STDMETHOD_(void, DrawBitmap)(ID2D1Bitmap *bitmap, CONST D2D1_RECT_F *destinationRectangle, FLOAT opacity, + D2D1_INTERPOLATION_MODE interpolationMode, CONST D2D1_RECT_F *sourceRectangle = NULL, + CONST D2D1_MATRIX_4X4_F *perspectiveTransform = NULL) PURE; + using ID2D1RenderTarget::DrawBitmap; -interface ID2D1CommandList { - CONST_VTBL ID2D1CommandListVtbl* lpVtbl; + STDMETHOD_(void, PushLayer)(CONST D2D1_LAYER_PARAMETERS1 *layerParameters, ID2D1Layer *layer) PURE; + using ID2D1RenderTarget::PushLayer; + + STDMETHOD(InvalidateEffectInputRectangle)(ID2D1Effect *effect, UINT32 input, CONST D2D1_RECT_F *inputRectangle) PURE; + STDMETHOD(GetEffectInvalidRectangleCount)(ID2D1Effect *effect, UINT32 *rectangleCount) PURE; + STDMETHOD(GetEffectInvalidRectangles)(ID2D1Effect *effect, D2D1_RECT_F *rectangles, UINT32 rectanglesCount) PURE; + STDMETHOD(GetEffectRequiredInputRectangles)(ID2D1Effect *renderEffect, CONST D2D1_RECT_F *renderImageRectangle, + CONST D2D1_EFFECT_INPUT_DESCRIPTION *inputDescriptions, D2D1_RECT_F *requiredInputRects, UINT32 inputCount) PURE; + + STDMETHOD_(void, FillOpacityMask)(ID2D1Bitmap *opacityMask, ID2D1Brush *brush, CONST D2D1_RECT_F *destinationRectangle = NULL, + CONST D2D1_RECT_F *sourceRectangle = NULL) PURE; + using ID2D1RenderTarget::FillOpacityMask; + + HRESULT CreateBitmap(D2D1_SIZE_U size, CONST void *sourceData, UINT32 pitch, CONST D2D1_BITMAP_PROPERTIES1 &bitmapProperties, + ID2D1Bitmap1 **bitmap) { + return CreateBitmap(size, sourceData, pitch, &bitmapProperties, bitmap); + } + + HRESULT CreateBitmapFromWicBitmap(IWICBitmapSource *wicBitmapSource, CONST D2D1_BITMAP_PROPERTIES1 &bitmapProperties, + ID2D1Bitmap1 **bitmap) { + return CreateBitmapFromWicBitmap(wicBitmapSource, &bitmapProperties, bitmap); + } + + HRESULT CreateBitmapFromWicBitmap(IWICBitmapSource *wicBitmapSource, ID2D1Bitmap1 **bitmap) { + return CreateBitmapFromWicBitmap(wicBitmapSource, NULL, bitmap); + } + + HRESULT CreateBitmapFromDxgiSurface(IDXGISurface *surface, CONST D2D1_BITMAP_PROPERTIES1 &bitmapProperties, + ID2D1Bitmap1 **bitmap) { + return CreateBitmapFromDxgiSurface(surface, &bitmapProperties, bitmap); + } + + HRESULT CreateImageBrush(ID2D1Image *image, CONST D2D1_IMAGE_BRUSH_PROPERTIES &imageBrushProperties, + CONST D2D1_BRUSH_PROPERTIES &brushProperties, ID2D1ImageBrush **imageBrush) { + return CreateImageBrush(image, &imageBrushProperties, &brushProperties, imageBrush); + } + + HRESULT CreateImageBrush(ID2D1Image *image, CONST D2D1_IMAGE_BRUSH_PROPERTIES &imageBrushProperties, + ID2D1ImageBrush **imageBrush) { + return CreateImageBrush(image,&imageBrushProperties, NULL, imageBrush); + } + + HRESULT CreateBitmapBrush(ID2D1Bitmap *bitmap, ID2D1BitmapBrush1 **bitmapBrush) { + return CreateBitmapBrush(bitmap, NULL, NULL, bitmapBrush); + } + + HRESULT CreateBitmapBrush(ID2D1Bitmap *bitmap, CONST D2D1_BITMAP_BRUSH_PROPERTIES1 &bitmapBrushProperties, + ID2D1BitmapBrush1 **bitmapBrush) { + return CreateBitmapBrush(bitmap, &bitmapBrushProperties, NULL, bitmapBrush); + } + + HRESULT CreateBitmapBrush(ID2D1Bitmap *bitmap, CONST D2D1_BITMAP_BRUSH_PROPERTIES1 &bitmapBrushProperties, + CONST D2D1_BRUSH_PROPERTIES &brushProperties, ID2D1BitmapBrush1 **bitmapBrush) { + return CreateBitmapBrush(bitmap, &bitmapBrushProperties, &brushProperties, bitmapBrush); + } + + void DrawImage(ID2D1Effect *effect, CONST D2D1_POINT_2F *targetOffset = NULL, CONST D2D1_RECT_F *imageRectangle = NULL, + D2D1_INTERPOLATION_MODE interpolationMode = D2D1_INTERPOLATION_MODE_LINEAR, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + ID2D1Image *output = NULL; + effect->GetOutput(&output); + DrawImage(output, targetOffset, imageRectangle, interpolationMode, compositeMode); + output->Release(); + } + + void DrawImage(ID2D1Image *image, D2D1_INTERPOLATION_MODE interpolationMode, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + DrawImage(image, NULL, NULL, interpolationMode, compositeMode); + } + + void DrawImage(ID2D1Effect *effect, D2D1_INTERPOLATION_MODE interpolationMode, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + DrawImage(effect, NULL, NULL, interpolationMode, compositeMode); + } + + void DrawImage(ID2D1Image *image, D2D1_POINT_2F targetOffset, + D2D1_INTERPOLATION_MODE interpolationMode = D2D1_INTERPOLATION_MODE_LINEAR, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + DrawImage(image, &targetOffset, NULL, interpolationMode, compositeMode); + } + + void DrawImage(ID2D1Effect *effect, D2D1_POINT_2F targetOffset, + D2D1_INTERPOLATION_MODE interpolationMode = D2D1_INTERPOLATION_MODE_LINEAR, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + DrawImage(effect, &targetOffset, NULL, interpolationMode, compositeMode); + } + + void DrawImage(ID2D1Image *image, D2D1_POINT_2F targetOffset, CONST D2D1_RECT_F &imageRectangle, + D2D1_INTERPOLATION_MODE interpolationMode = D2D1_INTERPOLATION_MODE_LINEAR, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + DrawImage(image, &targetOffset, &imageRectangle, interpolationMode, compositeMode); + } + + void DrawImage(ID2D1Effect *effect, D2D1_POINT_2F targetOffset, CONST D2D1_RECT_F &imageRectangle, + D2D1_INTERPOLATION_MODE interpolationMode = D2D1_INTERPOLATION_MODE_LINEAR, + D2D1_COMPOSITE_MODE compositeMode = D2D1_COMPOSITE_MODE_SOURCE_OVER) { + DrawImage(effect, &targetOffset, &imageRectangle, interpolationMode, compositeMode); + } + + void PushLayer(CONST D2D1_LAYER_PARAMETERS1 &layerParameters, ID2D1Layer *layer) { + PushLayer(&layerParameters, layer); + } + + void DrawGdiMetafile(ID2D1GdiMetafile *gdiMetafile, D2D1_POINT_2F targetOffset) { + DrawGdiMetafile(gdiMetafile, &targetOffset); + } + + void DrawBitmap(ID2D1Bitmap *bitmap, CONST D2D1_RECT_F &destinationRectangle, FLOAT opacity, + D2D1_INTERPOLATION_MODE interpolationMode, CONST D2D1_RECT_F *sourceRectangle = NULL, + CONST D2D1_MATRIX_4X4_F *perspectiveTransform = NULL) { + DrawBitmap(bitmap, &destinationRectangle, opacity, interpolationMode, sourceRectangle, perspectiveTransform); + } + + void DrawBitmap(ID2D1Bitmap *bitmap, CONST D2D1_RECT_F &destinationRectangle, FLOAT opacity, + D2D1_INTERPOLATION_MODE interpolationMode, CONST D2D1_RECT_F &sourceRectangle, + CONST D2D1_MATRIX_4X4_F *perspectiveTransform = NULL) { + DrawBitmap(bitmap, &destinationRectangle, opacity, interpolationMode, &sourceRectangle, perspectiveTransform); + } + + void DrawBitmap(ID2D1Bitmap *bitmap, CONST D2D1_RECT_F &destinationRectangle, FLOAT opacity, + D2D1_INTERPOLATION_MODE interpolationMode, CONST D2D1_RECT_F &sourceRectangle, + CONST D2D1_MATRIX_4X4_F &perspectiveTransform) { + DrawBitmap(bitmap, &destinationRectangle, opacity, interpolationMode, &sourceRectangle, &perspectiveTransform); + } + + void FillOpacityMask(ID2D1Bitmap *opacityMask, ID2D1Brush *brush, CONST D2D1_RECT_F &destinationRectangle, + CONST D2D1_RECT_F *sourceRectangle = NULL) { + FillOpacityMask(opacityMask, brush, &destinationRectangle, sourceRectangle); + } + + void FillOpacityMask(ID2D1Bitmap *opacityMask, ID2D1Brush *brush, CONST D2D1_RECT_F &destinationRectangle, + CONST D2D1_RECT_F &sourceRectangle) { + FillOpacityMask(opacityMask, brush, &destinationRectangle, &sourceRectangle); + } + + void SetRenderingControls(CONST D2D1_RENDERING_CONTROLS &renderingControls) { + return SetRenderingControls(&renderingControls); + } }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1CommandList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1CommandList_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1CommandList_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1CommandList_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1CommandList methods ***/ -#define ID2D1CommandList_Stream(This,sink) (This)->lpVtbl->Stream(This,sink) -#define ID2D1CommandList_Close(This) (This)->lpVtbl->Close(This) + #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1CommandList_QueryInterface(ID2D1CommandList* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1CommandList_AddRef(ID2D1CommandList* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1CommandList_Release(ID2D1CommandList* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1CommandList_GetFactory(ID2D1CommandList* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1CommandList methods ***/ -static __WIDL_INLINE HRESULT ID2D1CommandList_Stream(ID2D1CommandList* This,ID2D1CommandSink *sink) { - return This->lpVtbl->Stream(This,sink); -} -static __WIDL_INLINE HRESULT ID2D1CommandList_Close(ID2D1CommandList* This) { - return This->lpVtbl->Close(This); -} -#endif -#endif -#endif +typedef interface ID2D1DeviceContext ID2D1DeviceContext; - -#endif /* __ID2D1CommandList_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1PrintControl interface - */ -#ifndef __ID2D1PrintControl_INTERFACE_DEFINED__ -#define __ID2D1PrintControl_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1PrintControl, 0x2c1d867d, 0xc290, 0x41c8, 0xae,0x7e, 0x34,0xa9,0x87,0x02,0xe9,0xa5); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("2c1d867d-c290-41c8-ae7e-34a98702e9a5") -ID2D1PrintControl : public IUnknown -{ - virtual HRESULT STDMETHODCALLTYPE AddPage( - ID2D1CommandList *list, - D2D_SIZE_F size, - IStream *stream, - D2D1_TAG *tag1, - D2D1_TAG *tag2) = 0; - - virtual HRESULT STDMETHODCALLTYPE Close( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1PrintControl, 0x2c1d867d, 0xc290, 0x41c8, 0xae,0x7e, 0x34,0xa9,0x87,0x02,0xe9,0xa5) -#endif -#else -typedef struct ID2D1PrintControlVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1PrintControl *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1PrintControl *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1PrintControl *This); - - /*** ID2D1PrintControl methods ***/ - HRESULT (STDMETHODCALLTYPE *AddPage)( - ID2D1PrintControl *This, - ID2D1CommandList *list, - D2D_SIZE_F size, - IStream *stream, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - HRESULT (STDMETHODCALLTYPE *Close)( - ID2D1PrintControl *This); - - END_INTERFACE -} ID2D1PrintControlVtbl; - -interface ID2D1PrintControl { - CONST_VTBL ID2D1PrintControlVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1PrintControl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1PrintControl_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1PrintControl_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1PrintControl methods ***/ -#define ID2D1PrintControl_AddPage(This,list,size,stream,tag1,tag2) (This)->lpVtbl->AddPage(This,list,size,stream,tag1,tag2) -#define ID2D1PrintControl_Close(This) (This)->lpVtbl->Close(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1PrintControl_QueryInterface(ID2D1PrintControl* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1PrintControl_AddRef(ID2D1PrintControl* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1PrintControl_Release(ID2D1PrintControl* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1PrintControl methods ***/ -static __WIDL_INLINE HRESULT ID2D1PrintControl_AddPage(ID2D1PrintControl* This,ID2D1CommandList *list,D2D_SIZE_F size,IStream *stream,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->AddPage(This,list,size,stream,tag1,tag2); -} -static __WIDL_INLINE HRESULT ID2D1PrintControl_Close(ID2D1PrintControl* This) { - return This->lpVtbl->Close(This); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1PrintControl_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1ImageBrush interface - */ -#ifndef __ID2D1ImageBrush_INTERFACE_DEFINED__ -#define __ID2D1ImageBrush_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1ImageBrush, 0xfe9e984d, 0x3f95, 0x407c, 0xb5,0xdb, 0xcb,0x94,0xd4,0xe8,0xf8,0x7c); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("fe9e984d-3f95-407c-b5db-cb94d4e8f87c") -ID2D1ImageBrush : public ID2D1Brush -{ - virtual void STDMETHODCALLTYPE SetImage( - ID2D1Image *image) = 0; - - virtual void STDMETHODCALLTYPE SetExtendModeX( - D2D1_EXTEND_MODE extend_mode) = 0; - - virtual void STDMETHODCALLTYPE SetExtendModeY( - D2D1_EXTEND_MODE extend_mode) = 0; - - virtual void STDMETHODCALLTYPE SetInterpolationMode( - D2D1_INTERPOLATION_MODE interpolation_mode) = 0; - - virtual void STDMETHODCALLTYPE SetSourceRectangle( - const D2D1_RECT_F *rect) = 0; - - virtual void STDMETHODCALLTYPE GetImage( - ID2D1Image **image) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendModeX( - ) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendModeY( - ) = 0; - - virtual D2D1_INTERPOLATION_MODE STDMETHODCALLTYPE GetInterpolationMode( - ) = 0; - - virtual void STDMETHODCALLTYPE GetSourceRectangle( - D2D1_RECT_F *rect) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1ImageBrush, 0xfe9e984d, 0x3f95, 0x407c, 0xb5,0xdb, 0xcb,0x94,0xd4,0xe8,0xf8,0x7c) -#endif -#else -typedef struct ID2D1ImageBrushVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1ImageBrush *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1ImageBrush *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1ImageBrush *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1ImageBrush *This, - ID2D1Factory **factory); - - /*** ID2D1Brush methods ***/ - void (STDMETHODCALLTYPE *SetOpacity)( - ID2D1ImageBrush *This, - float opacity); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1ImageBrush *This, - const D2D1_MATRIX_3X2_F *transform); - - float (STDMETHODCALLTYPE *GetOpacity)( - ID2D1ImageBrush *This); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1ImageBrush *This, - D2D1_MATRIX_3X2_F *transform); - - /*** ID2D1ImageBrush methods ***/ - void (STDMETHODCALLTYPE *SetImage)( - ID2D1ImageBrush *This, - ID2D1Image *image); - - void (STDMETHODCALLTYPE *SetExtendModeX)( - ID2D1ImageBrush *This, - D2D1_EXTEND_MODE extend_mode); - - void (STDMETHODCALLTYPE *SetExtendModeY)( - ID2D1ImageBrush *This, - D2D1_EXTEND_MODE extend_mode); - - void (STDMETHODCALLTYPE *SetInterpolationMode)( - ID2D1ImageBrush *This, - D2D1_INTERPOLATION_MODE interpolation_mode); - - void (STDMETHODCALLTYPE *SetSourceRectangle)( - ID2D1ImageBrush *This, - const D2D1_RECT_F *rect); - - void (STDMETHODCALLTYPE *GetImage)( - ID2D1ImageBrush *This, - ID2D1Image **image); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeX)( - ID2D1ImageBrush *This); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeY)( - ID2D1ImageBrush *This); - - D2D1_INTERPOLATION_MODE (STDMETHODCALLTYPE *GetInterpolationMode)( - ID2D1ImageBrush *This); - - void (STDMETHODCALLTYPE *GetSourceRectangle)( - ID2D1ImageBrush *This, - D2D1_RECT_F *rect); - - END_INTERFACE -} ID2D1ImageBrushVtbl; - -interface ID2D1ImageBrush { - CONST_VTBL ID2D1ImageBrushVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1ImageBrush_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1ImageBrush_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1ImageBrush_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1ImageBrush_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1Brush methods ***/ -#define ID2D1ImageBrush_SetOpacity(This,opacity) (This)->lpVtbl->SetOpacity(This,opacity) -#define ID2D1ImageBrush_SetTransform(This,transform) (This)->lpVtbl->SetTransform(This,transform) -#define ID2D1ImageBrush_GetOpacity(This) (This)->lpVtbl->GetOpacity(This) -#define ID2D1ImageBrush_GetTransform(This,transform) (This)->lpVtbl->GetTransform(This,transform) -/*** ID2D1ImageBrush methods ***/ -#define ID2D1ImageBrush_SetImage(This,image) (This)->lpVtbl->SetImage(This,image) -#define ID2D1ImageBrush_SetExtendModeX(This,extend_mode) (This)->lpVtbl->SetExtendModeX(This,extend_mode) -#define ID2D1ImageBrush_SetExtendModeY(This,extend_mode) (This)->lpVtbl->SetExtendModeY(This,extend_mode) -#define ID2D1ImageBrush_SetInterpolationMode(This,interpolation_mode) (This)->lpVtbl->SetInterpolationMode(This,interpolation_mode) -#define ID2D1ImageBrush_SetSourceRectangle(This,rect) (This)->lpVtbl->SetSourceRectangle(This,rect) -#define ID2D1ImageBrush_GetImage(This,image) (This)->lpVtbl->GetImage(This,image) -#define ID2D1ImageBrush_GetExtendModeX(This) (This)->lpVtbl->GetExtendModeX(This) -#define ID2D1ImageBrush_GetExtendModeY(This) (This)->lpVtbl->GetExtendModeY(This) -#define ID2D1ImageBrush_GetInterpolationMode(This) (This)->lpVtbl->GetInterpolationMode(This) -#define ID2D1ImageBrush_GetSourceRectangle(This,rect) (This)->lpVtbl->GetSourceRectangle(This,rect) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1ImageBrush_QueryInterface(ID2D1ImageBrush* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1ImageBrush_AddRef(ID2D1ImageBrush* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1ImageBrush_Release(ID2D1ImageBrush* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1ImageBrush_GetFactory(ID2D1ImageBrush* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1Brush methods ***/ -static __WIDL_INLINE void ID2D1ImageBrush_SetOpacity(ID2D1ImageBrush* This,float opacity) { - This->lpVtbl->SetOpacity(This,opacity); -} -static __WIDL_INLINE void ID2D1ImageBrush_SetTransform(ID2D1ImageBrush* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE float ID2D1ImageBrush_GetOpacity(ID2D1ImageBrush* This) { - return This->lpVtbl->GetOpacity(This); -} -static __WIDL_INLINE void ID2D1ImageBrush_GetTransform(ID2D1ImageBrush* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -/*** ID2D1ImageBrush methods ***/ -static __WIDL_INLINE void ID2D1ImageBrush_SetImage(ID2D1ImageBrush* This,ID2D1Image *image) { - This->lpVtbl->SetImage(This,image); -} -static __WIDL_INLINE void ID2D1ImageBrush_SetExtendModeX(ID2D1ImageBrush* This,D2D1_EXTEND_MODE extend_mode) { - This->lpVtbl->SetExtendModeX(This,extend_mode); -} -static __WIDL_INLINE void ID2D1ImageBrush_SetExtendModeY(ID2D1ImageBrush* This,D2D1_EXTEND_MODE extend_mode) { - This->lpVtbl->SetExtendModeY(This,extend_mode); -} -static __WIDL_INLINE void ID2D1ImageBrush_SetInterpolationMode(ID2D1ImageBrush* This,D2D1_INTERPOLATION_MODE interpolation_mode) { - This->lpVtbl->SetInterpolationMode(This,interpolation_mode); -} -static __WIDL_INLINE void ID2D1ImageBrush_SetSourceRectangle(ID2D1ImageBrush* This,const D2D1_RECT_F *rect) { - This->lpVtbl->SetSourceRectangle(This,rect); -} -static __WIDL_INLINE void ID2D1ImageBrush_GetImage(ID2D1ImageBrush* This,ID2D1Image **image) { - This->lpVtbl->GetImage(This,image); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1ImageBrush_GetExtendModeX(ID2D1ImageBrush* This) { - return This->lpVtbl->GetExtendModeX(This); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1ImageBrush_GetExtendModeY(ID2D1ImageBrush* This) { - return This->lpVtbl->GetExtendModeY(This); -} -static __WIDL_INLINE D2D1_INTERPOLATION_MODE ID2D1ImageBrush_GetInterpolationMode(ID2D1ImageBrush* This) { - return This->lpVtbl->GetInterpolationMode(This); -} -static __WIDL_INLINE void ID2D1ImageBrush_GetSourceRectangle(ID2D1ImageBrush* This,D2D1_RECT_F *rect) { - This->lpVtbl->GetSourceRectangle(This,rect); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1ImageBrush_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1DeviceContext interface - */ -#ifndef __ID2D1DeviceContext_INTERFACE_DEFINED__ -#define __ID2D1DeviceContext_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1DeviceContext, 0xe8f7fe7a, 0x191c, 0x466d, 0xad,0x95, 0x97,0x56,0x78,0xbd,0xa9,0x98); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("e8f7fe7a-191c-466d-ad95-975678bda998") -ID2D1DeviceContext : public ID2D1RenderTarget -{ - virtual HRESULT STDMETHODCALLTYPE CreateBitmap( - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES1 *desc, - ID2D1Bitmap1 **bitmap) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBitmapFromWicBitmap( - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES1 *desc, - ID2D1Bitmap1 **bitmap) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateColorContext( - D2D1_COLOR_SPACE space, - const BYTE *profile, - UINT32 profile_size, - ID2D1ColorContext **color_context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateColorContextFromFilename( - const WCHAR *filename, - ID2D1ColorContext **color_context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateColorContextFromWicColorContext( - IWICColorContext *wic_color_context, - ID2D1ColorContext **color_context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBitmapFromDxgiSurface( - IDXGISurface *surface, - const D2D1_BITMAP_PROPERTIES1 *desc, - ID2D1Bitmap1 **bitmap) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateEffect( - REFCLSID effect_id, - ID2D1Effect **effect) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateGradientStopCollection( - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_COLOR_SPACE preinterpolation_space, - D2D1_COLOR_SPACE postinterpolation_space, - D2D1_BUFFER_PRECISION buffer_precision, - D2D1_EXTEND_MODE extend_mode, - D2D1_COLOR_INTERPOLATION_MODE color_interpolation_mode, - ID2D1GradientStopCollection1 **gradient) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateImageBrush( - ID2D1Image *image, - const D2D1_IMAGE_BRUSH_PROPERTIES *image_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1ImageBrush **brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBitmapBrush( - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES1 *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush1 **bitmap_brush) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateCommandList( - ID2D1CommandList **command_list) = 0; - - virtual WINBOOL STDMETHODCALLTYPE IsDxgiFormatSupported( - DXGI_FORMAT format) = 0; - - virtual WINBOOL STDMETHODCALLTYPE IsBufferPrecisionSupported( - D2D1_BUFFER_PRECISION buffer_precision) = 0; - - virtual void STDMETHODCALLTYPE GetImageLocalBounds( - ID2D1Image *image, - D2D1_RECT_F *local_bounds) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetImageWorldBounds( - ID2D1Image *image, - D2D1_RECT_F *world_bounds) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetGlyphRunWorldBounds( - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - DWRITE_MEASURING_MODE measuring_mode, - D2D1_RECT_F *bounds) = 0; - - virtual void STDMETHODCALLTYPE GetDevice( - ID2D1Device **device) = 0; - - virtual void STDMETHODCALLTYPE SetTarget( - ID2D1Image *target) = 0; - - virtual void STDMETHODCALLTYPE GetTarget( - ID2D1Image **target) = 0; - - virtual void STDMETHODCALLTYPE SetRenderingControls( - const D2D1_RENDERING_CONTROLS *rendering_controls) = 0; - - virtual void STDMETHODCALLTYPE GetRenderingControls( - D2D1_RENDERING_CONTROLS *rendering_controls) = 0; - - virtual void STDMETHODCALLTYPE SetPrimitiveBlend( - D2D1_PRIMITIVE_BLEND primitive_blend) = 0; - - virtual D2D1_PRIMITIVE_BLEND STDMETHODCALLTYPE GetPrimitiveBlend( - ) = 0; - - virtual void STDMETHODCALLTYPE SetUnitMode( - D2D1_UNIT_MODE unit_mode) = 0; - - virtual D2D1_UNIT_MODE STDMETHODCALLTYPE GetUnitMode( - ) = 0; - - virtual void STDMETHODCALLTYPE DrawGlyphRun( - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode) = 0; - - virtual void STDMETHODCALLTYPE DrawImage( - ID2D1Image *image, - const D2D1_POINT_2F *target_offset, - const D2D1_RECT_F *image_rect, - D2D1_INTERPOLATION_MODE interpolation_mode, - D2D1_COMPOSITE_MODE composite_mode) = 0; - - virtual void STDMETHODCALLTYPE DrawGdiMetafile( - ID2D1GdiMetafile *metafile, - const D2D1_POINT_2F *target_offset) = 0; - - virtual void STDMETHODCALLTYPE DrawBitmap( - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect, - const D2D1_MATRIX_4X4_F *perspective_transform) = 0; - - virtual void STDMETHODCALLTYPE PushLayer( - const D2D1_LAYER_PARAMETERS1 *layer_parameters, - ID2D1Layer *layer) = 0; - - virtual HRESULT STDMETHODCALLTYPE InvalidateEffectInputRectangle( - ID2D1Effect *effect, - UINT32 input, - const D2D1_RECT_F *input_rect) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetEffectInvalidRectangleCount( - ID2D1Effect *effect, - UINT32 *rect_count) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetEffectInvalidRectangles( - ID2D1Effect *effect, - D2D1_RECT_F *rectangles, - UINT32 rect_count) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetEffectRequiredInputRectangles( - ID2D1Effect *effect, - const D2D1_RECT_F *image_rect, - const D2D1_EFFECT_INPUT_DESCRIPTION *desc, - D2D1_RECT_F *input_rect, - UINT32 input_count) = 0; - - virtual void STDMETHODCALLTYPE FillOpacityMask( - ID2D1Bitmap *mask, - ID2D1Brush *brush, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1DeviceContext, 0xe8f7fe7a, 0x191c, 0x466d, 0xad,0x95, 0x97,0x56,0x78,0xbd,0xa9,0x98) -#endif -#else typedef struct ID2D1DeviceContextVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1DeviceContext *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1DeviceContext *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1DeviceContext *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1DeviceContext *This, - ID2D1Factory **factory); - - /*** ID2D1RenderTarget methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateBitmap)( - ID2D1DeviceContext *This, - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapFromWicBitmap)( - ID2D1DeviceContext *This, - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateSharedBitmap)( - ID2D1DeviceContext *This, - REFIID iid, - void *data, - const D2D1_BITMAP_PROPERTIES *desc, - ID2D1Bitmap **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapBrush)( - ID2D1DeviceContext *This, - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateSolidColorBrush)( - ID2D1DeviceContext *This, - const D2D1_COLOR_F *color, - const D2D1_BRUSH_PROPERTIES *desc, - ID2D1SolidColorBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateGradientStopCollection)( - ID2D1DeviceContext *This, - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_GAMMA gamma, - D2D1_EXTEND_MODE extend_mode, - ID2D1GradientStopCollection **gradient); - - HRESULT (STDMETHODCALLTYPE *CreateLinearGradientBrush)( - ID2D1DeviceContext *This, - const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1LinearGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateRadialGradientBrush)( - ID2D1DeviceContext *This, - const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1GradientStopCollection *gradient, - ID2D1RadialGradientBrush **brush); - - HRESULT (STDMETHODCALLTYPE *CreateCompatibleRenderTarget)( - ID2D1DeviceContext *This, - const D2D1_SIZE_F *size, - const D2D1_SIZE_U *pixel_size, - const D2D1_PIXEL_FORMAT *format, - D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options, - ID2D1BitmapRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateLayer)( - ID2D1DeviceContext *This, - const D2D1_SIZE_F *size, - ID2D1Layer **layer); - - HRESULT (STDMETHODCALLTYPE *CreateMesh)( - ID2D1DeviceContext *This, - ID2D1Mesh **mesh); - - void (STDMETHODCALLTYPE *DrawLine)( - ID2D1DeviceContext *This, - D2D1_POINT_2F p0, - D2D1_POINT_2F p1, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *DrawRectangle)( - ID2D1DeviceContext *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRectangle)( - ID2D1DeviceContext *This, - const D2D1_RECT_F *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawRoundedRectangle)( - ID2D1DeviceContext *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillRoundedRectangle)( - ID2D1DeviceContext *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawEllipse)( - ID2D1DeviceContext *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillEllipse)( - ID2D1DeviceContext *This, - const D2D1_ELLIPSE *ellipse, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *DrawGeometry)( - ID2D1DeviceContext *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - float stroke_width, - ID2D1StrokeStyle *stroke_style); - - void (STDMETHODCALLTYPE *FillGeometry)( - ID2D1DeviceContext *This, - ID2D1Geometry *geometry, - ID2D1Brush *brush, - ID2D1Brush *opacity_brush); - - void (STDMETHODCALLTYPE *FillMesh)( - ID2D1DeviceContext *This, - ID2D1Mesh *mesh, - ID2D1Brush *brush); - - void (STDMETHODCALLTYPE *FillOpacityMask)( - ID2D1DeviceContext *This, - ID2D1Bitmap *mask, - ID2D1Brush *brush, - D2D1_OPACITY_MASK_CONTENT content, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawBitmap)( - ID2D1DeviceContext *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect); - - void (STDMETHODCALLTYPE *DrawText)( - ID2D1DeviceContext *This, - const WCHAR *string, - UINT32 string_len, - IDWriteTextFormat *text_format, - const D2D1_RECT_F *layout_rect, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *DrawTextLayout)( - ID2D1DeviceContext *This, - D2D1_POINT_2F origin, - IDWriteTextLayout *layout, - ID2D1Brush *brush, - D2D1_DRAW_TEXT_OPTIONS options); - - void (STDMETHODCALLTYPE *DrawGlyphRun)( - ID2D1DeviceContext *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *SetTransform)( - ID2D1DeviceContext *This, - const D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *GetTransform)( - ID2D1DeviceContext *This, - D2D1_MATRIX_3X2_F *transform); - - void (STDMETHODCALLTYPE *SetAntialiasMode)( - ID2D1DeviceContext *This, - D2D1_ANTIALIAS_MODE antialias_mode); - - D2D1_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetAntialiasMode)( - ID2D1DeviceContext *This); - - void (STDMETHODCALLTYPE *SetTextAntialiasMode)( - ID2D1DeviceContext *This, - D2D1_TEXT_ANTIALIAS_MODE antialias_mode); - - D2D1_TEXT_ANTIALIAS_MODE (STDMETHODCALLTYPE *GetTextAntialiasMode)( - ID2D1DeviceContext *This); - - void (STDMETHODCALLTYPE *SetTextRenderingParams)( - ID2D1DeviceContext *This, - IDWriteRenderingParams *text_rendering_params); - - void (STDMETHODCALLTYPE *GetTextRenderingParams)( - ID2D1DeviceContext *This, - IDWriteRenderingParams **text_rendering_params); - - void (STDMETHODCALLTYPE *SetTags)( - ID2D1DeviceContext *This, - D2D1_TAG tag1, - D2D1_TAG tag2); - - void (STDMETHODCALLTYPE *GetTags)( - ID2D1DeviceContext *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *PushLayer)( - ID2D1DeviceContext *This, - const D2D1_LAYER_PARAMETERS *layer_parameters, - ID2D1Layer *layer); - - void (STDMETHODCALLTYPE *PopLayer)( - ID2D1DeviceContext *This); - - HRESULT (STDMETHODCALLTYPE *Flush)( - ID2D1DeviceContext *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - void (STDMETHODCALLTYPE *SaveDrawingState)( - ID2D1DeviceContext *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *RestoreDrawingState)( - ID2D1DeviceContext *This, - ID2D1DrawingStateBlock *state_block); - - void (STDMETHODCALLTYPE *PushAxisAlignedClip)( - ID2D1DeviceContext *This, - const D2D1_RECT_F *clip_rect, - D2D1_ANTIALIAS_MODE antialias_mode); - - void (STDMETHODCALLTYPE *PopAxisAlignedClip)( - ID2D1DeviceContext *This); - - void (STDMETHODCALLTYPE *Clear)( - ID2D1DeviceContext *This, - const D2D1_COLOR_F *color); - - void (STDMETHODCALLTYPE *BeginDraw)( - ID2D1DeviceContext *This); - - HRESULT (STDMETHODCALLTYPE *EndDraw)( - ID2D1DeviceContext *This, - D2D1_TAG *tag1, - D2D1_TAG *tag2); - - D2D1_PIXEL_FORMAT * (STDMETHODCALLTYPE *GetPixelFormat)( - ID2D1DeviceContext *This, - D2D1_PIXEL_FORMAT *__ret); - - void (STDMETHODCALLTYPE *SetDpi)( - ID2D1DeviceContext *This, - float dpi_x, - float dpi_y); - - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1DeviceContext *This, - float *dpi_x, - float *dpi_y); - - D2D1_SIZE_F * (STDMETHODCALLTYPE *GetSize)( - ID2D1DeviceContext *This, - D2D1_SIZE_F *__ret); - - D2D1_SIZE_U * (STDMETHODCALLTYPE *GetPixelSize)( - ID2D1DeviceContext *This, - D2D1_SIZE_U *__ret); - - UINT32 (STDMETHODCALLTYPE *GetMaximumBitmapSize)( - ID2D1DeviceContext *This); - - WINBOOL (STDMETHODCALLTYPE *IsSupported)( - ID2D1DeviceContext *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc); - - /*** ID2D1DeviceContext methods ***/ - HRESULT (STDMETHODCALLTYPE *ID2D1DeviceContext_CreateBitmap)( - ID2D1DeviceContext *This, - D2D1_SIZE_U size, - const void *src_data, - UINT32 pitch, - const D2D1_BITMAP_PROPERTIES1 *desc, - ID2D1Bitmap1 **bitmap); - - HRESULT (STDMETHODCALLTYPE *ID2D1DeviceContext_CreateBitmapFromWicBitmap)( - ID2D1DeviceContext *This, - IWICBitmapSource *bitmap_source, - const D2D1_BITMAP_PROPERTIES1 *desc, - ID2D1Bitmap1 **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateColorContext)( - ID2D1DeviceContext *This, - D2D1_COLOR_SPACE space, - const BYTE *profile, - UINT32 profile_size, - ID2D1ColorContext **color_context); - - HRESULT (STDMETHODCALLTYPE *CreateColorContextFromFilename)( - ID2D1DeviceContext *This, - const WCHAR *filename, - ID2D1ColorContext **color_context); - - HRESULT (STDMETHODCALLTYPE *CreateColorContextFromWicColorContext)( - ID2D1DeviceContext *This, - IWICColorContext *wic_color_context, - ID2D1ColorContext **color_context); - - HRESULT (STDMETHODCALLTYPE *CreateBitmapFromDxgiSurface)( - ID2D1DeviceContext *This, - IDXGISurface *surface, - const D2D1_BITMAP_PROPERTIES1 *desc, - ID2D1Bitmap1 **bitmap); - - HRESULT (STDMETHODCALLTYPE *CreateEffect)( - ID2D1DeviceContext *This, - REFCLSID effect_id, - ID2D1Effect **effect); - - HRESULT (STDMETHODCALLTYPE *ID2D1DeviceContext_CreateGradientStopCollection)( - ID2D1DeviceContext *This, - const D2D1_GRADIENT_STOP *stops, - UINT32 stop_count, - D2D1_COLOR_SPACE preinterpolation_space, - D2D1_COLOR_SPACE postinterpolation_space, - D2D1_BUFFER_PRECISION buffer_precision, - D2D1_EXTEND_MODE extend_mode, - D2D1_COLOR_INTERPOLATION_MODE color_interpolation_mode, - ID2D1GradientStopCollection1 **gradient); - - HRESULT (STDMETHODCALLTYPE *CreateImageBrush)( - ID2D1DeviceContext *This, - ID2D1Image *image, - const D2D1_IMAGE_BRUSH_PROPERTIES *image_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1ImageBrush **brush); - - HRESULT (STDMETHODCALLTYPE *ID2D1DeviceContext_CreateBitmapBrush)( - ID2D1DeviceContext *This, - ID2D1Bitmap *bitmap, - const D2D1_BITMAP_BRUSH_PROPERTIES1 *bitmap_brush_desc, - const D2D1_BRUSH_PROPERTIES *brush_desc, - ID2D1BitmapBrush1 **bitmap_brush); - - HRESULT (STDMETHODCALLTYPE *CreateCommandList)( - ID2D1DeviceContext *This, - ID2D1CommandList **command_list); - - WINBOOL (STDMETHODCALLTYPE *IsDxgiFormatSupported)( - ID2D1DeviceContext *This, - DXGI_FORMAT format); - - WINBOOL (STDMETHODCALLTYPE *IsBufferPrecisionSupported)( - ID2D1DeviceContext *This, - D2D1_BUFFER_PRECISION buffer_precision); - - void (STDMETHODCALLTYPE *GetImageLocalBounds)( - ID2D1DeviceContext *This, - ID2D1Image *image, - D2D1_RECT_F *local_bounds); - - HRESULT (STDMETHODCALLTYPE *GetImageWorldBounds)( - ID2D1DeviceContext *This, - ID2D1Image *image, - D2D1_RECT_F *world_bounds); - - HRESULT (STDMETHODCALLTYPE *GetGlyphRunWorldBounds)( - ID2D1DeviceContext *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - DWRITE_MEASURING_MODE measuring_mode, - D2D1_RECT_F *bounds); - - void (STDMETHODCALLTYPE *GetDevice)( - ID2D1DeviceContext *This, - ID2D1Device **device); - - void (STDMETHODCALLTYPE *SetTarget)( - ID2D1DeviceContext *This, - ID2D1Image *target); - - void (STDMETHODCALLTYPE *GetTarget)( - ID2D1DeviceContext *This, - ID2D1Image **target); - - void (STDMETHODCALLTYPE *SetRenderingControls)( - ID2D1DeviceContext *This, - const D2D1_RENDERING_CONTROLS *rendering_controls); - - void (STDMETHODCALLTYPE *GetRenderingControls)( - ID2D1DeviceContext *This, - D2D1_RENDERING_CONTROLS *rendering_controls); - - void (STDMETHODCALLTYPE *SetPrimitiveBlend)( - ID2D1DeviceContext *This, - D2D1_PRIMITIVE_BLEND primitive_blend); - - D2D1_PRIMITIVE_BLEND (STDMETHODCALLTYPE *GetPrimitiveBlend)( - ID2D1DeviceContext *This); - - void (STDMETHODCALLTYPE *SetUnitMode)( - ID2D1DeviceContext *This, - D2D1_UNIT_MODE unit_mode); - - D2D1_UNIT_MODE (STDMETHODCALLTYPE *GetUnitMode)( - ID2D1DeviceContext *This); - - void (STDMETHODCALLTYPE *ID2D1DeviceContext_DrawGlyphRun)( - ID2D1DeviceContext *This, - D2D1_POINT_2F baseline_origin, - const DWRITE_GLYPH_RUN *glyph_run, - const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc, - ID2D1Brush *brush, - DWRITE_MEASURING_MODE measuring_mode); - - void (STDMETHODCALLTYPE *DrawImage)( - ID2D1DeviceContext *This, - ID2D1Image *image, - const D2D1_POINT_2F *target_offset, - const D2D1_RECT_F *image_rect, - D2D1_INTERPOLATION_MODE interpolation_mode, - D2D1_COMPOSITE_MODE composite_mode); - - void (STDMETHODCALLTYPE *DrawGdiMetafile)( - ID2D1DeviceContext *This, - ID2D1GdiMetafile *metafile, - const D2D1_POINT_2F *target_offset); - - void (STDMETHODCALLTYPE *ID2D1DeviceContext_DrawBitmap)( - ID2D1DeviceContext *This, - ID2D1Bitmap *bitmap, - const D2D1_RECT_F *dst_rect, - float opacity, - D2D1_INTERPOLATION_MODE interpolation_mode, - const D2D1_RECT_F *src_rect, - const D2D1_MATRIX_4X4_F *perspective_transform); - - void (STDMETHODCALLTYPE *ID2D1DeviceContext_PushLayer)( - ID2D1DeviceContext *This, - const D2D1_LAYER_PARAMETERS1 *layer_parameters, - ID2D1Layer *layer); - - HRESULT (STDMETHODCALLTYPE *InvalidateEffectInputRectangle)( - ID2D1DeviceContext *This, - ID2D1Effect *effect, - UINT32 input, - const D2D1_RECT_F *input_rect); - - HRESULT (STDMETHODCALLTYPE *GetEffectInvalidRectangleCount)( - ID2D1DeviceContext *This, - ID2D1Effect *effect, - UINT32 *rect_count); - - HRESULT (STDMETHODCALLTYPE *GetEffectInvalidRectangles)( - ID2D1DeviceContext *This, - ID2D1Effect *effect, - D2D1_RECT_F *rectangles, - UINT32 rect_count); - - HRESULT (STDMETHODCALLTYPE *GetEffectRequiredInputRectangles)( - ID2D1DeviceContext *This, - ID2D1Effect *effect, - const D2D1_RECT_F *image_rect, - const D2D1_EFFECT_INPUT_DESCRIPTION *desc, - D2D1_RECT_F *input_rect, - UINT32 input_count); - - void (STDMETHODCALLTYPE *ID2D1DeviceContext_FillOpacityMask)( - ID2D1DeviceContext *This, - ID2D1Bitmap *mask, - ID2D1Brush *brush, - const D2D1_RECT_F *dst_rect, - const D2D1_RECT_F *src_rect); - - END_INTERFACE -} ID2D1DeviceContextVtbl; + struct ID2D1RenderTargetVtbl Base; + + STDMETHOD(CreateBitmap)(ID2D1DeviceContext *This, D2D1_SIZE_U size, + CONST void *sourceData, UINT32 pitch, + CONST D2D1_BITMAP_PROPERTIES1 *bitmapProperties, + ID2D1Bitmap1 **bitmap) PURE; + + STDMETHOD(CreateBitmapFromWicBitmap)(ID2D1DeviceContext *This, + IWICBitmapSource *wicBitmapSource, + CONST D2D1_BITMAP_PROPERTIES1 *bitmapProperties, + ID2D1Bitmap1 **bitmap) PURE; + + STDMETHOD(CreateColorContext)(ID2D1DeviceContext *This, + D2D1_COLOR_SPACE space, CONST BYTE *profile, UINT32 profileSize, + ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateColorContextFromFilename)(ID2D1DeviceContext *This, + PCWSTR filename, ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateColorContextFromWicColorContext)(ID2D1DeviceContext *This, + IWICColorContext *wicColorContext, + ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateBitmapFromDxgiSurface)(ID2D1DeviceContext *This, + IDXGISurface *surface, CONST D2D1_BITMAP_PROPERTIES1 *bitmapProperties, + ID2D1Bitmap1 **bitmap) PURE; + STDMETHOD(CreateEffect)(ID2D1DeviceContext *This, REFCLSID effectId, + ID2D1Effect **effect) PURE; + + STDMETHOD(CreateGradientStopCollection)(ID2D1DeviceContext *This, + CONST D2D1_GRADIENT_STOP *straightAlphaGradientStops, + UINT32 straightAlphaGradientStopsCount, + D2D1_COLOR_SPACE preInterpolationSpace, + D2D1_COLOR_SPACE postInterpolationSpace, + D2D1_BUFFER_PRECISION bufferPrecision, + D2D1_EXTEND_MODE extendMode, + D2D1_COLOR_INTERPOLATION_MODE colorInterpolationMode, + ID2D1GradientStopCollection1 **gradientStopCollection1) PURE; + + STDMETHOD(CreateImageBrush)(ID2D1DeviceContext *This, + struct ID2D1Image *image, + CONST D2D1_IMAGE_BRUSH_PROPERTIES *imageBrushProperties, + CONST D2D1_BRUSH_PROPERTIES *brushProperties, + ID2D1ImageBrush **imageBrush) PURE; + + STDMETHOD(CreateBitmapBrush)(ID2D1DeviceContext *This, ID2D1Bitmap *bitmap, + CONST D2D1_BITMAP_BRUSH_PROPERTIES1 *bitmapBrushProperties, + CONST D2D1_BRUSH_PROPERTIES *brushProperties, + ID2D1BitmapBrush1 **bitmapBrush) PURE; + + STDMETHOD(CreateCommandList)(ID2D1DeviceContext *This, + ID2D1CommandList **commandList) PURE; + STDMETHOD_(BOOL, IsDxgiFormatSupported)(ID2D1DeviceContext *This, + DXGI_FORMAT format) PURE; + STDMETHOD_(BOOL, IsBufferPrecisionSupported)(ID2D1DeviceContext *This, + D2D1_BUFFER_PRECISION bufferPrecision) PURE; + STDMETHOD(GetImageLocalBounds)(ID2D1DeviceContext *This, + struct ID2D1Image *image, D2D1_RECT_F *localBounds) PURE; + STDMETHOD(GetImageWorldBounds)(ID2D1DeviceContext *This, + struct ID2D1Image *image, D2D1_RECT_F *worldBounds) PURE; + STDMETHOD(GetGlyphRunWorldBounds)(ID2D1DeviceContext *This, + D2D1_POINT_2F baselineOrigin, CONST DWRITE_GLYPH_RUN *glyphRun, + DWRITE_MEASURING_MODE measuringMode, D2D1_RECT_F *bounds) PURE; + STDMETHOD_(void, GetDevice)(ID2D1DeviceContext *This, + ID2D1Device **device) PURE; + STDMETHOD_(void, SetTarget)(ID2D1DeviceContext *This, + struct ID2D1Image *image) PURE; + STDMETHOD_(void, GetTarget)(ID2D1DeviceContext *This, + struct ID2D1Image **image) PURE; + STDMETHOD_(void, SetRenderingControls)(ID2D1DeviceContext *This, + CONST D2D1_RENDERING_CONTROLS *renderingControls) PURE; + STDMETHOD_(void, GetRenderingControls)(ID2D1DeviceContext *This, + D2D1_RENDERING_CONTROLS *renderingControls) PURE; + STDMETHOD_(void, SetPrimitiveBlend)(ID2D1DeviceContext *This, + D2D1_PRIMITIVE_BLEND primitiveBlend) PURE; + STDMETHOD_(D2D1_PRIMITIVE_BLEND, GetPrimitiveBlend)(ID2D1DeviceContext *This) PURE; + STDMETHOD_(void, SetUnitMode)(ID2D1DeviceContext *This, + D2D1_UNIT_MODE unitMode) PURE; + STDMETHOD_(D2D1_UNIT_MODE, GetUnitMode)(ID2D1DeviceContext *This) PURE; + + STDMETHOD_(void, DrawGlyphRun)(ID2D1DeviceContext *This, + D2D1_POINT_2F baselineOrigin, CONST DWRITE_GLYPH_RUN *glyphRun, + CONST DWRITE_GLYPH_RUN_DESCRIPTION *glyphRunDescription, + ID2D1Brush *foregroundBrush, DWRITE_MEASURING_MODE measuringMode) PURE; + + STDMETHOD_(void, DrawImage)(ID2D1DeviceContext *This, + struct ID2D1Image *image, CONST D2D1_POINT_2F *targetOffset, + CONST D2D1_RECT_F *imageRectangle, + D2D1_INTERPOLATION_MODE interpolationMode, + D2D1_COMPOSITE_MODE compositeMode) PURE; + STDMETHOD_(void, DrawGdiMetafile)(ID2D1DeviceContext *This, + ID2D1GdiMetafile *gdiMetafile, CONST D2D1_POINT_2F *targetOffset) PURE; + + STDMETHOD_(void, DrawBitmap)(ID2D1DeviceContext *This, + ID2D1Bitmap *bitmap, CONST D2D1_RECT_F *destinationRectangle, + FLOAT opacity, D2D1_INTERPOLATION_MODE interpolationMode, + CONST D2D1_RECT_F *sourceRectangle, + CONST D2D1_MATRIX_4X4_F *perspectiveTransform) PURE; + + STDMETHOD_(void, PushLayer)(ID2D1DeviceContext *This, + CONST D2D1_LAYER_PARAMETERS1 *layerParameters, ID2D1Layer *layer) PURE; + + STDMETHOD(InvalidateEffectInputRectangle)(ID2D1DeviceContext *This, + ID2D1Effect *effect, UINT32 input, + CONST D2D1_RECT_F *inputRectangle) PURE; + STDMETHOD(GetEffectInvalidRectangleCount)(ID2D1DeviceContext *This, + ID2D1Effect *effect, UINT32 *rectangleCount) PURE; + STDMETHOD(GetEffectInvalidRectangles)(ID2D1DeviceContext *This, + ID2D1Effect *effect, D2D1_RECT_F *rectangles, + UINT32 rectanglesCount) PURE; + STDMETHOD(GetEffectRequiredInputRectangles)(ID2D1DeviceContext *This, + ID2D1Effect *renderEffect, CONST D2D1_RECT_F *renderImageRectangle, + CONST D2D1_EFFECT_INPUT_DESCRIPTION *inputDescriptions, + D2D1_RECT_F *requiredInputRects, UINT32 inputCount) PURE; + + STDMETHOD_(void, FillOpacityMask)(ID2D1DeviceContext *This, + ID2D1Bitmap *opacityMask, ID2D1Brush *brush, + CONST D2D1_RECT_F *destinationRectangle, + CONST D2D1_RECT_F *sourceRectangle) PURE; +} +ID2D1DeviceContextVtbl; interface ID2D1DeviceContext { - CONST_VTBL ID2D1DeviceContextVtbl* lpVtbl; + const ID2D1DeviceContextVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS /*** IUnknown methods ***/ #define ID2D1DeviceContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) #define ID2D1DeviceContext_AddRef(This) (This)->lpVtbl->AddRef(This) @@ -3924,879 +1149,269 @@ interface ID2D1DeviceContext { #define ID2D1DeviceContext_GetEffectInvalidRectangles(This,effect,rectangles,rect_count) (This)->lpVtbl->GetEffectInvalidRectangles(This,effect,rectangles,rect_count) #define ID2D1DeviceContext_GetEffectRequiredInputRectangles(This,effect,image_rect,desc,input_rect,input_count) (This)->lpVtbl->GetEffectRequiredInputRectangles(This,effect,image_rect,desc,input_rect,input_count) #define ID2D1DeviceContext_FillOpacityMask(This,mask,brush,dst_rect,src_rect) (This)->lpVtbl->ID2D1DeviceContext_FillOpacityMask(This,mask,brush,dst_rect,src_rect) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1DeviceContext_QueryInterface(ID2D1DeviceContext* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1DeviceContext_AddRef(ID2D1DeviceContext* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1DeviceContext_Release(ID2D1DeviceContext* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1DeviceContext_GetFactory(ID2D1DeviceContext* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1RenderTarget methods ***/ -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateSharedBitmap(ID2D1DeviceContext* This,REFIID iid,void *data,const D2D1_BITMAP_PROPERTIES *desc,ID2D1Bitmap **bitmap) { - return This->lpVtbl->CreateSharedBitmap(This,iid,data,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateSolidColorBrush(ID2D1DeviceContext* This,const D2D1_COLOR_F *color,const D2D1_BRUSH_PROPERTIES *desc,ID2D1SolidColorBrush **brush) { - return This->lpVtbl->CreateSolidColorBrush(This,color,desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateLinearGradientBrush(ID2D1DeviceContext* This,const D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1LinearGradientBrush **brush) { - return This->lpVtbl->CreateLinearGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateRadialGradientBrush(ID2D1DeviceContext* This,const D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES *gradient_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1GradientStopCollection *gradient,ID2D1RadialGradientBrush **brush) { - return This->lpVtbl->CreateRadialGradientBrush(This,gradient_brush_desc,brush_desc,gradient,brush); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateCompatibleRenderTarget(ID2D1DeviceContext* This,const D2D1_SIZE_F *size,const D2D1_SIZE_U *pixel_size,const D2D1_PIXEL_FORMAT *format,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options,ID2D1BitmapRenderTarget **render_target) { - return This->lpVtbl->CreateCompatibleRenderTarget(This,size,pixel_size,format,options,render_target); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateLayer(ID2D1DeviceContext* This,const D2D1_SIZE_F *size,ID2D1Layer **layer) { - return This->lpVtbl->CreateLayer(This,size,layer); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateMesh(ID2D1DeviceContext* This,ID2D1Mesh **mesh) { - return This->lpVtbl->CreateMesh(This,mesh); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawLine(ID2D1DeviceContext* This,D2D1_POINT_2F p0,D2D1_POINT_2F p1,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawLine(This,p0,p1,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawRectangle(ID2D1DeviceContext* This,const D2D1_RECT_F *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DeviceContext_FillRectangle(ID2D1DeviceContext* This,const D2D1_RECT_F *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawRoundedRectangle(ID2D1DeviceContext* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawRoundedRectangle(This,rect,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DeviceContext_FillRoundedRectangle(ID2D1DeviceContext* This,const D2D1_ROUNDED_RECT *rect,ID2D1Brush *brush) { - This->lpVtbl->FillRoundedRectangle(This,rect,brush); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawEllipse(ID2D1DeviceContext* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawEllipse(This,ellipse,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DeviceContext_FillEllipse(ID2D1DeviceContext* This,const D2D1_ELLIPSE *ellipse,ID2D1Brush *brush) { - This->lpVtbl->FillEllipse(This,ellipse,brush); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawGeometry(ID2D1DeviceContext* This,ID2D1Geometry *geometry,ID2D1Brush *brush,float stroke_width,ID2D1StrokeStyle *stroke_style) { - This->lpVtbl->DrawGeometry(This,geometry,brush,stroke_width,stroke_style); -} -static __WIDL_INLINE void ID2D1DeviceContext_FillGeometry(ID2D1DeviceContext* This,ID2D1Geometry *geometry,ID2D1Brush *brush,ID2D1Brush *opacity_brush) { - This->lpVtbl->FillGeometry(This,geometry,brush,opacity_brush); -} -static __WIDL_INLINE void ID2D1DeviceContext_FillMesh(ID2D1DeviceContext* This,ID2D1Mesh *mesh,ID2D1Brush *brush) { - This->lpVtbl->FillMesh(This,mesh,brush); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawText(ID2D1DeviceContext* This,const WCHAR *string,UINT32 string_len,IDWriteTextFormat *text_format,const D2D1_RECT_F *layout_rect,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->DrawText(This,string,string_len,text_format,layout_rect,brush,options,measuring_mode); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawTextLayout(ID2D1DeviceContext* This,D2D1_POINT_2F origin,IDWriteTextLayout *layout,ID2D1Brush *brush,D2D1_DRAW_TEXT_OPTIONS options) { - This->lpVtbl->DrawTextLayout(This,origin,layout,brush,options); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetTransform(ID2D1DeviceContext* This,const D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->SetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetTransform(ID2D1DeviceContext* This,D2D1_MATRIX_3X2_F *transform) { - This->lpVtbl->GetTransform(This,transform); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetAntialiasMode(ID2D1DeviceContext* This,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_ANTIALIAS_MODE ID2D1DeviceContext_GetAntialiasMode(ID2D1DeviceContext* This) { - return This->lpVtbl->GetAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetTextAntialiasMode(ID2D1DeviceContext* This,D2D1_TEXT_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->SetTextAntialiasMode(This,antialias_mode); -} -static __WIDL_INLINE D2D1_TEXT_ANTIALIAS_MODE ID2D1DeviceContext_GetTextAntialiasMode(ID2D1DeviceContext* This) { - return This->lpVtbl->GetTextAntialiasMode(This); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetTextRenderingParams(ID2D1DeviceContext* This,IDWriteRenderingParams *text_rendering_params) { - This->lpVtbl->SetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetTextRenderingParams(ID2D1DeviceContext* This,IDWriteRenderingParams **text_rendering_params) { - This->lpVtbl->GetTextRenderingParams(This,text_rendering_params); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetTags(ID2D1DeviceContext* This,D2D1_TAG tag1,D2D1_TAG tag2) { - This->lpVtbl->SetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetTags(ID2D1DeviceContext* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - This->lpVtbl->GetTags(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1DeviceContext_PopLayer(ID2D1DeviceContext* This) { - This->lpVtbl->PopLayer(This); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_Flush(ID2D1DeviceContext* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->Flush(This,tag1,tag2); -} -static __WIDL_INLINE void ID2D1DeviceContext_SaveDrawingState(ID2D1DeviceContext* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->SaveDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1DeviceContext_RestoreDrawingState(ID2D1DeviceContext* This,ID2D1DrawingStateBlock *state_block) { - This->lpVtbl->RestoreDrawingState(This,state_block); -} -static __WIDL_INLINE void ID2D1DeviceContext_PushAxisAlignedClip(ID2D1DeviceContext* This,const D2D1_RECT_F *clip_rect,D2D1_ANTIALIAS_MODE antialias_mode) { - This->lpVtbl->PushAxisAlignedClip(This,clip_rect,antialias_mode); -} -static __WIDL_INLINE void ID2D1DeviceContext_PopAxisAlignedClip(ID2D1DeviceContext* This) { - This->lpVtbl->PopAxisAlignedClip(This); -} -static __WIDL_INLINE void ID2D1DeviceContext_Clear(ID2D1DeviceContext* This,const D2D1_COLOR_F *color) { - This->lpVtbl->Clear(This,color); -} -static __WIDL_INLINE void ID2D1DeviceContext_BeginDraw(ID2D1DeviceContext* This) { - This->lpVtbl->BeginDraw(This); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_EndDraw(ID2D1DeviceContext* This,D2D1_TAG *tag1,D2D1_TAG *tag2) { - return This->lpVtbl->EndDraw(This,tag1,tag2); -} -static __WIDL_INLINE D2D1_PIXEL_FORMAT ID2D1DeviceContext_GetPixelFormat(ID2D1DeviceContext* This) { - D2D1_PIXEL_FORMAT __ret; - return *This->lpVtbl->GetPixelFormat(This,&__ret); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetDpi(ID2D1DeviceContext* This,float dpi_x,float dpi_y) { - This->lpVtbl->SetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetDpi(ID2D1DeviceContext* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE D2D1_SIZE_F ID2D1DeviceContext_GetSize(ID2D1DeviceContext* This) { - D2D1_SIZE_F __ret; - return *This->lpVtbl->GetSize(This,&__ret); -} -static __WIDL_INLINE D2D1_SIZE_U ID2D1DeviceContext_GetPixelSize(ID2D1DeviceContext* This) { - D2D1_SIZE_U __ret; - return *This->lpVtbl->GetPixelSize(This,&__ret); -} -static __WIDL_INLINE UINT32 ID2D1DeviceContext_GetMaximumBitmapSize(ID2D1DeviceContext* This) { - return This->lpVtbl->GetMaximumBitmapSize(This); -} -static __WIDL_INLINE WINBOOL ID2D1DeviceContext_IsSupported(ID2D1DeviceContext* This,const D2D1_RENDER_TARGET_PROPERTIES *desc) { - return This->lpVtbl->IsSupported(This,desc); -} -/*** ID2D1DeviceContext methods ***/ -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateBitmap(ID2D1DeviceContext* This,D2D1_SIZE_U size,const void *src_data,UINT32 pitch,const D2D1_BITMAP_PROPERTIES1 *desc,ID2D1Bitmap1 **bitmap) { - return This->lpVtbl->ID2D1DeviceContext_CreateBitmap(This,size,src_data,pitch,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateBitmapFromWicBitmap(ID2D1DeviceContext* This,IWICBitmapSource *bitmap_source,const D2D1_BITMAP_PROPERTIES1 *desc,ID2D1Bitmap1 **bitmap) { - return This->lpVtbl->ID2D1DeviceContext_CreateBitmapFromWicBitmap(This,bitmap_source,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateColorContext(ID2D1DeviceContext* This,D2D1_COLOR_SPACE space,const BYTE *profile,UINT32 profile_size,ID2D1ColorContext **color_context) { - return This->lpVtbl->CreateColorContext(This,space,profile,profile_size,color_context); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateColorContextFromFilename(ID2D1DeviceContext* This,const WCHAR *filename,ID2D1ColorContext **color_context) { - return This->lpVtbl->CreateColorContextFromFilename(This,filename,color_context); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateColorContextFromWicColorContext(ID2D1DeviceContext* This,IWICColorContext *wic_color_context,ID2D1ColorContext **color_context) { - return This->lpVtbl->CreateColorContextFromWicColorContext(This,wic_color_context,color_context); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateBitmapFromDxgiSurface(ID2D1DeviceContext* This,IDXGISurface *surface,const D2D1_BITMAP_PROPERTIES1 *desc,ID2D1Bitmap1 **bitmap) { - return This->lpVtbl->CreateBitmapFromDxgiSurface(This,surface,desc,bitmap); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateEffect(ID2D1DeviceContext* This,REFCLSID effect_id,ID2D1Effect **effect) { - return This->lpVtbl->CreateEffect(This,effect_id,effect); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateGradientStopCollection(ID2D1DeviceContext* This,const D2D1_GRADIENT_STOP *stops,UINT32 stop_count,D2D1_COLOR_SPACE preinterpolation_space,D2D1_COLOR_SPACE postinterpolation_space,D2D1_BUFFER_PRECISION buffer_precision,D2D1_EXTEND_MODE extend_mode,D2D1_COLOR_INTERPOLATION_MODE color_interpolation_mode,ID2D1GradientStopCollection1 **gradient) { - return This->lpVtbl->ID2D1DeviceContext_CreateGradientStopCollection(This,stops,stop_count,preinterpolation_space,postinterpolation_space,buffer_precision,extend_mode,color_interpolation_mode,gradient); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateImageBrush(ID2D1DeviceContext* This,ID2D1Image *image,const D2D1_IMAGE_BRUSH_PROPERTIES *image_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1ImageBrush **brush) { - return This->lpVtbl->CreateImageBrush(This,image,image_brush_desc,brush_desc,brush); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateBitmapBrush(ID2D1DeviceContext* This,ID2D1Bitmap *bitmap,const D2D1_BITMAP_BRUSH_PROPERTIES1 *bitmap_brush_desc,const D2D1_BRUSH_PROPERTIES *brush_desc,ID2D1BitmapBrush1 **bitmap_brush) { - return This->lpVtbl->ID2D1DeviceContext_CreateBitmapBrush(This,bitmap,bitmap_brush_desc,brush_desc,bitmap_brush); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_CreateCommandList(ID2D1DeviceContext* This,ID2D1CommandList **command_list) { - return This->lpVtbl->CreateCommandList(This,command_list); -} -static __WIDL_INLINE WINBOOL ID2D1DeviceContext_IsDxgiFormatSupported(ID2D1DeviceContext* This,DXGI_FORMAT format) { - return This->lpVtbl->IsDxgiFormatSupported(This,format); -} -static __WIDL_INLINE WINBOOL ID2D1DeviceContext_IsBufferPrecisionSupported(ID2D1DeviceContext* This,D2D1_BUFFER_PRECISION buffer_precision) { - return This->lpVtbl->IsBufferPrecisionSupported(This,buffer_precision); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetImageLocalBounds(ID2D1DeviceContext* This,ID2D1Image *image,D2D1_RECT_F *local_bounds) { - This->lpVtbl->GetImageLocalBounds(This,image,local_bounds); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_GetImageWorldBounds(ID2D1DeviceContext* This,ID2D1Image *image,D2D1_RECT_F *world_bounds) { - return This->lpVtbl->GetImageWorldBounds(This,image,world_bounds); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_GetGlyphRunWorldBounds(ID2D1DeviceContext* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,DWRITE_MEASURING_MODE measuring_mode,D2D1_RECT_F *bounds) { - return This->lpVtbl->GetGlyphRunWorldBounds(This,baseline_origin,glyph_run,measuring_mode,bounds); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetDevice(ID2D1DeviceContext* This,ID2D1Device **device) { - This->lpVtbl->GetDevice(This,device); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetTarget(ID2D1DeviceContext* This,ID2D1Image *target) { - This->lpVtbl->SetTarget(This,target); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetTarget(ID2D1DeviceContext* This,ID2D1Image **target) { - This->lpVtbl->GetTarget(This,target); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetRenderingControls(ID2D1DeviceContext* This,const D2D1_RENDERING_CONTROLS *rendering_controls) { - This->lpVtbl->SetRenderingControls(This,rendering_controls); -} -static __WIDL_INLINE void ID2D1DeviceContext_GetRenderingControls(ID2D1DeviceContext* This,D2D1_RENDERING_CONTROLS *rendering_controls) { - This->lpVtbl->GetRenderingControls(This,rendering_controls); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetPrimitiveBlend(ID2D1DeviceContext* This,D2D1_PRIMITIVE_BLEND primitive_blend) { - This->lpVtbl->SetPrimitiveBlend(This,primitive_blend); -} -static __WIDL_INLINE D2D1_PRIMITIVE_BLEND ID2D1DeviceContext_GetPrimitiveBlend(ID2D1DeviceContext* This) { - return This->lpVtbl->GetPrimitiveBlend(This); -} -static __WIDL_INLINE void ID2D1DeviceContext_SetUnitMode(ID2D1DeviceContext* This,D2D1_UNIT_MODE unit_mode) { - This->lpVtbl->SetUnitMode(This,unit_mode); -} -static __WIDL_INLINE D2D1_UNIT_MODE ID2D1DeviceContext_GetUnitMode(ID2D1DeviceContext* This) { - return This->lpVtbl->GetUnitMode(This); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawGlyphRun(ID2D1DeviceContext* This,D2D1_POINT_2F baseline_origin,const DWRITE_GLYPH_RUN *glyph_run,const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc,ID2D1Brush *brush,DWRITE_MEASURING_MODE measuring_mode) { - This->lpVtbl->ID2D1DeviceContext_DrawGlyphRun(This,baseline_origin,glyph_run,glyph_run_desc,brush,measuring_mode); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawImage(ID2D1DeviceContext* This,ID2D1Image *image,const D2D1_POINT_2F *target_offset,const D2D1_RECT_F *image_rect,D2D1_INTERPOLATION_MODE interpolation_mode,D2D1_COMPOSITE_MODE composite_mode) { - This->lpVtbl->DrawImage(This,image,target_offset,image_rect,interpolation_mode,composite_mode); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawGdiMetafile(ID2D1DeviceContext* This,ID2D1GdiMetafile *metafile,const D2D1_POINT_2F *target_offset) { - This->lpVtbl->DrawGdiMetafile(This,metafile,target_offset); -} -static __WIDL_INLINE void ID2D1DeviceContext_DrawBitmap(ID2D1DeviceContext* This,ID2D1Bitmap *bitmap,const D2D1_RECT_F *dst_rect,float opacity,D2D1_INTERPOLATION_MODE interpolation_mode,const D2D1_RECT_F *src_rect,const D2D1_MATRIX_4X4_F *perspective_transform) { - This->lpVtbl->ID2D1DeviceContext_DrawBitmap(This,bitmap,dst_rect,opacity,interpolation_mode,src_rect,perspective_transform); -} -static __WIDL_INLINE void ID2D1DeviceContext_PushLayer(ID2D1DeviceContext* This,const D2D1_LAYER_PARAMETERS1 *layer_parameters,ID2D1Layer *layer) { - This->lpVtbl->ID2D1DeviceContext_PushLayer(This,layer_parameters,layer); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_InvalidateEffectInputRectangle(ID2D1DeviceContext* This,ID2D1Effect *effect,UINT32 input,const D2D1_RECT_F *input_rect) { - return This->lpVtbl->InvalidateEffectInputRectangle(This,effect,input,input_rect); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_GetEffectInvalidRectangleCount(ID2D1DeviceContext* This,ID2D1Effect *effect,UINT32 *rect_count) { - return This->lpVtbl->GetEffectInvalidRectangleCount(This,effect,rect_count); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_GetEffectInvalidRectangles(ID2D1DeviceContext* This,ID2D1Effect *effect,D2D1_RECT_F *rectangles,UINT32 rect_count) { - return This->lpVtbl->GetEffectInvalidRectangles(This,effect,rectangles,rect_count); -} -static __WIDL_INLINE HRESULT ID2D1DeviceContext_GetEffectRequiredInputRectangles(ID2D1DeviceContext* This,ID2D1Effect *effect,const D2D1_RECT_F *image_rect,const D2D1_EFFECT_INPUT_DESCRIPTION *desc,D2D1_RECT_F *input_rect,UINT32 input_count) { - return This->lpVtbl->GetEffectRequiredInputRectangles(This,effect,image_rect,desc,input_rect,input_count); -} -static __WIDL_INLINE void ID2D1DeviceContext_FillOpacityMask(ID2D1DeviceContext* This,ID2D1Bitmap *mask,ID2D1Brush *brush,const D2D1_RECT_F *dst_rect,const D2D1_RECT_F *src_rect) { - This->lpVtbl->ID2D1DeviceContext_FillOpacityMask(This,mask,brush,dst_rect,src_rect); -} -#endif -#endif #endif +DEFINE_GUID(IID_ID2D1DeviceContext, 0xe8f7fe7a,0x191c,0x466d,0xad,0x95,0x97,0x56,0x78,0xbd,0xa9,0x98); +__CRT_UUID_DECL(ID2D1DeviceContext, 0xe8f7fe7a,0x191c,0x466d,0xad,0x95,0x97,0x56,0x78,0xbd,0xa9,0x98); -#endif /* __ID2D1DeviceContext_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1StrokeStyle1 interface - */ -#ifndef __ID2D1StrokeStyle1_INTERFACE_DEFINED__ -#define __ID2D1StrokeStyle1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1StrokeStyle1, 0x10a72a66, 0xe91c, 0x43f4, 0x99,0x3f, 0xdd,0xf4,0xb8,0x2b,0x0b,0x4a); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("10a72a66-e91c-43f4-993f-ddf4b82b0b4a") -ID2D1StrokeStyle1 : public ID2D1StrokeStyle +interface ID2D1Device : public ID2D1Resource { - virtual D2D1_STROKE_TRANSFORM_TYPE STDMETHODCALLTYPE GetStrokeTransformType( - ) = 0; + STDMETHOD(CreateDeviceContext)(D2D1_DEVICE_CONTEXT_OPTIONS options, ID2D1DeviceContext **deviceContext) PURE; + STDMETHOD(CreatePrintControl)(IWICImagingFactory *wicFactory, IPrintDocumentPackageTarget *documentTarget, + CONST D2D1_PRINT_CONTROL_PROPERTIES *printControlProperties, ID2D1PrintControl **printControl) PURE; + STDMETHOD_(void, SetMaximumTextureMemory)(UINT64 maximumInBytes) PURE; + STDMETHOD_(UINT64, GetMaximumTextureMemory)() CONST PURE; + STDMETHOD_(void, ClearResources)(UINT32 millisecondsSinceUse = 0) PURE; -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1StrokeStyle1, 0x10a72a66, 0xe91c, 0x43f4, 0x99,0x3f, 0xdd,0xf4,0xb8,0x2b,0x0b,0x4a) -#endif -#else -typedef struct ID2D1StrokeStyle1Vtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1StrokeStyle1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1StrokeStyle1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1StrokeStyle1 *This); - - /*** ID2D1Resource methods ***/ - void (STDMETHODCALLTYPE *GetFactory)( - ID2D1StrokeStyle1 *This, - ID2D1Factory **factory); - - /*** ID2D1StrokeStyle methods ***/ - D2D1_CAP_STYLE (STDMETHODCALLTYPE *GetStartCap)( - ID2D1StrokeStyle1 *This); - - D2D1_CAP_STYLE (STDMETHODCALLTYPE *GetEndCap)( - ID2D1StrokeStyle1 *This); - - D2D1_CAP_STYLE (STDMETHODCALLTYPE *GetDashCap)( - ID2D1StrokeStyle1 *This); - - float (STDMETHODCALLTYPE *GetMiterLimit)( - ID2D1StrokeStyle1 *This); - - D2D1_LINE_JOIN (STDMETHODCALLTYPE *GetLineJoin)( - ID2D1StrokeStyle1 *This); - - float (STDMETHODCALLTYPE *GetDashOffset)( - ID2D1StrokeStyle1 *This); - - D2D1_DASH_STYLE (STDMETHODCALLTYPE *GetDashStyle)( - ID2D1StrokeStyle1 *This); - - UINT32 (STDMETHODCALLTYPE *GetDashesCount)( - ID2D1StrokeStyle1 *This); - - void (STDMETHODCALLTYPE *GetDashes)( - ID2D1StrokeStyle1 *This, - float *dashes, - UINT32 count); - - /*** ID2D1StrokeStyle1 methods ***/ - D2D1_STROKE_TRANSFORM_TYPE (STDMETHODCALLTYPE *GetStrokeTransformType)( - ID2D1StrokeStyle1 *This); - - END_INTERFACE -} ID2D1StrokeStyle1Vtbl; - -interface ID2D1StrokeStyle1 { - CONST_VTBL ID2D1StrokeStyle1Vtbl* lpVtbl; + HRESULT CreatePrintControl(IWICImagingFactory *wicFactory, IPrintDocumentPackageTarget *documentTarget, + CONST D2D1_PRINT_CONTROL_PROPERTIES &printControlProperties, ID2D1PrintControl **printControl) { + return CreatePrintControl(wicFactory, documentTarget, &printControlProperties, printControl); + } }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1StrokeStyle1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1StrokeStyle1_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1StrokeStyle1_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Resource methods ***/ -#define ID2D1StrokeStyle1_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) -/*** ID2D1StrokeStyle methods ***/ -#define ID2D1StrokeStyle1_GetStartCap(This) (This)->lpVtbl->GetStartCap(This) -#define ID2D1StrokeStyle1_GetEndCap(This) (This)->lpVtbl->GetEndCap(This) -#define ID2D1StrokeStyle1_GetDashCap(This) (This)->lpVtbl->GetDashCap(This) -#define ID2D1StrokeStyle1_GetMiterLimit(This) (This)->lpVtbl->GetMiterLimit(This) -#define ID2D1StrokeStyle1_GetLineJoin(This) (This)->lpVtbl->GetLineJoin(This) -#define ID2D1StrokeStyle1_GetDashOffset(This) (This)->lpVtbl->GetDashOffset(This) -#define ID2D1StrokeStyle1_GetDashStyle(This) (This)->lpVtbl->GetDashStyle(This) -#define ID2D1StrokeStyle1_GetDashesCount(This) (This)->lpVtbl->GetDashesCount(This) -#define ID2D1StrokeStyle1_GetDashes(This,dashes,count) (This)->lpVtbl->GetDashes(This,dashes,count) -/*** ID2D1StrokeStyle1 methods ***/ -#define ID2D1StrokeStyle1_GetStrokeTransformType(This) (This)->lpVtbl->GetStrokeTransformType(This) #else + +typedef interface ID2D1Device ID2D1Device; + +typedef struct ID2D1DeviceVtbl { + struct ID2D1ResourceVtbl Base; + + STDMETHOD(CreateDeviceContext)(ID2D1Device *This, + D2D1_DEVICE_CONTEXT_OPTIONS options, + ID2D1DeviceContext **deviceContext) PURE; + STDMETHOD(CreatePrintControl)(ID2D1Device *This, + IWICImagingFactory *wicFactory, + IPrintDocumentPackageTarget *documentTarget, + CONST D2D1_PRINT_CONTROL_PROPERTIES *printControlProperties, + ID2D1PrintControl **printControl) PURE; + STDMETHOD_(void, SetMaximumTextureMemory)(ID2D1Device *This, + UINT64 maximumInBytes) PURE; + STDMETHOD_(UINT64, GetMaximumTextureMemory)(ID2D1Device *This) PURE; + STDMETHOD_(void, ClearResources)(ID2D1Device *This, + UINT32 millisecondsSinceUse) PURE; +} +ID2D1DeviceVtbl; + +interface ID2D1Device { + const ID2D1DeviceVtbl *lpVtbl; +}; + /*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1StrokeStyle1_QueryInterface(ID2D1StrokeStyle1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1StrokeStyle1_AddRef(ID2D1StrokeStyle1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1StrokeStyle1_Release(ID2D1StrokeStyle1* This) { - return This->lpVtbl->Release(This); -} +#define ID2D1Device_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define ID2D1Device_AddRef(This) (This)->lpVtbl->AddRef(This) +#define ID2D1Device_Release(This) (This)->lpVtbl->Release(This) /*** ID2D1Resource methods ***/ -static __WIDL_INLINE void ID2D1StrokeStyle1_GetFactory(ID2D1StrokeStyle1* This,ID2D1Factory **factory) { - This->lpVtbl->GetFactory(This,factory); -} -/*** ID2D1StrokeStyle methods ***/ -static __WIDL_INLINE D2D1_CAP_STYLE ID2D1StrokeStyle1_GetStartCap(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetStartCap(This); -} -static __WIDL_INLINE D2D1_CAP_STYLE ID2D1StrokeStyle1_GetEndCap(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetEndCap(This); -} -static __WIDL_INLINE D2D1_CAP_STYLE ID2D1StrokeStyle1_GetDashCap(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetDashCap(This); -} -static __WIDL_INLINE float ID2D1StrokeStyle1_GetMiterLimit(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetMiterLimit(This); -} -static __WIDL_INLINE D2D1_LINE_JOIN ID2D1StrokeStyle1_GetLineJoin(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetLineJoin(This); -} -static __WIDL_INLINE float ID2D1StrokeStyle1_GetDashOffset(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetDashOffset(This); -} -static __WIDL_INLINE D2D1_DASH_STYLE ID2D1StrokeStyle1_GetDashStyle(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetDashStyle(This); -} -static __WIDL_INLINE UINT32 ID2D1StrokeStyle1_GetDashesCount(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetDashesCount(This); -} -static __WIDL_INLINE void ID2D1StrokeStyle1_GetDashes(ID2D1StrokeStyle1* This,float *dashes,UINT32 count) { - This->lpVtbl->GetDashes(This,dashes,count); -} -/*** ID2D1StrokeStyle1 methods ***/ -static __WIDL_INLINE D2D1_STROKE_TRANSFORM_TYPE ID2D1StrokeStyle1_GetStrokeTransformType(ID2D1StrokeStyle1* This) { - return This->lpVtbl->GetStrokeTransformType(This); -} -#endif -#endif +#define ID2D1Device_GetFactory(This,factory) (This)->lpVtbl->GetFactory(This,factory) +/*** ID2D1Device methods ***/ +#define ID2D1Device_CreateDeviceContext(This,options,context) (This)->lpVtbl->CreateDeviceContext(This,options,context) +#define ID2D1Device_CreatePrintControl(This,wic_factory,document_target,desc,print_control) (This)->lpVtbl->CreatePrintControl(This,wic_factory,document_target,desc,print_control) +#define ID2D1Device_SetMaximumTextureMemory(This,max_texture_memory) (This)->lpVtbl->SetMaximumTextureMemory(This,max_texture_memory) +#define ID2D1Device_GetMaximumTextureMemory(This) (This)->lpVtbl->GetMaximumTextureMemory(This) +#define ID2D1Device_ClearResources(This,msec_since_use) (This)->lpVtbl->ClearResources(This,msec_since_use) #endif +DEFINE_GUID(IID_ID2D1Device, 0x47dd575d,0xac05,0x4cdd,0x80,0x49,0x9b,0x02,0xcd,0x16,0xf4,0x4c); +__CRT_UUID_DECL(ID2D1Device, 0x47dd575d,0xac05,0x4cdd,0x80,0x49,0x9b,0x02,0xcd,0x16,0xf4,0x4c); -#endif /* __ID2D1StrokeStyle1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Factory1 interface - */ -#ifndef __ID2D1Factory1_INTERFACE_DEFINED__ -#define __ID2D1Factory1_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Factory1, 0xbb12d362, 0xdaee, 0x4b9a, 0xaa,0x1d, 0x14,0xba,0x40,0x1c,0xfa,0x1f); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("bb12d362-daee-4b9a-aa1d-14ba401cfa1f") -ID2D1Factory1 : public ID2D1Factory +interface ID2D1DrawingStateBlock1 : public ID2D1DrawingStateBlock { - virtual HRESULT STDMETHODCALLTYPE CreateDevice( - IDXGIDevice *dxgi_device, - ID2D1Device **device) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateStrokeStyle( - const D2D1_STROKE_STYLE_PROPERTIES1 *desc, - const float *dashes, - UINT32 dash_count, - ID2D1StrokeStyle1 **stroke_style) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreatePathGeometry( - ID2D1PathGeometry1 **geometry) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateDrawingStateBlock( - const D2D1_DRAWING_STATE_DESCRIPTION1 *desc, - IDWriteRenderingParams *text_rendering_params, - ID2D1DrawingStateBlock1 **state_block) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateGdiMetafile( - IStream *stream, - ID2D1GdiMetafile **metafile) = 0; - - virtual HRESULT STDMETHODCALLTYPE RegisterEffectFromStream( - REFCLSID effect_id, - IStream *property_xml, - const struct D2D1_PROPERTY_BINDING *bindings, - UINT32 binding_count, - PD2D1_EFFECT_FACTORY effect_factory) = 0; - - virtual HRESULT STDMETHODCALLTYPE RegisterEffectFromString( - REFCLSID effect_id, - const WCHAR *property_xml, - const struct D2D1_PROPERTY_BINDING *bindings, - UINT32 binding_count, - PD2D1_EFFECT_FACTORY effect_factory) = 0; - - virtual HRESULT STDMETHODCALLTYPE UnregisterEffect( - REFCLSID effect_id) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetRegisteredEffects( - CLSID *effects, - UINT32 effect_count, - UINT32 *returned, - UINT32 *registered) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetEffectProperties( - REFCLSID effect_id, - ID2D1Properties **props) = 0; + STDMETHOD_(void, GetDescription)(D2D1_DRAWING_STATE_DESCRIPTION1 *stateDescription) CONST PURE; + using ID2D1DrawingStateBlock::GetDescription; + STDMETHOD_(void, SetDescription)(CONST D2D1_DRAWING_STATE_DESCRIPTION1 *stateDescription) PURE; + using ID2D1DrawingStateBlock::SetDescription; }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Factory1, 0xbb12d362, 0xdaee, 0x4b9a, 0xaa,0x1d, 0x14,0xba,0x40,0x1c,0xfa,0x1f) -#endif + #else + +typedef interface ID2D1DrawingStateBlock1 ID2D1DrawingStateBlock1; +/* FIXME: Add full C declaration */ + +#endif + +DEFINE_GUID(IID_ID2D1DrawingStateBlock1, 0x689f1f85,0xc72e,0x4e33,0x8f,0x19,0x85,0x75,0x4e,0xfd,0x5a,0xce); +__CRT_UUID_DECL(ID2D1DrawingStateBlock1, 0x689f1f85,0xc72e,0x4e33,0x8f,0x19,0x85,0x75,0x4e,0xfd,0x5a,0xce); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1PathGeometry1 : public ID2D1PathGeometry +{ + STDMETHOD(ComputePointAndSegmentAtLength)(FLOAT length, UINT32 startSegment, CONST D2D1_MATRIX_3X2_F *worldTransform, + FLOAT flatteningTolerance, D2D1_POINT_DESCRIPTION *pointDescription) CONST PURE; + + HRESULT ComputePointAndSegmentAtLength(FLOAT length, UINT32 startSegment, CONST D2D1_MATRIX_3X2_F &worldTransform, + FLOAT flatteningTolerance, D2D1_POINT_DESCRIPTION *pointDescription) CONST { + return ComputePointAndSegmentAtLength(length, startSegment, &worldTransform, flatteningTolerance, pointDescription); + } + + HRESULT ComputePointAndSegmentAtLength(FLOAT length, UINT32 startSegment, CONST D2D1_MATRIX_3X2_F *worldTransform, + D2D1_POINT_DESCRIPTION *pointDescription) CONST { + return ComputePointAndSegmentAtLength(length, startSegment, worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, + pointDescription); + } + + HRESULT ComputePointAndSegmentAtLength(FLOAT length, UINT32 startSegment, CONST D2D1_MATRIX_3X2_F &worldTransform, + D2D1_POINT_DESCRIPTION *pointDescription) CONST { + return ComputePointAndSegmentAtLength(length, startSegment, &worldTransform, D2D1_DEFAULT_FLATTENING_TOLERANCE, + pointDescription); + } +}; + +#else + +typedef interface ID2D1PathGeometry1 ID2D1PathGeometry1; +/* FIXME: Add full C declaration */ + +#endif + +DEFINE_GUID(IID_ID2D1PathGeometry1, 0x62baa2d2,0xab54,0x41b7,0xb8,0x72,0x78,0x7e,0x01,0x06,0xa4,0x21); +__CRT_UUID_DECL(ID2D1PathGeometry1, 0x62baa2d2,0xab54,0x41b7,0xb8,0x72,0x78,0x7e,0x01,0x06,0xa4,0x21); + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1Factory1 : public ID2D1Factory +{ + STDMETHOD(CreateDevice)(IDXGIDevice *dxgiDevice, ID2D1Device **d2dDevice) PURE; + + STDMETHOD(CreateStrokeStyle)(CONST D2D1_STROKE_STYLE_PROPERTIES1 *strokeStyleProperties, + CONST FLOAT *dashes, UINT32 dashesCount, ID2D1StrokeStyle1 **strokeStyle) PURE; + using ID2D1Factory::CreateStrokeStyle; + + STDMETHOD(CreatePathGeometry)(ID2D1PathGeometry1 **pathGeometry) PURE; + using ID2D1Factory::CreatePathGeometry; + + STDMETHOD(CreateDrawingStateBlock)(CONST D2D1_DRAWING_STATE_DESCRIPTION1 *drawingStateDescription, + IDWriteRenderingParams *textRenderingParams, ID2D1DrawingStateBlock1 **drawingStateBlock) PURE; + using ID2D1Factory::CreateDrawingStateBlock; + + STDMETHOD(CreateGdiMetafile)(IStream *metafileStream, ID2D1GdiMetafile **metafile) PURE; + STDMETHOD(RegisterEffectFromStream)(REFCLSID classId, IStream *propertyXml, CONST D2D1_PROPERTY_BINDING *bindings, + UINT32 bindingsCount, CONST PD2D1_EFFECT_FACTORY effectFactory) PURE; + STDMETHOD(RegisterEffectFromString)(REFCLSID classId, PCWSTR propertyXml, CONST D2D1_PROPERTY_BINDING *bindings, + UINT32 bindingsCount, CONST PD2D1_EFFECT_FACTORY effectFactory) PURE; + STDMETHOD(UnregisterEffect)(REFCLSID classId) PURE; + STDMETHOD(GetRegisteredEffects)(CLSID *effects, UINT32 effectsCount, UINT32 *effectsReturned, + UINT32 *effectsRegistered) CONST PURE; + STDMETHOD(GetEffectProperties)(REFCLSID effectId, ID2D1Properties **properties) CONST PURE; + + HRESULT CreateStrokeStyle(CONST D2D1_STROKE_STYLE_PROPERTIES1 &strokeStyleProperties, CONST FLOAT *dashes, + UINT32 dashesCount, ID2D1StrokeStyle1 **strokeStyle) { + return CreateStrokeStyle(&strokeStyleProperties, dashes, dashesCount, strokeStyle); + } + + HRESULT CreateDrawingStateBlock(CONST D2D1_DRAWING_STATE_DESCRIPTION1 &drawingStateDescription, + ID2D1DrawingStateBlock1 **drawingStateBlock) { + return CreateDrawingStateBlock(&drawingStateDescription, NULL, drawingStateBlock); + } + + HRESULT CreateDrawingStateBlock(ID2D1DrawingStateBlock1 **drawingStateBlock) { + return CreateDrawingStateBlock(NULL, NULL, drawingStateBlock); + } +}; + +#else + +typedef interface ID2D1Factory1 ID2D1Factory1; + typedef struct ID2D1Factory1Vtbl { - BEGIN_INTERFACE + ID2D1FactoryVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Factory1 *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Factory1 *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Factory1 *This); - - /*** ID2D1Factory methods ***/ - HRESULT (STDMETHODCALLTYPE *ReloadSystemMetrics)( - ID2D1Factory1 *This); - - void (STDMETHODCALLTYPE *GetDesktopDpi)( - ID2D1Factory1 *This, - float *dpi_x, - float *dpi_y); - - HRESULT (STDMETHODCALLTYPE *CreateRectangleGeometry)( - ID2D1Factory1 *This, - const D2D1_RECT_F *rect, - ID2D1RectangleGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateRoundedRectangleGeometry)( - ID2D1Factory1 *This, - const D2D1_ROUNDED_RECT *rect, - ID2D1RoundedRectangleGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateEllipseGeometry)( - ID2D1Factory1 *This, - const D2D1_ELLIPSE *ellipse, - ID2D1EllipseGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateGeometryGroup)( - ID2D1Factory1 *This, - D2D1_FILL_MODE fill_mode, - ID2D1Geometry **geometries, - UINT32 geometry_count, - ID2D1GeometryGroup **group); - - HRESULT (STDMETHODCALLTYPE *CreateTransformedGeometry)( - ID2D1Factory1 *This, - ID2D1Geometry *src_geometry, - const D2D1_MATRIX_3X2_F *transform, - ID2D1TransformedGeometry **transformed_geometry); - - HRESULT (STDMETHODCALLTYPE *CreatePathGeometry)( - ID2D1Factory1 *This, - ID2D1PathGeometry **geometry); - - HRESULT (STDMETHODCALLTYPE *CreateStrokeStyle)( - ID2D1Factory1 *This, - const D2D1_STROKE_STYLE_PROPERTIES *desc, - const float *dashes, - UINT32 dash_count, - ID2D1StrokeStyle **stroke_style); - - HRESULT (STDMETHODCALLTYPE *CreateDrawingStateBlock)( - ID2D1Factory1 *This, - const D2D1_DRAWING_STATE_DESCRIPTION *desc, - IDWriteRenderingParams *text_rendering_params, - ID2D1DrawingStateBlock **state_block); - - HRESULT (STDMETHODCALLTYPE *CreateWicBitmapRenderTarget)( - ID2D1Factory1 *This, - IWICBitmap *target, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1RenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateHwndRenderTarget)( - ID2D1Factory1 *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwnd_rt_desc, - ID2D1HwndRenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateDxgiSurfaceRenderTarget)( - ID2D1Factory1 *This, - IDXGISurface *surface, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1RenderTarget **render_target); - - HRESULT (STDMETHODCALLTYPE *CreateDCRenderTarget)( - ID2D1Factory1 *This, - const D2D1_RENDER_TARGET_PROPERTIES *desc, - ID2D1DCRenderTarget **render_target); - - /*** ID2D1Factory1 methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateDevice)( - ID2D1Factory1 *This, - IDXGIDevice *dxgi_device, - ID2D1Device **device); - - HRESULT (STDMETHODCALLTYPE *ID2D1Factory1_CreateStrokeStyle)( - ID2D1Factory1 *This, - const D2D1_STROKE_STYLE_PROPERTIES1 *desc, - const float *dashes, - UINT32 dash_count, - ID2D1StrokeStyle1 **stroke_style); - - HRESULT (STDMETHODCALLTYPE *ID2D1Factory1_CreatePathGeometry)( - ID2D1Factory1 *This, - ID2D1PathGeometry1 **geometry); - - HRESULT (STDMETHODCALLTYPE *ID2D1Factory1_CreateDrawingStateBlock)( - ID2D1Factory1 *This, - const D2D1_DRAWING_STATE_DESCRIPTION1 *desc, - IDWriteRenderingParams *text_rendering_params, - ID2D1DrawingStateBlock1 **state_block); - - HRESULT (STDMETHODCALLTYPE *CreateGdiMetafile)( - ID2D1Factory1 *This, - IStream *stream, - ID2D1GdiMetafile **metafile); - - HRESULT (STDMETHODCALLTYPE *RegisterEffectFromStream)( - ID2D1Factory1 *This, - REFCLSID effect_id, - IStream *property_xml, - const struct D2D1_PROPERTY_BINDING *bindings, - UINT32 binding_count, - PD2D1_EFFECT_FACTORY effect_factory); - - HRESULT (STDMETHODCALLTYPE *RegisterEffectFromString)( - ID2D1Factory1 *This, - REFCLSID effect_id, - const WCHAR *property_xml, - const struct D2D1_PROPERTY_BINDING *bindings, - UINT32 binding_count, - PD2D1_EFFECT_FACTORY effect_factory); - - HRESULT (STDMETHODCALLTYPE *UnregisterEffect)( - ID2D1Factory1 *This, - REFCLSID effect_id); - - HRESULT (STDMETHODCALLTYPE *GetRegisteredEffects)( - ID2D1Factory1 *This, - CLSID *effects, - UINT32 effect_count, - UINT32 *returned, - UINT32 *registered); - - HRESULT (STDMETHODCALLTYPE *GetEffectProperties)( - ID2D1Factory1 *This, - REFCLSID effect_id, - ID2D1Properties **props); - - END_INTERFACE + STDMETHOD(CreateDevice)(ID2D1Factory1 *This, IDXGIDevice *dxgiDevice, + ID2D1Device **d2dDevice) PURE; + STDMETHOD(CreateStrokeStyle)(ID2D1Factory1 *This, + CONST D2D1_STROKE_STYLE_PROPERTIES1 *strokeStyleProperties, + CONST FLOAT *dashes, UINT32 dashesCount, + ID2D1StrokeStyle1 **strokeStyle) PURE; + STDMETHOD(CreatePathGeometry)(ID2D1Factory1 *This, + ID2D1PathGeometry1 **pathGeometry) PURE; + STDMETHOD(CreateDrawingStateBlock)(ID2D1Factory1 *This, + CONST D2D1_DRAWING_STATE_DESCRIPTION1 *drawingStateDescription, + IDWriteRenderingParams *textRenderingParams, + ID2D1DrawingStateBlock1 **drawingStateBlock) PURE; + STDMETHOD(CreateGdiMetafile)(ID2D1Factory1 *This, IStream *metafileStream, + ID2D1GdiMetafile **metafile) PURE; + STDMETHOD(RegisterEffectFromStream)(ID2D1Factory1 *This, REFCLSID classId, + IStream *propertyXml, CONST D2D1_PROPERTY_BINDING *bindings, + UINT32 bindingsCount, + CONST PD2D1_EFFECT_FACTORY effectFactory) PURE; + STDMETHOD(RegisterEffectFromString)(ID2D1Factory1 *This, + REFCLSID classId, PCWSTR propertyXml, + CONST D2D1_PROPERTY_BINDING *bindings, UINT32 bindingsCount, + CONST PD2D1_EFFECT_FACTORY effectFactory) PURE; + STDMETHOD(UnregisterEffect)(ID2D1Factory1 *This, REFCLSID classId) PURE; + STDMETHOD(GetRegisteredEffects)(ID2D1Factory1 *This, CLSID *effects, + UINT32 effectsCount, UINT32 *effectsReturned, + UINT32 *effectsRegistered) PURE; + STDMETHOD(GetEffectProperties)(ID2D1Factory1 *This, REFCLSID effectId, + ID2D1Properties **properties) PURE; } ID2D1Factory1Vtbl; interface ID2D1Factory1 { - CONST_VTBL ID2D1Factory1Vtbl* lpVtbl; + const ID2D1Factory1Vtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Factory1_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Factory1_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Factory1_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Factory methods ***/ -#define ID2D1Factory1_ReloadSystemMetrics(This) (This)->lpVtbl->ReloadSystemMetrics(This) -#define ID2D1Factory1_GetDesktopDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDesktopDpi(This,dpi_x,dpi_y) -#define ID2D1Factory1_CreateRectangleGeometry(This,rect,geometry) (This)->lpVtbl->CreateRectangleGeometry(This,rect,geometry) -#define ID2D1Factory1_CreateRoundedRectangleGeometry(This,rect,geometry) (This)->lpVtbl->CreateRoundedRectangleGeometry(This,rect,geometry) -#define ID2D1Factory1_CreateEllipseGeometry(This,ellipse,geometry) (This)->lpVtbl->CreateEllipseGeometry(This,ellipse,geometry) -#define ID2D1Factory1_CreateGeometryGroup(This,fill_mode,geometries,geometry_count,group) (This)->lpVtbl->CreateGeometryGroup(This,fill_mode,geometries,geometry_count,group) -#define ID2D1Factory1_CreateTransformedGeometry(This,src_geometry,transform,transformed_geometry) (This)->lpVtbl->CreateTransformedGeometry(This,src_geometry,transform,transformed_geometry) -#define ID2D1Factory1_CreateWicBitmapRenderTarget(This,target,desc,render_target) (This)->lpVtbl->CreateWicBitmapRenderTarget(This,target,desc,render_target) -#define ID2D1Factory1_CreateHwndRenderTarget(This,desc,hwnd_rt_desc,render_target) (This)->lpVtbl->CreateHwndRenderTarget(This,desc,hwnd_rt_desc,render_target) -#define ID2D1Factory1_CreateDxgiSurfaceRenderTarget(This,surface,desc,render_target) (This)->lpVtbl->CreateDxgiSurfaceRenderTarget(This,surface,desc,render_target) -#define ID2D1Factory1_CreateDCRenderTarget(This,desc,render_target) (This)->lpVtbl->CreateDCRenderTarget(This,desc,render_target) -/*** ID2D1Factory1 methods ***/ -#define ID2D1Factory1_CreateDevice(This,dxgi_device,device) (This)->lpVtbl->CreateDevice(This,dxgi_device,device) -#define ID2D1Factory1_CreateStrokeStyle(This,desc,dashes,dash_count,stroke_style) (This)->lpVtbl->ID2D1Factory1_CreateStrokeStyle(This,desc,dashes,dash_count,stroke_style) -#define ID2D1Factory1_CreatePathGeometry(This,geometry) (This)->lpVtbl->ID2D1Factory1_CreatePathGeometry(This,geometry) -#define ID2D1Factory1_CreateDrawingStateBlock(This,desc,text_rendering_params,state_block) (This)->lpVtbl->ID2D1Factory1_CreateDrawingStateBlock(This,desc,text_rendering_params,state_block) -#define ID2D1Factory1_CreateGdiMetafile(This,stream,metafile) (This)->lpVtbl->CreateGdiMetafile(This,stream,metafile) -#define ID2D1Factory1_RegisterEffectFromStream(This,effect_id,property_xml,bindings,binding_count,effect_factory) (This)->lpVtbl->RegisterEffectFromStream(This,effect_id,property_xml,bindings,binding_count,effect_factory) -#define ID2D1Factory1_RegisterEffectFromString(This,effect_id,property_xml,bindings,binding_count,effect_factory) (This)->lpVtbl->RegisterEffectFromString(This,effect_id,property_xml,bindings,binding_count,effect_factory) -#define ID2D1Factory1_UnregisterEffect(This,effect_id) (This)->lpVtbl->UnregisterEffect(This,effect_id) -#define ID2D1Factory1_GetRegisteredEffects(This,effects,effect_count,returned,registered) (This)->lpVtbl->GetRegisteredEffects(This,effects,effect_count,returned,registered) -#define ID2D1Factory1_GetEffectProperties(This,effect_id,props) (This)->lpVtbl->GetEffectProperties(This,effect_id,props) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Factory1_QueryInterface(ID2D1Factory1* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Factory1_AddRef(ID2D1Factory1* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Factory1_Release(ID2D1Factory1* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Factory methods ***/ -static __WIDL_INLINE HRESULT ID2D1Factory1_ReloadSystemMetrics(ID2D1Factory1* This) { - return This->lpVtbl->ReloadSystemMetrics(This); -} -static __WIDL_INLINE void ID2D1Factory1_GetDesktopDpi(ID2D1Factory1* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDesktopDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateRectangleGeometry(ID2D1Factory1* This,const D2D1_RECT_F *rect,ID2D1RectangleGeometry **geometry) { - return This->lpVtbl->CreateRectangleGeometry(This,rect,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateRoundedRectangleGeometry(ID2D1Factory1* This,const D2D1_ROUNDED_RECT *rect,ID2D1RoundedRectangleGeometry **geometry) { - return This->lpVtbl->CreateRoundedRectangleGeometry(This,rect,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateEllipseGeometry(ID2D1Factory1* This,const D2D1_ELLIPSE *ellipse,ID2D1EllipseGeometry **geometry) { - return This->lpVtbl->CreateEllipseGeometry(This,ellipse,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateGeometryGroup(ID2D1Factory1* This,D2D1_FILL_MODE fill_mode,ID2D1Geometry **geometries,UINT32 geometry_count,ID2D1GeometryGroup **group) { - return This->lpVtbl->CreateGeometryGroup(This,fill_mode,geometries,geometry_count,group); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateTransformedGeometry(ID2D1Factory1* This,ID2D1Geometry *src_geometry,const D2D1_MATRIX_3X2_F *transform,ID2D1TransformedGeometry **transformed_geometry) { - return This->lpVtbl->CreateTransformedGeometry(This,src_geometry,transform,transformed_geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateWicBitmapRenderTarget(ID2D1Factory1* This,IWICBitmap *target,const D2D1_RENDER_TARGET_PROPERTIES *desc,ID2D1RenderTarget **render_target) { - return This->lpVtbl->CreateWicBitmapRenderTarget(This,target,desc,render_target); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateHwndRenderTarget(ID2D1Factory1* This,const D2D1_RENDER_TARGET_PROPERTIES *desc,const D2D1_HWND_RENDER_TARGET_PROPERTIES *hwnd_rt_desc,ID2D1HwndRenderTarget **render_target) { - return This->lpVtbl->CreateHwndRenderTarget(This,desc,hwnd_rt_desc,render_target); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateDxgiSurfaceRenderTarget(ID2D1Factory1* This,IDXGISurface *surface,const D2D1_RENDER_TARGET_PROPERTIES *desc,ID2D1RenderTarget **render_target) { - return This->lpVtbl->CreateDxgiSurfaceRenderTarget(This,surface,desc,render_target); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateDCRenderTarget(ID2D1Factory1* This,const D2D1_RENDER_TARGET_PROPERTIES *desc,ID2D1DCRenderTarget **render_target) { - return This->lpVtbl->CreateDCRenderTarget(This,desc,render_target); -} -/*** ID2D1Factory1 methods ***/ -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateDevice(ID2D1Factory1* This,IDXGIDevice *dxgi_device,ID2D1Device **device) { - return This->lpVtbl->CreateDevice(This,dxgi_device,device); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateStrokeStyle(ID2D1Factory1* This,const D2D1_STROKE_STYLE_PROPERTIES1 *desc,const float *dashes,UINT32 dash_count,ID2D1StrokeStyle1 **stroke_style) { - return This->lpVtbl->ID2D1Factory1_CreateStrokeStyle(This,desc,dashes,dash_count,stroke_style); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreatePathGeometry(ID2D1Factory1* This,ID2D1PathGeometry1 **geometry) { - return This->lpVtbl->ID2D1Factory1_CreatePathGeometry(This,geometry); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateDrawingStateBlock(ID2D1Factory1* This,const D2D1_DRAWING_STATE_DESCRIPTION1 *desc,IDWriteRenderingParams *text_rendering_params,ID2D1DrawingStateBlock1 **state_block) { - return This->lpVtbl->ID2D1Factory1_CreateDrawingStateBlock(This,desc,text_rendering_params,state_block); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_CreateGdiMetafile(ID2D1Factory1* This,IStream *stream,ID2D1GdiMetafile **metafile) { - return This->lpVtbl->CreateGdiMetafile(This,stream,metafile); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_RegisterEffectFromStream(ID2D1Factory1* This,REFCLSID effect_id,IStream *property_xml,const struct D2D1_PROPERTY_BINDING *bindings,UINT32 binding_count,PD2D1_EFFECT_FACTORY effect_factory) { - return This->lpVtbl->RegisterEffectFromStream(This,effect_id,property_xml,bindings,binding_count,effect_factory); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_RegisterEffectFromString(ID2D1Factory1* This,REFCLSID effect_id,const WCHAR *property_xml,const struct D2D1_PROPERTY_BINDING *bindings,UINT32 binding_count,PD2D1_EFFECT_FACTORY effect_factory) { - return This->lpVtbl->RegisterEffectFromString(This,effect_id,property_xml,bindings,binding_count,effect_factory); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_UnregisterEffect(ID2D1Factory1* This,REFCLSID effect_id) { - return This->lpVtbl->UnregisterEffect(This,effect_id); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_GetRegisteredEffects(ID2D1Factory1* This,CLSID *effects,UINT32 effect_count,UINT32 *returned,UINT32 *registered) { - return This->lpVtbl->GetRegisteredEffects(This,effects,effect_count,returned,registered); -} -static __WIDL_INLINE HRESULT ID2D1Factory1_GetEffectProperties(ID2D1Factory1* This,REFCLSID effect_id,ID2D1Properties **props) { - return This->lpVtbl->GetEffectProperties(This,effect_id,props); -} -#endif -#endif +#define ID2D1Factory1_QueryInterface(this,A,B) (this)->lpVtbl->Base.Base.QueryInterface((IUnknown *)(this),A,B) +#define ID2D1Factory1_AddRef(this) (this)->lpVtbl->Base.Base.AddRef((IUnknown *)(this)) +#define ID2D1Factory1_Release(this) (this)->lpVtbl->Base.Base.Release((IUnknown *)(this)) +#define ID2D1Factory1_CreateDevice(this,A,B) (this)->lpVtbl->CreateDevice(this,A,B) +#define ID2D1Factory1_CreateStrokeStyle(this,A,B,C,D) (this)->lpVtbl->CreateStrokeStyle(this,A,B,C,D) +#define ID2D1Factory1_CreatePathGeometry(this,A) (this)->lpVbtl->CreatePathGeometry(this,A) +#define ID2D1Factory1_CreateDrawingStateBlock(this,A,B, C) (this)->lpVtbl->CreateDrawingStateBlock(this,A,B,C) +#define ID2D1Factory1_CreateGdiMetafile(this,A,B) (this)->lpVtbl->CreateGdiMetafile(this,A,B) +#define ID2D1Factory1_RegisterEffectFromStream(this,A,B,C,D,E) (this)->lpVtbl->RegisterEffectFromStream(this,A,B,C,D,E) +#define ID2D1Factory1_RegisterEffectFromString(this,A,B,C,D,E) (this)->lpVtbl->RegisterEffectFromString(this,A,B,C,D,E) +#define ID2D1Factory1_UnregisterEffect(this,A) (this)->lpVtbl->UnregisterEffect(this,A) +#define ID2D1Factory1_GetRegisteredEffects(this,A,B,C,D) (this)->lpVtbl->GetRegisteredEffects(this,A,B,C,D) +#define ID2D1Factory1_GetEffectProperties(this,A,B) (this)->lpVtbl->GetEffectProperties(this,A,B) #endif +DEFINE_GUID(IID_ID2D1Factory1, 0xbb12d362,0xdaee,0x4b9a,0xaa,0x1d,0x14,0xba,0x40,0x1c,0xfa,0x1f); +__CRT_UUID_DECL(ID2D1Factory1, 0xbb12d362,0xdaee,0x4b9a,0xaa,0x1d,0x14,0xba,0x40,0x1c,0xfa,0x1f); -#endif /* __ID2D1Factory1_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Multithread interface - */ -#ifndef __ID2D1Multithread_INTERFACE_DEFINED__ -#define __ID2D1Multithread_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Multithread, 0x31e6e7bc, 0xe0ff, 0x4d46, 0x8c,0x64, 0xa0,0xa8,0xc4,0x1c,0x15,0xd3); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("31e6e7bc-e0ff-4d46-8c64-a0a8c41c15d3") -ID2D1Multithread : public IUnknown +interface ID2D1Multithread : public IUnknown { - virtual WINBOOL STDMETHODCALLTYPE GetMultithreadProtected( - ) = 0; - - virtual void STDMETHODCALLTYPE Enter( - ) = 0; - - virtual void STDMETHODCALLTYPE Leave( - ) = 0; - + STDMETHOD_(BOOL, GetMultithreadProtected)() CONST PURE; + STDMETHOD_(void, Enter)() PURE; + STDMETHOD_(void, Leave)() PURE; }; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Multithread, 0x31e6e7bc, 0xe0ff, 0x4d46, 0x8c,0x64, 0xa0,0xa8,0xc4,0x1c,0x15,0xd3) -#endif + #else + +typedef interface ID2D1Multithread ID2D1Multithread; + typedef struct ID2D1MultithreadVtbl { - BEGIN_INTERFACE + IUnknownVtbl Base; - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Multithread *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Multithread *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Multithread *This); - - /*** ID2D1Multithread methods ***/ - WINBOOL (STDMETHODCALLTYPE *GetMultithreadProtected)( - ID2D1Multithread *This); - - void (STDMETHODCALLTYPE *Enter)( - ID2D1Multithread *This); - - void (STDMETHODCALLTYPE *Leave)( - ID2D1Multithread *This); - - END_INTERFACE + STDMETHOD_(BOOL, GetMultithreadProtected)(ID2D1Multithread *This) PURE; + STDMETHOD_(void, Enter)(ID2D1Multithread *This) PURE; + STDMETHOD_(void, Leave)(ID2D1Multithread *This) PURE; } ID2D1MultithreadVtbl; interface ID2D1Multithread { - CONST_VTBL ID2D1MultithreadVtbl* lpVtbl; + ID2D1MultithreadVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Multithread_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Multithread_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Multithread_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1Multithread methods ***/ -#define ID2D1Multithread_GetMultithreadProtected(This) (This)->lpVtbl->GetMultithreadProtected(This) -#define ID2D1Multithread_Enter(This) (This)->lpVtbl->Enter(This) -#define ID2D1Multithread_Leave(This) (This)->lpVtbl->Leave(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Multithread_QueryInterface(ID2D1Multithread* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Multithread_AddRef(ID2D1Multithread* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Multithread_Release(ID2D1Multithread* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1Multithread methods ***/ -static __WIDL_INLINE WINBOOL ID2D1Multithread_GetMultithreadProtected(ID2D1Multithread* This) { - return This->lpVtbl->GetMultithreadProtected(This); -} -static __WIDL_INLINE void ID2D1Multithread_Enter(ID2D1Multithread* This) { - This->lpVtbl->Enter(This); -} -static __WIDL_INLINE void ID2D1Multithread_Leave(ID2D1Multithread* This) { - This->lpVtbl->Leave(This); -} -#endif -#endif +#define ID2D1Multithread_QueryInterface(this,A,B) (this)->lpVtbl->Base.QueryInterface((IUnknown *)(this),A,B) +#define ID2D1Multithread_AddRef(this) (this)->lpVtbl->Base.AddRef((IUnknown *)(this)) +#define ID2D1Multithread_Release(this) (this)->lpVtbl->Base.Release((IUnknown *)(this)) +#define ID2D1Mutlithread_GetMultithreadProtected(this) (this)->lpVtbl->GetMultihreadProtected(this) +#define ID2D1Multithread_Enter(this) (this)->lpVtbl->Enter(this) +#define ID2D1Multithread_Leave(this) (this)->lpVtbl->Leave(this) #endif +DEFINE_GUID(IID_ID2D1Multithread, 0x31e6e7bc,0xe0ff,0x4d46,0x8c,0x64,0xa0,0xa8,0xc4,0x1c,0x15,0xd3); +__CRT_UUID_DECL(ID2D1Multithread, 0x31e6e7bc,0xe0ff,0x4d46,0x8c,0x64,0xa0,0xa8,0xc4,0x1c,0x15,0xd3); -#endif /* __ID2D1Multithread_INTERFACE_DEFINED__ */ +#include -HRESULT __stdcall D2D1CreateDevice(IDXGIDevice *dxgi_device,const D2D1_CREATION_PROPERTIES *creation_properties,ID2D1Device **device); - -void __stdcall D2D1SinCos(float angle,float *s,float *c); - -float __stdcall D2D1Tan(float angle); - -float __stdcall D2D1Vec3Length(float x,float y,float z); - -D2D1_COLOR_F __stdcall D2D1ConvertColorSpace(D2D1_COLOR_SPACE src_colour_space,D2D1_COLOR_SPACE dst_colour_space,const D2D1_COLOR_F *colour); - -/* Begin additional prototypes for all interfaces */ - - -/* End additional prototypes */ - -#ifdef __cplusplus -} #endif - -#endif /* __d2d1_1_h__ */ diff --git a/mingw-w64-headers/include/d2d1_1.idl b/mingw-w64-headers/include/d2d1_1.idl deleted file mode 100644 index 9da56050e..000000000 --- a/mingw-w64-headers/include/d2d1_1.idl +++ /dev/null @@ -1,983 +0,0 @@ -/* - * Copyright 2017 Lucian Poston - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -import "d2d1.idl"; -import "d2d1effects.idl"; - -interface ID2D1DeviceContext; -interface ID2D1Properties; -interface IPrintDocumentPackageTarget; -interface ID2D1PrintControl; -interface IWICImagingFactory; -interface IWICColorContext; -interface ID2D1ColorContext; -interface ID2D1Effect; -interface ID2D1BitmapBrush1; - -cpp_quote("#ifndef __dwrite_h__") -/* already defined in dwrite.h but needed for WIDL */ -typedef struct DWRITE_GLYPH_RUN_DESCRIPTION DWRITE_GLYPH_RUN_DESCRIPTION; -cpp_quote("#endif /* __dwrite_h__ */") -cpp_quote("#define D2D1_INVALID_PROPERTY_INDEX UINT_MAX") - -typedef enum D2D1_DEVICE_CONTEXT_OPTIONS -{ - D2D1_DEVICE_CONTEXT_OPTIONS_NONE = 0x0, - D2D1_DEVICE_CONTEXT_OPTIONS_ENABLE_MULTITHREADED_OPTIMIZATIONS = 0x1, - D2D1_DEVICE_CONTEXT_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_DEVICE_CONTEXT_OPTIONS; - -typedef enum D2D1_STROKE_TRANSFORM_TYPE -{ - D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0x0, - D2D1_STROKE_TRANSFORM_TYPE_FIXED = 0x1, - D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 0x2, - D2D1_STROKE_TRANSFORM_TYPE_FORCE_DWORD = 0xffffffff, -} D2D1_STROKE_TRANSFORM_TYPE; - -typedef enum D2D1_PRIMITIVE_BLEND -{ - D2D1_PRIMITIVE_BLEND_SOURCE_OVER = 0x0, - D2D1_PRIMITIVE_BLEND_COPY = 0x1, - D2D1_PRIMITIVE_BLEND_MIN = 0x2, - D2D1_PRIMITIVE_BLEND_ADD = 0x3, - D2D1_PRIMITIVE_BLEND_MAX = 0x4, - D2D1_PRIMITIVE_BLEND_FORCE_DWORD = 0xffffffff, -} D2D1_PRIMITIVE_BLEND; - -typedef enum D2D1_UNIT_MODE -{ - D2D1_UNIT_MODE_DIPS = 0x0, - D2D1_UNIT_MODE_PIXELS = 0x1, - D2D1_UNIT_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_UNIT_MODE; - -typedef enum D2D1_PRINT_FONT_SUBSET_MODE -{ - D2D1_PRINT_FONT_SUBSET_MODE_DEFAULT = 0x0, - D2D1_PRINT_FONT_SUBSET_MODE_EACHPAGE = 0x1, - D2D1_PRINT_FONT_SUBSET_MODE_NONE = 0x2, - D2D1_PRINT_FONT_SUBSET_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_PRINT_FONT_SUBSET_MODE; - -typedef enum D2D1_COLOR_SPACE -{ - D2D1_COLOR_SPACE_CUSTOM = 0x0, - D2D1_COLOR_SPACE_SRGB = 0x1, - D2D1_COLOR_SPACE_SCRGB = 0x2, - D2D1_COLOR_SPACE_FORCE_DWORD = 0xffffffff, -} D2D1_COLOR_SPACE; - -typedef enum D2D1_BITMAP_OPTIONS -{ - D2D1_BITMAP_OPTIONS_NONE = 0x0, - D2D1_BITMAP_OPTIONS_TARGET = 0x1, - D2D1_BITMAP_OPTIONS_CANNOT_DRAW = 0x2, - D2D1_BITMAP_OPTIONS_CPU_READ = 0x4, - D2D1_BITMAP_OPTIONS_GDI_COMPATIBLE = 0x8, - D2D1_BITMAP_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_BITMAP_OPTIONS; - -typedef enum D2D1_MAP_OPTIONS -{ - D2D1_MAP_OPTIONS_NONE = 0x0, - D2D1_MAP_OPTIONS_READ = 0x1, - D2D1_MAP_OPTIONS_WRITE = 0x2, - D2D1_MAP_OPTIONS_DISCARD = 0x4, - D2D1_MAP_OPTIONS_FORCE_DWORD = 0xffffffff, -} D2D1_MAP_OPTIONS; - -typedef enum D2D1_BUFFER_PRECISION -{ - D2D1_BUFFER_PRECISION_UNKNOWN = 0x0, - D2D1_BUFFER_PRECISION_8BPC_UNORM = 0x1, - D2D1_BUFFER_PRECISION_8BPC_UNORM_SRGB = 0x2, - D2D1_BUFFER_PRECISION_16BPC_UNORM = 0x3, - D2D1_BUFFER_PRECISION_16BPC_FLOAT = 0x4, - D2D1_BUFFER_PRECISION_32BPC_FLOAT = 0x5, - D2D1_BUFFER_PRECISION_FORCE_DWORD = 0xffffffff, -} D2D1_BUFFER_PRECISION; - -typedef enum D2D1_COLOR_INTERPOLATION_MODE -{ - D2D1_COLOR_INTERPOLATION_MODE_STRAIGHT = 0x0, - D2D1_COLOR_INTERPOLATION_MODE_PREMULTIPLIED = 0x1, - D2D1_COLOR_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_COLOR_INTERPOLATION_MODE; - -typedef enum D2D1_INTERPOLATION_MODE -{ - D2D1_INTERPOLATION_MODE_NEAREST_NEIGHBOR = D2D1_INTERPOLATION_MODE_DEFINITION_NEAREST_NEIGHBOR, - D2D1_INTERPOLATION_MODE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_LINEAR, - D2D1_INTERPOLATION_MODE_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_CUBIC, - D2D1_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = D2D1_INTERPOLATION_MODE_DEFINITION_MULTI_SAMPLE_LINEAR, - D2D1_INTERPOLATION_MODE_ANISOTROPIC = D2D1_INTERPOLATION_MODE_DEFINITION_ANISOTROPIC, - D2D1_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = D2D1_INTERPOLATION_MODE_DEFINITION_HIGH_QUALITY_CUBIC, - D2D1_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_INTERPOLATION_MODE; - -typedef enum D2D1_COMPOSITE_MODE -{ - D2D1_COMPOSITE_MODE_SOURCE_OVER = 0x0, - D2D1_COMPOSITE_MODE_DESTINATION_OVER = 0x1, - D2D1_COMPOSITE_MODE_SOURCE_IN = 0x2, - D2D1_COMPOSITE_MODE_DESTINATION_IN = 0x3, - D2D1_COMPOSITE_MODE_SOURCE_OUT = 0x4, - D2D1_COMPOSITE_MODE_DESTINATION_OUT = 0x5, - D2D1_COMPOSITE_MODE_SOURCE_ATOP = 0x6, - D2D1_COMPOSITE_MODE_DESTINATION_ATOP = 0x7, - D2D1_COMPOSITE_MODE_XOR = 0x8, - D2D1_COMPOSITE_MODE_PLUS = 0x9, - D2D1_COMPOSITE_MODE_SOURCE_COPY = 0xa, - D2D1_COMPOSITE_MODE_BOUNDED_SOURCE_COPY = 0xb, - D2D1_COMPOSITE_MODE_MASK_INVERT = 0xc, - D2D1_COMPOSITE_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_COMPOSITE_MODE; - -typedef enum D2D1_LAYER_OPTIONS1 -{ - D2D1_LAYER_OPTIONS1_NONE = 0x0, - D2D1_LAYER_OPTIONS1_INITIALIZE_FROM_BACKGROUND = 0x1, - D2D1_LAYER_OPTIONS1_IGNORE_ALPHA = 0x2, - D2D1_LAYER_OPTIONS1_FORCE_DWORD = 0xffffffff, -} D2D1_LAYER_OPTIONS1; - -struct D2D1_PROPERTY_BINDING; -typedef D2D_MATRIX_4X4_F D2D1_MATRIX_4X4_F; - -typedef enum D2D1_PROPERTY_TYPE -{ - D2D1_PROPERTY_TYPE_UNKNOWN = 0x0, - D2D1_PROPERTY_TYPE_STRING = 0x1, - D2D1_PROPERTY_TYPE_BOOL = 0x2, - D2D1_PROPERTY_TYPE_UINT32 = 0x3, - D2D1_PROPERTY_TYPE_INT32 = 0x4, - D2D1_PROPERTY_TYPE_FLOAT = 0x5, - D2D1_PROPERTY_TYPE_VECTOR2 = 0x6, - D2D1_PROPERTY_TYPE_VECTOR3 = 0x7, - D2D1_PROPERTY_TYPE_VECTOR4 = 0x8, - D2D1_PROPERTY_TYPE_BLOB = 0x9, - D2D1_PROPERTY_TYPE_IUNKNOWN = 0xa, - D2D1_PROPERTY_TYPE_ENUM = 0xb, - D2D1_PROPERTY_TYPE_ARRAY = 0xc, - D2D1_PROPERTY_TYPE_CLSID = 0xd, - D2D1_PROPERTY_TYPE_MATRIX_3X2 = 0xe, - D2D1_PROPERTY_TYPE_MATRIX_4X3 = 0xf, - D2D1_PROPERTY_TYPE_MATRIX_4X4 = 0x10, - D2D1_PROPERTY_TYPE_MATRIX_5X4 = 0x11, - D2D1_PROPERTY_TYPE_COLOR_CONTEXT = 0x12, - D2D1_PROPERTY_TYPE_FORCE_DWORD = 0xffffffff, -} D2D1_PROPERTY_TYPE; - -typedef enum D2D1_PROPERTY -{ - D2D1_PROPERTY_CLSID = 0x80000000, - D2D1_PROPERTY_DISPLAYNAME = 0x80000001, - D2D1_PROPERTY_AUTHOR = 0x80000002, - D2D1_PROPERTY_CATEGORY = 0x80000003, - D2D1_PROPERTY_DESCRIPTION = 0x80000004, - D2D1_PROPERTY_INPUTS = 0x80000005, - D2D1_PROPERTY_CACHED = 0x80000006, - D2D1_PROPERTY_PRECISION = 0x80000007, - D2D1_PROPERTY_MIN_INPUTS = 0x80000008, - D2D1_PROPERTY_MAX_INPUTS = 0x80000009, - D2D1_PROPERTY_FORCE_DWORD = 0xffffffff -} D2D1_PROPERTY; - -typedef enum D2D1_SUBPROPERTY -{ - D2D1_SUBPROPERTY_DISPLAYNAME = 0x80000000, - D2D1_SUBPROPERTY_ISREADONLY = 0x80000001, - D2D1_SUBPROPERTY_MIN = 0x80000002, - D2D1_SUBPROPERTY_MAX = 0x80000003, - D2D1_SUBPROPERTY_DEFAULT = 0x80000004, - D2D1_SUBPROPERTY_FIELDS = 0x80000005, - D2D1_SUBPROPERTY_INDEX = 0x80000006, - D2D1_SUBPROPERTY_FORCE_DWORD = 0xffffffff -} D2D1_SUBPROPERTY; - -typedef enum D2D1_THREADING_MODE -{ - D2D1_THREADING_MODE_SINGLE_THREADED = D2D1_FACTORY_TYPE_SINGLE_THREADED, - D2D1_THREADING_MODE_MULTI_THREADED = D2D1_FACTORY_TYPE_MULTI_THREADED, - D2D1_THREADING_MODE_FORCE_DWORD = 0xffffffff, -} D2D1_THREADING_MODE; - -typedef struct D2D1_CREATION_PROPERTIES -{ - D2D1_THREADING_MODE threadingMode; - D2D1_DEBUG_LEVEL debugLevel; - D2D1_DEVICE_CONTEXT_OPTIONS options; -} D2D1_CREATION_PROPERTIES; - -typedef struct D2D1_STROKE_STYLE_PROPERTIES1 -{ - D2D1_CAP_STYLE startCap; - D2D1_CAP_STYLE endCap; - D2D1_CAP_STYLE dashCap; - D2D1_LINE_JOIN lineJoin; - float miterLimit; - D2D1_DASH_STYLE dashStyle; - float dashOffset; - D2D1_STROKE_TRANSFORM_TYPE transformType; -} D2D1_STROKE_STYLE_PROPERTIES1; - -typedef struct D2D1_DRAWING_STATE_DESCRIPTION1 -{ - D2D1_ANTIALIAS_MODE antialiasMode; - D2D1_TEXT_ANTIALIAS_MODE textAntialiasMode; - D2D1_TAG tag1; - D2D1_TAG tag2; - D2D1_MATRIX_3X2_F transform; - D2D1_PRIMITIVE_BLEND primitiveBlend; - D2D1_UNIT_MODE unitMode; -} D2D1_DRAWING_STATE_DESCRIPTION1; - -typedef struct D2D1_PRINT_CONTROL_PROPERTIES -{ - D2D1_PRINT_FONT_SUBSET_MODE fontSubset; - float rasterDPI; - D2D1_COLOR_SPACE colorSpace; -} D2D1_PRINT_CONTROL_PROPERTIES; - -typedef struct D2D1_MAPPED_RECT -{ - UINT32 pitch; - BYTE *bits; -} D2D1_MAPPED_RECT; - -typedef struct D2D1_BITMAP_PROPERTIES1 -{ - D2D1_PIXEL_FORMAT pixelFormat; - float dpiX; - float dpiY; - D2D1_BITMAP_OPTIONS bitmapOptions; - ID2D1ColorContext *colorContext; -} D2D1_BITMAP_PROPERTIES1; - -typedef struct D2D1_IMAGE_BRUSH_PROPERTIES -{ - D2D1_RECT_F sourceRectangle; - D2D1_EXTEND_MODE extendModeX; - D2D1_EXTEND_MODE extendModeY; - D2D1_INTERPOLATION_MODE interpolationMode; -} D2D1_IMAGE_BRUSH_PROPERTIES; - -typedef struct D2D1_BITMAP_BRUSH_PROPERTIES1 -{ - D2D1_EXTEND_MODE extendModeX; - D2D1_EXTEND_MODE extendModeY; - D2D1_INTERPOLATION_MODE interpolationMode; -} D2D1_BITMAP_BRUSH_PROPERTIES1; - -typedef struct D2D1_RENDERING_CONTROLS -{ - D2D1_BUFFER_PRECISION bufferPrecision; - D2D1_SIZE_U tileSize; -} D2D1_RENDERING_CONTROLS; - -typedef struct D2D1_LAYER_PARAMETERS1 -{ - D2D1_RECT_F contentBounds; - ID2D1Geometry *geometricMask; - D2D1_ANTIALIAS_MODE maskAntialiasMode; - D2D1_MATRIX_3X2_F maskTransform; - float opacity; - ID2D1Brush *opacityBrush; - D2D1_LAYER_OPTIONS1 layerOptions; -} D2D1_LAYER_PARAMETERS1; - -typedef struct D2D1_EFFECT_INPUT_DESCRIPTION -{ - ID2D1Effect *effect; - UINT32 inputIndex; - D2D1_RECT_F inputRectangle; -} D2D1_EFFECT_INPUT_DESCRIPTION; - -typedef struct D2D1_POINT_DESCRIPTION -{ - D2D1_POINT_2F point; - D2D1_POINT_2F unitTangentVector; - UINT32 endSegment; - UINT32 endFigure; - float lengthToEndSegment; -} D2D1_POINT_DESCRIPTION; - -typedef HRESULT (__stdcall *PD2D1_EFFECT_FACTORY)(IUnknown **effect); - -[ - object, - uuid(82237326-8111-4f7c-bcf4-b5c1175564fe), - local, -] -interface ID2D1GdiMetafileSink : IUnknown -{ - HRESULT ProcessRecord( - [in] DWORD type, - [in, optional] const void *data, - [in] DWORD size - ); -} - -[ - object, - uuid(2f543dc3-cfc1-4211-864f-cfd91c6f3395), - local, -] -interface ID2D1GdiMetafile : ID2D1Resource -{ - HRESULT Stream( - [in] ID2D1GdiMetafileSink *sink - ); - HRESULT GetBounds( - [out] D2D1_RECT_F *bounds - ); -} - -[ - object, - uuid(62baa2d2-ab54-41b7-b872-787e0106a421), - local, -] -interface ID2D1PathGeometry1 : ID2D1PathGeometry -{ - HRESULT ComputePointAndSegmentAtLength( - [in] float length, - [in] UINT32 start_segment, - [in, optional] const D2D1_MATRIX_3X2_F *transform, - [in] float tolerance, - [out] D2D1_POINT_DESCRIPTION *point_desc - ); -} - -[ - object, - uuid(483473d7-cd46-4f9d-9d3a-3112aa80159d), - local, -] -interface ID2D1Properties : IUnknown -{ - UINT32 GetPropertyCount(); - HRESULT GetPropertyName( - [in] UINT32 index, - [out] WCHAR *name, - [in] UINT32 name_count - ); - UINT32 GetPropertyNameLength( - [in] UINT32 index - ); - D2D1_PROPERTY_TYPE GetType( - [in] UINT32 index - ); - UINT32 GetPropertyIndex( - [in] const WCHAR *name - ); - HRESULT SetValueByName( - [in] const WCHAR *name, - [in] D2D1_PROPERTY_TYPE type, - [in] const BYTE *value, - [in] UINT32 value_size - ); - HRESULT SetValue( - [in] UINT32 index, - [in] D2D1_PROPERTY_TYPE type, - [in] const BYTE *value, - [in] UINT32 value_size - ); - HRESULT GetValueByName( - [in] const WCHAR *name, - [in] D2D1_PROPERTY_TYPE type, - [out] BYTE *value, - [in] UINT32 value_size - ); - HRESULT GetValue( - [in] UINT32 index, - [in] D2D1_PROPERTY_TYPE type, - [out] BYTE *value, - [in] UINT32 value_size - ); - UINT32 GetValueSize( - [in] UINT32 index - ); - HRESULT GetSubProperties( - [in] UINT32 index, - [out] ID2D1Properties **props - ); -} - -[ - object, - uuid(28211a43-7d89-476f-8181-2d6159b220ad), - local, -] -interface ID2D1Effect : ID2D1Properties -{ - void SetInput( - [in] UINT32 index, - [in] ID2D1Image *input, - [in] BOOL invalidate - ); - HRESULT SetInputCount( - [in] UINT32 count - ); - void GetInput( - [in] UINT32 index, - [out] ID2D1Image **input - ); - UINT32 GetInputCount(); - void GetOutput( - [out] ID2D1Image **output - ); -} - -[ - object, - uuid(689f1f85-c72e-4e33-8f19-85754efd5ace), - local, -] -interface ID2D1DrawingStateBlock1 : ID2D1DrawingStateBlock -{ - void GetDescription( - [out] D2D1_DRAWING_STATE_DESCRIPTION1 *desc - ); - void SetDescription( - [in] const D2D1_DRAWING_STATE_DESCRIPTION1 *desc - ); -} - -[ - object, - uuid(1c4820bb-5771-4518-a581-2fe4dd0ec657), - local, -] -interface ID2D1ColorContext : ID2D1Resource -{ - D2D1_COLOR_SPACE GetColorSpace(); - UINT32 GetProfileSize(); - HRESULT GetProfile( - [out] BYTE *profile, - [in] UINT32 size - ); -} - -[ - object, - uuid(a898a84c-3873-4588-b08b-ebbf978df041), - local, -] -interface ID2D1Bitmap1 : ID2D1Bitmap -{ - void GetColorContext( - [out] ID2D1ColorContext **context - ); - D2D1_BITMAP_OPTIONS GetOptions(); - HRESULT GetSurface( - [out] IDXGISurface **surface - ); - HRESULT Map( - [in] D2D1_MAP_OPTIONS options, - [out] D2D1_MAPPED_RECT *mapped_rect - ); - HRESULT Unmap(); -} - -[ - object, - uuid(41343a53-e41a-49a2-91cd-21793bbb62e5), - local, -] -interface ID2D1BitmapBrush1 : ID2D1BitmapBrush -{ - void SetInterpolationMode1( - [in] D2D1_INTERPOLATION_MODE mode - ); - D2D1_INTERPOLATION_MODE GetInterpolationMode1(); -} - -[ - object, - uuid(ae1572f4-5dd0-4777-998b-9279472ae63b), - local, -] -interface ID2D1GradientStopCollection1 : ID2D1GradientStopCollection -{ - void GetGradientStops1( - [out] D2D1_GRADIENT_STOP *gradient, - [in] UINT32 count - ); - D2D1_COLOR_SPACE GetPreInterpolationSpace(); - D2D1_COLOR_SPACE GetPostInterpolationSpace(); - D2D1_BUFFER_PRECISION GetBufferPrecision(); - D2D1_COLOR_INTERPOLATION_MODE GetColorInterpolationMode(); -} - -[ - object, - uuid(47dd575d-ac05-4cdd-8049-9b02cd16f44c), - local, -] -interface ID2D1Device : ID2D1Resource -{ - HRESULT CreateDeviceContext( - [in] D2D1_DEVICE_CONTEXT_OPTIONS options, - [out] ID2D1DeviceContext **context - ); - HRESULT CreatePrintControl( - [in] IWICImagingFactory *wic_factory, - [in] IPrintDocumentPackageTarget *document_target, - [in] const D2D1_PRINT_CONTROL_PROPERTIES *desc, - [out] ID2D1PrintControl **print_control - ); - void SetMaximumTextureMemory( - [in] UINT64 max_texture_memory - ); - UINT64 GetMaximumTextureMemory(); - HRESULT ClearResources( - [in, defaultvalue(0)] UINT msec_since_use - ); -} - -[ - object, - uuid(54d7898a-a061-40a7-bec7-e465bcba2c4f), - local, -] -interface ID2D1CommandSink : IUnknown -{ - HRESULT BeginDraw(); - HRESULT EndDraw(); - HRESULT SetAntialiasMode( - [in] D2D1_ANTIALIAS_MODE antialias_mode - ); - HRESULT SetTags( - [in] D2D1_TAG tag1, - [in] D2D1_TAG tag2 - ); - HRESULT SetTextAntialiasMode( - [in] D2D1_TEXT_ANTIALIAS_MODE antialias_mode - ); - HRESULT SetTextRenderingParams( - [in] IDWriteRenderingParams *text_rendering_params - ); - HRESULT SetTransform( - [in] const D2D1_MATRIX_3X2_F *transform - ); - HRESULT SetPrimitiveBlend( - [in] D2D1_PRIMITIVE_BLEND primitive_blend - ); - HRESULT SetUnitMode( - [in] D2D1_UNIT_MODE unit_mode - ); - HRESULT Clear( - [in] const D2D1_COLOR_F *color - ); - HRESULT DrawGlyphRun( - [in] D2D1_POINT_2F baseline_origin, - [in] const DWRITE_GLYPH_RUN *glyph_run, - [in] const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc, - [in] ID2D1Brush *brush, - [in] DWRITE_MEASURING_MODE measuring_mode - ); - HRESULT DrawLine( - [in] D2D1_POINT_2F p0, - [in] D2D1_POINT_2F p1, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - HRESULT DrawGeometry( - [in] ID2D1Geometry *geometry, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - HRESULT DrawRectangle( - [in] const D2D1_RECT_F *rect, - [in] ID2D1Brush *brush, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style - ); - HRESULT DrawBitmap( - [in] ID2D1Bitmap *bitmap, - [in] const D2D1_RECT_F *dst_rect, - [in] float opacity, - [in] D2D1_INTERPOLATION_MODE interpolation_mode, - [in] const D2D1_RECT_F *src_rect, - [in] const D2D1_MATRIX_4X4_F *perspective_transform - ); - HRESULT DrawImage( - [in] ID2D1Image *image, - [in] const D2D1_POINT_2F *target_offset, - [in] const D2D1_RECT_F *image_rect, - [in] D2D1_INTERPOLATION_MODE interpolation_mode, - [in] D2D1_COMPOSITE_MODE composite_mode - ); - HRESULT DrawGdiMetafile( - [in] ID2D1GdiMetafile *metafile, - [in] const D2D1_POINT_2F *target_offset - ); - HRESULT FillMesh( - [in] ID2D1Mesh *mesh, - [in] ID2D1Brush *brush - ); - HRESULT FillOpacityMask( - [in] ID2D1Bitmap *bitmap, - [in] ID2D1Brush *brush, - [in] const D2D1_RECT_F *dst_rect, - [in] const D2D1_RECT_F *src_rect - ); - HRESULT FillGeometry( - [in] ID2D1Geometry *geometry, - [in] ID2D1Brush *brush, - [in] ID2D1Brush *opacity_brush - ); - HRESULT FillRectangle( - [in] const D2D1_RECT_F *rect, - [in] ID2D1Brush *brush - ); - HRESULT PushAxisAlignedClip( - [in] const D2D1_RECT_F *clip_rect, - [in] D2D1_ANTIALIAS_MODE antialias_mode - ); - HRESULT PushLayer( - [in] const D2D1_LAYER_PARAMETERS1 *layer_parameters, - [in] ID2D1Layer *layer - ); - HRESULT PopAxisAlignedClip(); - HRESULT PopLayer(); -} - -[ - object, - uuid(b4f34a19-2383-4d76-94f6-ec343657c3dc), - local, -] -interface ID2D1CommandList : ID2D1Image -{ - HRESULT Stream( - [in] ID2D1CommandSink *sink - ); - HRESULT Close(); -} - -[ - object, - uuid(2c1d867d-c290-41c8-ae7e-34a98702e9a5), - local, -] -interface ID2D1PrintControl : IUnknown -{ - HRESULT AddPage( - [in] ID2D1CommandList *list, - [in] D2D_SIZE_F size, - [in, optional] IStream *stream, - [out, optional] D2D1_TAG *tag1, - [out, optional] D2D1_TAG *tag2 - ); - HRESULT Close(); -} - -[ - object, - uuid(fe9e984d-3f95-407c-b5db-cb94d4e8f87c), - local, -] -interface ID2D1ImageBrush : ID2D1Brush -{ - void SetImage( - [in] ID2D1Image *image - ); - void SetExtendModeX( - [in] D2D1_EXTEND_MODE extend_mode - ); - void SetExtendModeY( - [in] D2D1_EXTEND_MODE extend_mode - ); - void SetInterpolationMode( - [in] D2D1_INTERPOLATION_MODE interpolation_mode - ); - void SetSourceRectangle( - [in] const D2D1_RECT_F *rect - ); - void GetImage( - [out] ID2D1Image **image - ); - D2D1_EXTEND_MODE GetExtendModeX(); - D2D1_EXTEND_MODE GetExtendModeY(); - D2D1_INTERPOLATION_MODE GetInterpolationMode(); - void GetSourceRectangle( - [out] D2D1_RECT_F *rect - ); -} - -[ - object, - uuid(e8f7fe7a-191c-466d-ad95-975678bda998), - local, -] -interface ID2D1DeviceContext : ID2D1RenderTarget -{ - HRESULT CreateBitmap( - [in] D2D1_SIZE_U size, - [in] const void *src_data, - [in] UINT32 pitch, - [in] const D2D1_BITMAP_PROPERTIES1 *desc, - [out] ID2D1Bitmap1 **bitmap - ); - HRESULT CreateBitmapFromWicBitmap( - [in] IWICBitmapSource *bitmap_source, - [in] const D2D1_BITMAP_PROPERTIES1 *desc, - [out] ID2D1Bitmap1 **bitmap - ); - HRESULT CreateColorContext( - [in] D2D1_COLOR_SPACE space, - [in] const BYTE *profile, - [in] UINT32 profile_size, - [out] ID2D1ColorContext **color_context - ); - HRESULT CreateColorContextFromFilename( - [in] const WCHAR *filename, - [out] ID2D1ColorContext **color_context - ); - HRESULT CreateColorContextFromWicColorContext( - [in] IWICColorContext *wic_color_context, - [out] ID2D1ColorContext **color_context - ); - HRESULT CreateBitmapFromDxgiSurface( - [in] IDXGISurface *surface, - [in] const D2D1_BITMAP_PROPERTIES1 *desc, - [out] ID2D1Bitmap1 **bitmap - ); - HRESULT CreateEffect( - [in] REFCLSID effect_id, - [out] ID2D1Effect **effect - ); - HRESULT CreateGradientStopCollection( - [in] const D2D1_GRADIENT_STOP *stops, - [in] UINT32 stop_count, - [in] D2D1_COLOR_SPACE preinterpolation_space, - [in] D2D1_COLOR_SPACE postinterpolation_space, - [in] D2D1_BUFFER_PRECISION buffer_precision, - [in] D2D1_EXTEND_MODE extend_mode, - [in] D2D1_COLOR_INTERPOLATION_MODE color_interpolation_mode, - [out] ID2D1GradientStopCollection1 **gradient - ); - HRESULT CreateImageBrush( - [in] ID2D1Image *image, - [in] const D2D1_IMAGE_BRUSH_PROPERTIES *image_brush_desc, - [in] const D2D1_BRUSH_PROPERTIES *brush_desc, - [out] ID2D1ImageBrush **brush - ); - HRESULT CreateBitmapBrush( - [in] ID2D1Bitmap *bitmap, - [in] const D2D1_BITMAP_BRUSH_PROPERTIES1 *bitmap_brush_desc, - [in] const D2D1_BRUSH_PROPERTIES *brush_desc, - [out] ID2D1BitmapBrush1 **bitmap_brush - ); - HRESULT CreateCommandList( - [out] ID2D1CommandList **command_list - ); - BOOL IsDxgiFormatSupported( - [in] DXGI_FORMAT format - ); - BOOL IsBufferPrecisionSupported( - [in] D2D1_BUFFER_PRECISION buffer_precision - ); - void GetImageLocalBounds( - [in] ID2D1Image *image, - [out] D2D1_RECT_F *local_bounds - ); - HRESULT GetImageWorldBounds( - [in] ID2D1Image *image, - [out] D2D1_RECT_F *world_bounds - ); - HRESULT GetGlyphRunWorldBounds( - [in] D2D1_POINT_2F baseline_origin, - [in] const DWRITE_GLYPH_RUN *glyph_run, - [in] DWRITE_MEASURING_MODE measuring_mode, - [out] D2D1_RECT_F *bounds - ); - void GetDevice( - [out] ID2D1Device **device - ); - void SetTarget( - [in] ID2D1Image *target - ); - void GetTarget( - [out] ID2D1Image **target - ); - void SetRenderingControls( - [in] const D2D1_RENDERING_CONTROLS *rendering_controls - ); - void GetRenderingControls( - [out] D2D1_RENDERING_CONTROLS *rendering_controls - ); - void SetPrimitiveBlend( - [in] D2D1_PRIMITIVE_BLEND primitive_blend - ); - D2D1_PRIMITIVE_BLEND GetPrimitiveBlend(); - void SetUnitMode( - [in] D2D1_UNIT_MODE unit_mode - ); - D2D1_UNIT_MODE GetUnitMode(); - void DrawGlyphRun( - [in] D2D1_POINT_2F baseline_origin, - [in] const DWRITE_GLYPH_RUN *glyph_run, - [in] const DWRITE_GLYPH_RUN_DESCRIPTION *glyph_run_desc, - [in] ID2D1Brush *brush, - [in] DWRITE_MEASURING_MODE measuring_mode - ); - void DrawImage( - [in] ID2D1Image *image, - [in] const D2D1_POINT_2F *target_offset, - [in] const D2D1_RECT_F *image_rect, - [in] D2D1_INTERPOLATION_MODE interpolation_mode, - [in] D2D1_COMPOSITE_MODE composite_mode - ); - void DrawGdiMetafile( - [in] ID2D1GdiMetafile *metafile, - [in] const D2D1_POINT_2F *target_offset - ); - void DrawBitmap( - [in] ID2D1Bitmap *bitmap, - [in] const D2D1_RECT_F *dst_rect, - [in] float opacity, - [in] D2D1_INTERPOLATION_MODE interpolation_mode, - [in] const D2D1_RECT_F *src_rect, - [in] const D2D1_MATRIX_4X4_F *perspective_transform - ); - void PushLayer( - [in] const D2D1_LAYER_PARAMETERS1 *layer_parameters, - [in] ID2D1Layer *layer - ); - HRESULT InvalidateEffectInputRectangle( - [in] ID2D1Effect *effect, - [in] UINT32 input, - [in] const D2D1_RECT_F *input_rect - ); - HRESULT GetEffectInvalidRectangleCount( - [in] ID2D1Effect *effect, - [out] UINT32 *rect_count - ); - HRESULT GetEffectInvalidRectangles( - [in] ID2D1Effect *effect, - [out] D2D1_RECT_F *rectangles, - [in] UINT32 rect_count - ); - HRESULT GetEffectRequiredInputRectangles( - [in] ID2D1Effect *effect, - [in] const D2D1_RECT_F *image_rect, - [in] const D2D1_EFFECT_INPUT_DESCRIPTION *desc, - [out] D2D1_RECT_F *input_rect, - [in] UINT32 input_count - ); - void FillOpacityMask( - [in] ID2D1Bitmap *mask, - [in] ID2D1Brush *brush, - [in] const D2D1_RECT_F *dst_rect, - [in] const D2D1_RECT_F *src_rect - ); -} - -[ - object, - uuid(10a72a66-e91c-43f4-993f-ddf4b82b0b4a), - local, -] -interface ID2D1StrokeStyle1 : ID2D1StrokeStyle -{ - D2D1_STROKE_TRANSFORM_TYPE GetStrokeTransformType(); -} - -[ - object, - uuid(bb12d362-daee-4b9a-aa1d-14ba401cfa1f), - local, -] -interface ID2D1Factory1 : ID2D1Factory -{ - HRESULT CreateDevice( - [in] IDXGIDevice *dxgi_device, - [out] ID2D1Device **device - ); - HRESULT CreateStrokeStyle( - [in] const D2D1_STROKE_STYLE_PROPERTIES1 *desc, - [in, size_is(dash_count)] const float *dashes, - [in] UINT32 dash_count, - [out] ID2D1StrokeStyle1 **stroke_style - ); - HRESULT CreatePathGeometry( - [out] ID2D1PathGeometry1 **geometry - ); - HRESULT CreateDrawingStateBlock( - [in] const D2D1_DRAWING_STATE_DESCRIPTION1 *desc, - [in] IDWriteRenderingParams *text_rendering_params, - [out] ID2D1DrawingStateBlock1 **state_block - ); - HRESULT CreateGdiMetafile( - [in] IStream *stream, - [out] ID2D1GdiMetafile **metafile - ); - HRESULT RegisterEffectFromStream( - [in] REFCLSID effect_id, - [in] IStream *property_xml, - [in, size_is(binding_count)] const struct D2D1_PROPERTY_BINDING *bindings, - [in] UINT32 binding_count, - [in] PD2D1_EFFECT_FACTORY effect_factory - ); - HRESULT RegisterEffectFromString( - [in] REFCLSID effect_id, - [in] const WCHAR *property_xml, - [in, size_is(binding_count)] const struct D2D1_PROPERTY_BINDING *bindings, - [in] UINT32 binding_count, - [in] PD2D1_EFFECT_FACTORY effect_factory - ); - HRESULT UnregisterEffect( - [in] REFCLSID effect_id - ); - HRESULT GetRegisteredEffects( - [out, size_is(effect_count)] CLSID *effects, - [in] UINT32 effect_count, - [out] UINT32 *returned, - [out] UINT32 *registered - ); - HRESULT GetEffectProperties( - [in] REFCLSID effect_id, - [out] ID2D1Properties **props - ); -} - -[ - object, - uuid(31e6e7bc-e0ff-4d46-8c64-a0a8c41c15d3), - local, -] -interface ID2D1Multithread : IUnknown -{ - BOOL GetMultithreadProtected(); - void Enter(); - void Leave(); -} - -[local] HRESULT __stdcall D2D1CreateDevice(IDXGIDevice *dxgi_device, - const D2D1_CREATION_PROPERTIES *creation_properties, ID2D1Device **device); -[local] void __stdcall D2D1SinCos(float angle, float *s, float *c); -[local] float __stdcall D2D1Tan(float angle); -[local] float __stdcall D2D1Vec3Length(float x, float y, float z); -[local] D2D1_COLOR_F __stdcall D2D1ConvertColorSpace(D2D1_COLOR_SPACE src_colour_space, - D2D1_COLOR_SPACE dst_colour_space, const D2D1_COLOR_F *colour); diff --git a/mingw-w64-headers/include/d2d1_2.idl b/mingw-w64-headers/include/d2d1_2.idl deleted file mode 100644 index 982131667..000000000 --- a/mingw-w64-headers/include/d2d1_2.idl +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright 2018 Nikolay Sivov for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -import "d2d1_1.idl"; -import "d2d1effects_1.idl"; - -typedef enum D2D1_RENDERING_PRIORITY -{ - D2D1_RENDERING_PRIORITY_NORMAL = 0, - D2D1_RENDERING_PRIORITY_LOW = 1, - D2D1_RENDERING_PRIORITY_FORCE_DWORD = 0xffffffff, -} D2D1_RENDERING_PRIORITY; - -[ - object, - uuid(a16907d7-bc02-4801-99e8-8cf7f485f774), - local, -] -interface ID2D1GeometryRealization : ID2D1Resource -{ -} - -[ - object, - uuid(d37f57e4-6908-459f-a199-e72f24f79987), - local, -] -interface ID2D1DeviceContext1 : ID2D1DeviceContext -{ - HRESULT CreateFilledGeometryRealization( - [in] ID2D1Geometry *geometry, - [in] float tolerance, - [out] ID2D1GeometryRealization **realization - ); - HRESULT CreateStrokedGeometryRealization( - [in] ID2D1Geometry *geometry, - [in] float tolerance, - [in] float stroke_width, - [in] ID2D1StrokeStyle *stroke_style, - [out] ID2D1GeometryRealization **realization - ); - void DrawGeometryRealization( - [in] ID2D1GeometryRealization *realization, - [in] ID2D1Brush *brush - ); -} - -[ - object, - uuid(d21768e1-23a4-4823-a14b-7c3eba85d658), - local, -] -interface ID2D1Device1 : ID2D1Device -{ - D2D1_RENDERING_PRIORITY GetRenderingPriority(); - void SetRenderingPriority( - [in] D2D1_RENDERING_PRIORITY priority - ); - HRESULT CreateDeviceContext( - [in] D2D1_DEVICE_CONTEXT_OPTIONS options, - [out] ID2D1DeviceContext1 **device_context - ); -} - -[ - object, - uuid(94f81a73-9212-4376-9c58-b16a3a0d3992), - local, -] -interface ID2D1Factory2 : ID2D1Factory1 -{ - HRESULT CreateDevice( - [in] IDXGIDevice *dxgi_device, - [out] ID2D1Device1 **device - ); -} - -[ - object, - uuid(9eb767fd-4269-4467-b8c2-eb30cb305743), - local, -] -interface ID2D1CommandSink1 : ID2D1CommandSink -{ - HRESULT SetPrimitiveBlend1( - [in] D2D1_PRIMITIVE_BLEND primitive_blend - ); -} diff --git a/mingw-w64-headers/include/d2d1_3.idl b/mingw-w64-headers/include/d2d1_3.idl deleted file mode 100644 index 9ca42e661..000000000 --- a/mingw-w64-headers/include/d2d1_3.idl +++ /dev/null @@ -1,591 +0,0 @@ -/* - * Copyright 2022 Ziqing Hui for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -import "d2d1_2.idl"; -import "d2d1effects_2.idl"; - -interface IDWriteFontFace; - -typedef enum D2D1_INK_NIB_SHAPE -{ - D2D1_INK_NIB_SHAPE_ROUND = 0x0, - D2D1_INK_NIB_SHAPE_SQUARE = 0x1, - D2D1_INK_NIB_SHAPE_FORCE_DWORD = 0xffffffff -} D2D1_INK_NIB_SHAPE; - -typedef enum D2D1_PATCH_EDGE_MODE -{ - D2D1_PATCH_EDGE_MODE_ALIASED = 0x0, - D2D1_PATCH_EDGE_MODE_ANTIALIASED = 0x1, - D2D1_PATCH_EDGE_MODE_ALIASED_INFLATED = 0x2, - D2D1_PATCH_EDGE_MODE_FORCE_DWORD = 0xffffffff -} D2D1_PATCH_EDGE_MODE; - -typedef enum D2D1_ORIENTATION -{ - D2D1_ORIENTATION_DEFAULT = 0x1, - D2D1_ORIENTATION_FLIP_HORIZONTAL = 0x2, - D2D1_ORIENTATION_ROTATE_CLOCKWISE180 = 0x3, - D2D1_ORIENTATION_ROTATE_CLOCKWISE180_FLIP_HORIZONTAL = 0x4, - D2D1_ORIENTATION_ROTATE_CLOCKWISE90_FLIP_HORIZONTAL = 0x5, - D2D1_ORIENTATION_ROTATE_CLOCKWISE270 = 0x6, - D2D1_ORIENTATION_ROTATE_CLOCKWISE270_FLIP_HORIZONTAL = 0x7, - D2D1_ORIENTATION_ROTATE_CLOCKWISE90 = 0x8, - D2D1_ORIENTATION_FORCE_DWORD = 0xffffffff -} D2D1_ORIENTATION; - -typedef enum D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS -{ - D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS_NONE = 0x0, - D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS_DISABLE_DPI_SCALE = 0x1, - D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS; - -typedef enum D2D1_IMAGE_SOURCE_LOADING_OPTIONS -{ - D2D1_IMAGE_SOURCE_LOADING_OPTIONS_NONE = 0x0, - D2D1_IMAGE_SOURCE_LOADING_OPTIONS_RELEASE_SOURCE = 0x1, - D2D1_IMAGE_SOURCE_LOADING_OPTIONS_CACHE_ON_DEMAND = 0x2, - D2D1_IMAGE_SOURCE_LOADING_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_IMAGE_SOURCE_LOADING_OPTIONS; - -typedef enum D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS -{ - D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_NONE = 0x0, - D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_LOW_QUALITY_PRIMARY_CONVERSION = 0x1, - D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS; - -typedef enum D2D1_SPRITE_OPTIONS -{ - D2D1_SPRITE_OPTIONS_NONE = 0x0, - D2D1_SPRITE_OPTIONS_CLAMP_TO_SOURCE_RECTANGLE = 0x1, - D2D1_SPRITE_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_SPRITE_OPTIONS; - -typedef enum D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION -{ - D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DEFAULT = 0x0, - D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_DISABLE = 0x1, - D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION_FORCE_DWORD = 0xffffffff -} D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION; - -typedef struct D2D1_INK_POINT -{ - float x; - float y; - float radius; -} D2D1_INK_POINT; - -typedef struct D2D1_INK_BEZIER_SEGMENT -{ - D2D1_INK_POINT point1; - D2D1_INK_POINT point2; - D2D1_INK_POINT point3; -} D2D1_INK_BEZIER_SEGMENT; - -typedef struct D2D1_INK_STYLE_PROPERTIES -{ - D2D1_INK_NIB_SHAPE nibShape; - D2D1_MATRIX_3X2_F nibTransform; -} D2D1_INK_STYLE_PROPERTIES; - -typedef struct D2D1_GRADIENT_MESH_PATCH -{ - D2D1_POINT_2F point00; - D2D1_POINT_2F point01; - D2D1_POINT_2F point02; - D2D1_POINT_2F point03; - D2D1_POINT_2F point10; - D2D1_POINT_2F point11; - D2D1_POINT_2F point12; - D2D1_POINT_2F point13; - D2D1_POINT_2F point20; - D2D1_POINT_2F point21; - D2D1_POINT_2F point22; - D2D1_POINT_2F point23; - D2D1_POINT_2F point30; - D2D1_POINT_2F point31; - D2D1_POINT_2F point32; - D2D1_POINT_2F point33; - D2D1_COLOR_F color00; - D2D1_COLOR_F color03; - D2D1_COLOR_F color30; - D2D1_COLOR_F color33; - D2D1_PATCH_EDGE_MODE topEdgeMode; - D2D1_PATCH_EDGE_MODE leftEdgeMode; - D2D1_PATCH_EDGE_MODE bottomEdgeMode; - D2D1_PATCH_EDGE_MODE rightEdgeMode; -} D2D1_GRADIENT_MESH_PATCH; - -typedef struct D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES -{ - D2D1_ORIENTATION orientation; - float scaleX; - float scaleY; - D2D1_INTERPOLATION_MODE interpolationMode; - D2D1_TRANSFORMED_IMAGE_SOURCE_OPTIONS options; -} D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES; - -[ - object, - uuid(bae8b344-23fc-4071-8cb5-d05d6f073848), - local, -] -interface ID2D1InkStyle : ID2D1Resource -{ - void SetNibTransform( - [in] const D2D1_MATRIX_3X2_F *transform - ); - void GetNibTransform( - [out] D2D1_MATRIX_3X2_F *transform - ); - void SetNibShape( - [in] D2D1_INK_NIB_SHAPE shape - ); - D2D1_INK_NIB_SHAPE GetNibShape(); -} - -[ - object, - uuid(b499923b-7029-478f-a8b3-432c7c5f5312), - local, -] -interface ID2D1Ink : ID2D1Resource -{ - void SetStartPoint( - [in] const D2D1_INK_POINT *start_point - ); - D2D1_INK_POINT GetStartPoint(); - HRESULT AddSegments( - [in] const D2D1_INK_BEZIER_SEGMENT *segments, - [in] UINT32 segment_count - ); - HRESULT RemoveSegmentsAtEnd( - [in] UINT32 segment_count - ); - HRESULT SetSegments( - [in] UINT32 start_segment, - [in] const D2D1_INK_BEZIER_SEGMENT *segments, - [in] UINT32 segment_count - ); - HRESULT SetSegmentAtEnd( - [in] const D2D1_INK_BEZIER_SEGMENT *segment - ); - UINT32 GetSegmentCount(); - HRESULT GetSegments( - [in] UINT32 start_segment, - [out] D2D1_INK_BEZIER_SEGMENT *segments, - [in] UINT32 segment_count - ); - HRESULT StreamAsGeometry( - [in, optional] ID2D1InkStyle *ink_style, - [in, optional] const D2D1_MATRIX_3X2_F *world_transform, - [in] float flattening_tolerance, - [in] ID2D1SimplifiedGeometrySink *geometry_sink - ); - HRESULT GetBounds( - [in, optional] ID2D1InkStyle *ink_style, - [in, optional] const D2D1_MATRIX_3X2_F *world_transform, - [out] D2D1_RECT_F *bounds - ); -} - -[ - object, - uuid(f292e401-c050-4cde-83d7-04962d3b23c2), - local, -] -interface ID2D1GradientMesh : ID2D1Resource -{ - UINT32 GetPatchCount(); - HRESULT GetPatches( - [in] UINT32 start_index, - [out] D2D1_GRADIENT_MESH_PATCH *patches, - [in] UINT32 patch_count - ); -} - -[ - object, - uuid(c9b664e5-74a1-4378-9ac2-eefc37a3f4d8), - local, -] -interface ID2D1ImageSource : ID2D1Image -{ - HRESULT OfferResources(); - HRESULT TryReclaimResources( - [out] BOOL *resources_discarded - ); -} - -[ - object, - uuid(77395441-1c8f-4555-8683-f50dab0fe792), - local, -] -interface ID2D1ImageSourceFromWic : ID2D1ImageSource -{ - HRESULT EnsureCached( - [in, optional] const D2D1_RECT_U *rect_to_fill - ); - HRESULT TrimCache( - [in, optional] const D2D1_RECT_U *rect_to_preserve - ); - void GetSource( - [out] IWICBitmapSource **source - ); -} - -[ - object, - uuid(7f1f79e5-2796-416c-8f55-700f911445e5), - local, -] -interface ID2D1TransformedImageSource : ID2D1Image -{ - void GetSource( - [out] ID2D1ImageSource **source - ); - void GetProperties( - [out] D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES *out - ); -} - -[ - object, - uuid(53dd9855-a3b0-4d5b-82e1-26e25c5e5797), - local, -] -interface ID2D1LookupTable3D : ID2D1Resource -{ -} - -[ - object, - uuid(4dc583bf-3a10-438a-8722-e9765224f1f1), - local, -] -interface ID2D1SpriteBatch : ID2D1Resource -{ - HRESULT AddSprites( - [in] UINT32 sprite_count, - [in] const D2D1_RECT_F *destination_rectangles, - [in] const D2D1_RECT_U *source_rectangles, - [in] const D2D1_COLOR_F *colors, - [in] const D2D1_MATRIX_3X2_F *transforms, - [in] UINT32 destination_rectangles_stride, - [in] UINT32 source_rectangles_stride, - [in] UINT32 colors_stride, - [in] UINT32 transforms_stride - ); - HRESULT SetSprites( - [in] UINT32 start_index, - [in] UINT32 sprite_count, - [in] const D2D1_RECT_F *destination_rectangles, - [in] const D2D1_RECT_U *source_rectangles, - [in] const D2D1_COLOR_F *colors, - [in] const D2D1_MATRIX_3X2_F *transforms, - [in] UINT32 destination_rectangles_stride, - [in] UINT32 source_rectangles_stride, - [in] UINT32 colors_stride, - [in] UINT32 transforms_stride - ); - HRESULT GetSprites( - [in] UINT32 start_index, - [in] UINT32 sprite_count, - [out, optional] D2D1_RECT_F *destination_rectangles, - [out, optional] D2D1_RECT_U *source_rectangles, - [out, optional] D2D1_COLOR_F *colors, - [out, optional] D2D1_MATRIX_3X2_F *transforms - ); - UINT32 GetSpriteCount(void); - void Clear(void); -} - -[ - object, - uuid(af671749-d241-4db8-8e41-dcc2e5c1a438), - local, -] -interface ID2D1SvgGlyphStyle : ID2D1Resource -{ - HRESULT SetFill( - [in, optional] ID2D1Brush *brush - ); - void GetFill( - [out] ID2D1Brush **brush - ); - HRESULT SetStroke( - [in, optional] ID2D1Brush *brush, - [in] FLOAT stroke_width, - [in, optional] const FLOAT *dashes, - [in, optional] UINT32 dashes_count, - [in] FLOAT dash_offset - ); - UINT32 GetStrokeDashesCount(void); - void GetStroke( - [out, optional] ID2D1Brush **brush, - [out, optional] FLOAT *stroke_width, - [out, optional] FLOAT *dashes, - [in, optional] UINT32 dashes_count, - [out, optional] FLOAT *dash_offset - ); -} - -[ - object, - uuid(394ea6a3-0c34-4321-950b-6ca20f0be6c7), - local, -] -interface ID2D1DeviceContext2 : ID2D1DeviceContext1 -{ - HRESULT CreateInk( - [in] const D2D1_INK_POINT *start_point, - [out] ID2D1Ink **ink - ); - HRESULT CreateInkStyle( - [in, optional] const D2D1_INK_STYLE_PROPERTIES *ink_style_properties, - [out] ID2D1InkStyle **ink_style - ); - HRESULT CreateGradientMesh( - [in] const D2D1_GRADIENT_MESH_PATCH *patches, - [in] UINT32 patches_count, - [out] ID2D1GradientMesh **gradient_mesh - ); - HRESULT CreateImageSourceFromWic( - [in] IWICBitmapSource *wic_bitmap_source, - [in] D2D1_IMAGE_SOURCE_LOADING_OPTIONS loading_options, - [in] D2D1_ALPHA_MODE alpha_mode, - [out] ID2D1ImageSourceFromWic **image_source - ); - HRESULT CreateLookupTable3D( - [in] D2D1_BUFFER_PRECISION precision, - [in] const UINT32 *extents, - [in] const BYTE *data, - [in] UINT32 data_count, - [in] const UINT32 *strides, - [out] ID2D1LookupTable3D **lookup_table - ); - HRESULT CreateImageSourceFromDxgi( - [in] IDXGISurface **surfaces, - [in] UINT32 surface_count, - [in] DXGI_COLOR_SPACE_TYPE color_space, - [in] D2D1_IMAGE_SOURCE_FROM_DXGI_OPTIONS options, - [out] ID2D1ImageSource **image_source - ); - HRESULT GetGradientMeshWorldBounds( - [in] ID2D1GradientMesh *gradient_mesh, - [out] D2D1_RECT_F *bounds - ); - void DrawInk( - [in] ID2D1Ink *ink, - [in] ID2D1Brush *brush, - [in, optional] ID2D1InkStyle *ink_style - ); - void DrawGradientMesh( - [in] ID2D1GradientMesh *gradient_mesh - ); - void DrawGdiMetafile( - [in] ID2D1GdiMetafile *gdi_metafile, - [in, optional] const D2D1_RECT_F *dst_rect, - [in, optional] const D2D1_RECT_F *src_rect - ); - HRESULT CreateTransformedImageSource( - [in] ID2D1ImageSource *source, - [in] const D2D1_TRANSFORMED_IMAGE_SOURCE_PROPERTIES *props, - [out] ID2D1TransformedImageSource **transformed - ); -} - -[ - object, - uuid(235a7496-8351-414c-bcd4-6672ab2d8e00), - local, -] -interface ID2D1DeviceContext3 : ID2D1DeviceContext2 -{ - HRESULT CreateSpriteBatch( - [out] ID2D1SpriteBatch **sprite_batch - ); - void DrawSpriteBatch( - [in] ID2D1SpriteBatch *sprite_batch, - [in] UINT32 start_index, - [in] UINT32 sprite_count, - [in] ID2D1Bitmap *bitmap, - [in] D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - [in] D2D1_SPRITE_OPTIONS sprite_options - ); -} - -[ - object, - uuid(8c427831-3d90-4476-b647-c4fae349e4db), - local, -] -interface ID2D1DeviceContext4 : ID2D1DeviceContext3 -{ - HRESULT CreateSvgGlyphStyle( - [out] ID2D1SvgGlyphStyle **svg_glyph_style - ); - void DrawText( - [in] const WCHAR *string, - [in] UINT32 string_length, - [in] IDWriteTextFormat *text_format, - [in] const D2D1_RECT_F *layout_rect, - [in, optional] ID2D1Brush *default_fill_brush, - [in, optional] ID2D1SvgGlyphStyle *svg_glyph_style, - [in, optional] UINT32 color_palette_index, - [in] D2D1_DRAW_TEXT_OPTIONS options, - [in] DWRITE_MEASURING_MODE measuring_mode - ); - void DrawTextLayout( - [in] D2D1_POINT_2F origin, - [in] IDWriteTextLayout *text_layout, - [in, optional] ID2D1Brush *default_fill_brush, - [in, optional] ID2D1SvgGlyphStyle *svg_glyph_style, - [in, optional] UINT32 color_palette_index, - [in] D2D1_DRAW_TEXT_OPTIONS options - ); - void DrawColorBitmapGlyphRun( - [in] DWRITE_GLYPH_IMAGE_FORMATS glyph_image_format, - [in] D2D1_POINT_2F baseline_origin, - [in] const DWRITE_GLYPH_RUN *glyph_run, - [in] DWRITE_MEASURING_MODE measuring_mode, - [in] D2D1_COLOR_BITMAP_GLYPH_SNAP_OPTION bitmap_snap_option - ); - void DrawSvgGlyphRun( - [in] D2D1_POINT_2F baseline_origin, - [in] const DWRITE_GLYPH_RUN *glyph_run, - [in, optional] ID2D1Brush *default_fill_brush, - [in, optional] ID2D1SvgGlyphStyle *svg_glyph_style, - [in, optional]UINT32 color_palette_index, - [in] DWRITE_MEASURING_MODE measuring_mode - ); - HRESULT GetColorBitmapGlyphImage( - [in] DWRITE_GLYPH_IMAGE_FORMATS glyph_image_format, - [in] D2D1_POINT_2F glyph_origin, - [in] IDWriteFontFace *font_face, - [in] FLOAT font_em_size, - [in] UINT16 glyph_index, - [in] BOOL is_sideways, - [in, optional] const D2D1_MATRIX_3X2_F *world_transform, - [in] FLOAT dpi_x, - [in] FLOAT dpi_y, - [out] D2D1_MATRIX_3X2_F *glyph_transform, - [out] ID2D1Image **glyph_image - ); - HRESULT GetSvgGlyphImage( - [in] D2D1_POINT_2F glyph_origin, - [in] IDWriteFontFace *font_face, - [in] FLOAT font_em_size, - [in] UINT16 glyph_index, - [in] BOOL is_sideways, - [in, optional] const D2D1_MATRIX_3X2_F *world_transform, - [in, optional] ID2D1Brush *default_fill_brush, - [in, optional] ID2D1SvgGlyphStyle *svg_glyph_style, - [in] UINT32 color_palette_index, - [out] D2D1_MATRIX_3X2_F *glyph_transform, - [out] ID2D1CommandList **glyph_image - ); -} - -[ - object, - uuid(a44472e1-8dfb-4e60-8492-6e2861c9ca8b), - local, -] -interface ID2D1Device2 : ID2D1Device1 -{ - HRESULT CreateDeviceContext( - [in] D2D1_DEVICE_CONTEXT_OPTIONS options, - [out] ID2D1DeviceContext2 **context - ); - void FlushDeviceContexts( - [in] ID2D1Bitmap *bitmap - ); - HRESULT GetDxgiDevice( - [out] IDXGIDevice **dxgi_device - ); -} - -[ - object, - uuid(0869759f-4f00-413f-b03e-2bda45404d0f), - local, -] -interface ID2D1Factory3 : ID2D1Factory2 -{ - HRESULT CreateDevice( - [in] IDXGIDevice *dxgi_device, - [out] ID2D1Device2 **d2d_device - ); -} - -[ - object, - uuid(3bab440e-417e-47df-a2e2-bc0be6a00916), - local, -] -interface ID2D1CommandSink2 : ID2D1CommandSink1 -{ - HRESULT DrawInk( - [in] ID2D1Ink *ink, - [in] ID2D1Brush *brush, - [in] ID2D1InkStyle *ink_style - ); - - HRESULT DrawGradientMesh( - [in] ID2D1GradientMesh *gradient_mesh - ); - - HRESULT DrawGdiMetafile( - [in] ID2D1GdiMetafile *gdi_metafile, - [in] const D2D1_RECT_F *dest_rect, - [in] const D2D1_RECT_F *src_rect - ); -} - -[ - object, - uuid(18079135-4cf3-4868-bc8e-06067e6d242d), - local, -] -interface ID2D1CommandSink3 : ID2D1CommandSink2 -{ - HRESULT DrawSpriteBatch( - [in] ID2D1SpriteBatch *sprite_batch, - [in] UINT32 start_index, - [in] UINT32 sprite_count, - [in] ID2D1Bitmap *bitmap, - [in] D2D1_BITMAP_INTERPOLATION_MODE interpolation_mode, - [in] D2D1_SPRITE_OPTIONS sprite_options - ); -} - -[ - object, - uuid(c78a6519-40d6-4218-b2de-beeeb744bb3e), - local, -] -interface ID2D1CommandSink4 : ID2D1CommandSink3 -{ - HRESULT SetPrimitiveBlend2( - [in] D2D1_PRIMITIVE_BLEND primitive_blend - ); -} diff --git a/mingw-w64-headers/include/d2d1effectauthor.h b/mingw-w64-headers/include/d2d1effectauthor.h index 4cf2a38d2..4b42394d3 100644 --- a/mingw-w64-headers/include/d2d1effectauthor.h +++ b/mingw-w64-headers/include/d2d1effectauthor.h @@ -1,277 +1,96 @@ -/*** Autogenerated by WIDL 8.12 from include/d2d1effectauthor.idl - Do not edit ***/ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the mingw-w64 runtime package. + * No warranty is given; refer to the file DISCLAIMER.PD within this package. + */ -#ifdef _WIN32 -#ifndef __REQUIRED_RPCNDR_H_VERSION__ -#define __REQUIRED_RPCNDR_H_VERSION__ 475 -#endif -#include -#include -#endif - -#ifndef COM_NO_WINDOWS_H -#include -#include -#endif - -#ifndef __d2d1effectauthor_h__ -#define __d2d1effectauthor_h__ - -#ifndef __WIDL_INLINE -#if defined(__cplusplus) || defined(_MSC_VER) -#define __WIDL_INLINE inline -#elif defined(__GNUC__) -#define __WIDL_INLINE __inline__ -#endif -#endif - -/* Forward declarations */ - -#ifndef __ID2D1VertexBuffer_FWD_DEFINED__ -#define __ID2D1VertexBuffer_FWD_DEFINED__ -typedef interface ID2D1VertexBuffer ID2D1VertexBuffer; -#ifdef __cplusplus -interface ID2D1VertexBuffer; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ResourceTexture_FWD_DEFINED__ -#define __ID2D1ResourceTexture_FWD_DEFINED__ -typedef interface ID2D1ResourceTexture ID2D1ResourceTexture; -#ifdef __cplusplus -interface ID2D1ResourceTexture; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1RenderInfo_FWD_DEFINED__ -#define __ID2D1RenderInfo_FWD_DEFINED__ -typedef interface ID2D1RenderInfo ID2D1RenderInfo; -#ifdef __cplusplus -interface ID2D1RenderInfo; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1DrawInfo_FWD_DEFINED__ -#define __ID2D1DrawInfo_FWD_DEFINED__ -typedef interface ID2D1DrawInfo ID2D1DrawInfo; -#ifdef __cplusplus -interface ID2D1DrawInfo; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ComputeInfo_FWD_DEFINED__ -#define __ID2D1ComputeInfo_FWD_DEFINED__ -typedef interface ID2D1ComputeInfo ID2D1ComputeInfo; -#ifdef __cplusplus -interface ID2D1ComputeInfo; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1TransformNode_FWD_DEFINED__ -#define __ID2D1TransformNode_FWD_DEFINED__ -typedef interface ID2D1TransformNode ID2D1TransformNode; -#ifdef __cplusplus -interface ID2D1TransformNode; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1TransformGraph_FWD_DEFINED__ -#define __ID2D1TransformGraph_FWD_DEFINED__ -typedef interface ID2D1TransformGraph ID2D1TransformGraph; -#ifdef __cplusplus -interface ID2D1TransformGraph; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1Transform_FWD_DEFINED__ -#define __ID2D1Transform_FWD_DEFINED__ -typedef interface ID2D1Transform ID2D1Transform; -#ifdef __cplusplus -interface ID2D1Transform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1DrawTransform_FWD_DEFINED__ -#define __ID2D1DrawTransform_FWD_DEFINED__ -typedef interface ID2D1DrawTransform ID2D1DrawTransform; -#ifdef __cplusplus -interface ID2D1DrawTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ComputeTransform_FWD_DEFINED__ -#define __ID2D1ComputeTransform_FWD_DEFINED__ -typedef interface ID2D1ComputeTransform ID2D1ComputeTransform; -#ifdef __cplusplus -interface ID2D1ComputeTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1AnalysisTransform_FWD_DEFINED__ -#define __ID2D1AnalysisTransform_FWD_DEFINED__ -typedef interface ID2D1AnalysisTransform ID2D1AnalysisTransform; -#ifdef __cplusplus -interface ID2D1AnalysisTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1SourceTransform_FWD_DEFINED__ -#define __ID2D1SourceTransform_FWD_DEFINED__ -typedef interface ID2D1SourceTransform ID2D1SourceTransform; -#ifdef __cplusplus -interface ID2D1SourceTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1ConcreteTransform_FWD_DEFINED__ -#define __ID2D1ConcreteTransform_FWD_DEFINED__ -typedef interface ID2D1ConcreteTransform ID2D1ConcreteTransform; -#ifdef __cplusplus -interface ID2D1ConcreteTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BlendTransform_FWD_DEFINED__ -#define __ID2D1BlendTransform_FWD_DEFINED__ -typedef interface ID2D1BlendTransform ID2D1BlendTransform; -#ifdef __cplusplus -interface ID2D1BlendTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BorderTransform_FWD_DEFINED__ -#define __ID2D1BorderTransform_FWD_DEFINED__ -typedef interface ID2D1BorderTransform ID2D1BorderTransform; -#ifdef __cplusplus -interface ID2D1BorderTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1OffsetTransform_FWD_DEFINED__ -#define __ID2D1OffsetTransform_FWD_DEFINED__ -typedef interface ID2D1OffsetTransform ID2D1OffsetTransform; -#ifdef __cplusplus -interface ID2D1OffsetTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1BoundsAdjustmentTransform_FWD_DEFINED__ -#define __ID2D1BoundsAdjustmentTransform_FWD_DEFINED__ -typedef interface ID2D1BoundsAdjustmentTransform ID2D1BoundsAdjustmentTransform; -#ifdef __cplusplus -interface ID2D1BoundsAdjustmentTransform; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1EffectContext_FWD_DEFINED__ -#define __ID2D1EffectContext_FWD_DEFINED__ -typedef interface ID2D1EffectContext ID2D1EffectContext; -#ifdef __cplusplus -interface ID2D1EffectContext; -#endif /* __cplusplus */ -#endif - -#ifndef __ID2D1EffectImpl_FWD_DEFINED__ -#define __ID2D1EffectImpl_FWD_DEFINED__ -typedef interface ID2D1EffectImpl ID2D1EffectImpl; -#ifdef __cplusplus -interface ID2D1EffectImpl; -#endif /* __cplusplus */ -#endif - -/* Headers for imported files */ +#ifndef _D2D1_EFFECT_AUTHOR_H_ +#define _D2D1_EFFECT_AUTHOR_H_ #include -#ifdef __cplusplus -extern "C" { -#endif +typedef HRESULT (CALLBACK *PD2D1_PROPERTY_SET_FUNCTION)(IUnknown*,const BYTE*,UINT32); +typedef HRESULT (CALLBACK *PD2D1_PROPERTY_GET_FUNCTION)(const IUnknown*,BYTE*,UINT32 dataSize,UINT32*); -typedef HRESULT (__stdcall *PD2D1_PROPERTY_SET_FUNCTION)(IUnknown *effect,const BYTE *data,UINT32 data_size); -typedef HRESULT (__stdcall *PD2D1_PROPERTY_GET_FUNCTION)(const IUnknown *effect,BYTE *data,UINT32 data_size,UINT32 *actual_size); -typedef enum D2D1_FILTER { - D2D1_FILTER_MIN_MAG_MIP_POINT = 0x0, - D2D1_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x1, - D2D1_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x4, - D2D1_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x5, - D2D1_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, - D2D1_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, - D2D1_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, - D2D1_FILTER_MIN_MAG_MIP_LINEAR = 0x15, - D2D1_FILTER_ANISOTROPIC = 0x55, - D2D1_FILTER_FORCE_DWORD = 0xffffffff -} D2D1_FILTER; -typedef enum D2D1_FEATURE { - D2D1_FEATURE_DOUBLES = 0x0, - D2D1_FEATURE_D3D10_X_HARDWARE_OPTIONS = 0x1, - D2D1_FEATURE_FORCE_DWORD = 0xffffffff -} D2D1_FEATURE; -typedef struct D2D1_PROPERTY_BINDING { - const WCHAR *propertyName; - PD2D1_PROPERTY_SET_FUNCTION setFunction; - PD2D1_PROPERTY_GET_FUNCTION getFunction; -} D2D1_PROPERTY_BINDING; -typedef enum D2D1_CHANNEL_DEPTH { - D2D1_CHANNEL_DEPTH_DEFAULT = 0x0, - D2D1_CHANNEL_DEPTH_1 = 0x1, - D2D1_CHANNEL_DEPTH_4 = 0x4, - D2D1_CHANNEL_DEPTH_FORCE_DWORD = 0xffffffff -} D2D1_CHANNEL_DEPTH; -typedef enum D2D1_CHANGE_TYPE { - D2D1_CHANGE_TYPE_NONE = 0x0, - D2D1_CHANGE_TYPE_PROPERTIES = 0x1, - D2D1_CHANGE_TYPE_CONTEXT = 0x2, - D2D1_CHANGE_TYPE_GRAPH = 0x3, - D2D1_CHANGE_TYPE_FORCE_DWORD = 0xffffffff -} D2D1_CHANGE_TYPE; -typedef enum D2D1_PIXEL_OPTIONS { - D2D1_PIXEL_OPTIONS_NONE = 0x0, - D2D1_PIXEL_OPTIONS_TRIVIAL_SAMPLING = 0x1, - D2D1_PIXEL_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_PIXEL_OPTIONS; -typedef enum D2D1_VERTEX_OPTIONS { - D2D1_VERTEX_OPTIONS_NONE = 0x0, - D2D1_VERTEX_OPTIONS_DO_NOT_CLEAR = 0x1, - D2D1_VERTEX_OPTIONS_USE_DEPTH_BUFFER = 0x2, - D2D1_VERTEX_OPTIONS_ASSUME_NO_OVERLAP = 0x4, - D2D1_VERTEX_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_VERTEX_OPTIONS; -typedef enum D2D1_VERTEX_USAGE { - D2D1_VERTEX_USAGE_STATIC = 0x0, - D2D1_VERTEX_USAGE_DYNAMIC = 0x1, - D2D1_VERTEX_USAGE_FORCE_DWORD = 0xffffffff -} D2D1_VERTEX_USAGE; typedef enum D2D1_BLEND_OPERATION { - D2D1_BLEND_OPERATION_ADD = 0x1, - D2D1_BLEND_OPERATION_SUBTRACT = 0x2, - D2D1_BLEND_OPERATION_REV_SUBTRACT = 0x3, - D2D1_BLEND_OPERATION_MIN = 0x4, - D2D1_BLEND_OPERATION_MAX = 0x5, + D2D1_BLEND_OPERATION_ADD = 1, + D2D1_BLEND_OPERATION_SUBTRACT = 2, + D2D1_BLEND_OPERATION_REV_SUBTRACT = 3, + D2D1_BLEND_OPERATION_MIN = 4, + D2D1_BLEND_OPERATION_MAX = 5, D2D1_BLEND_OPERATION_FORCE_DWORD = 0xffffffff } D2D1_BLEND_OPERATION; + typedef enum D2D1_BLEND { - D2D1_BLEND_ZERO = 1, - D2D1_BLEND_ONE = 2, - D2D1_BLEND_SRC_COLOR = 3, - D2D1_BLEND_INV_SRC_COLOR = 4, - D2D1_BLEND_SRC_ALPHA = 5, - D2D1_BLEND_INV_SRC_ALPHA = 6, - D2D1_BLEND_DEST_ALPHA = 7, - D2D1_BLEND_INV_DEST_ALPHA = 8, - D2D1_BLEND_DEST_COLOR = 9, - D2D1_BLEND_INV_DEST_COLOR = 10, - D2D1_BLEND_SRC_ALPHA_SAT = 11, - D2D1_BLEND_BLEND_FACTOR = 14, + D2D1_BLEND_ZERO = 1, + D2D1_BLEND_ONE = 2, + D2D1_BLEND_SRC_COLOR = 3, + D2D1_BLEND_INV_SRC_COLOR = 4, + D2D1_BLEND_SRC_ALPHA = 5, + D2D1_BLEND_INV_SRC_ALPHA = 6, + D2D1_BLEND_DEST_ALPHA = 7, + D2D1_BLEND_INV_DEST_ALPHA = 8, + D2D1_BLEND_DEST_COLOR = 9, + D2D1_BLEND_INV_DEST_COLOR = 10, + D2D1_BLEND_SRC_ALPHA_SAT = 11, + D2D1_BLEND_BLEND_FACTOR = 14, D2D1_BLEND_INV_BLEND_FACTOR = 15, D2D1_BLEND_FORCE_DWORD = 0xffffffff } D2D1_BLEND; -typedef struct D2D1_INPUT_DESCRIPTION { - D2D1_FILTER filter; - UINT32 levelOfDetailCount; -} D2D1_INPUT_DESCRIPTION; -typedef struct D2D1_VERTEX_RANGE { - UINT32 startVertex; - UINT32 vertexCount; -} D2D1_VERTEX_RANGE; + +typedef enum D2D1_FILTER { + D2D1_FILTER_MIN_MAG_MIP_POINT = 0x00, + D2D1_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x01, + D2D1_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x04, + D2D1_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x05, + D2D1_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, + D2D1_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, + D2D1_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, + D2D1_FILTER_MIN_MAG_MIP_LINEAR = 0x15, + D2D1_FILTER_ANISOTROPIC = 0x55, + D2D1_FILTER_FORCE_DWORD = 0xffffffff +} D2D1_FILTER; + +typedef enum D2D1_VERTEX_USAGE { + D2D1_VERTEX_USAGE_STATIC = 0, + D2D1_VERTEX_USAGE_DYNAMIC = 1, + D2D1_VERTEX_USAGE_FORCE_DWORD = 0xffffffff +} D2D1_VERTEX_USAGE; + +typedef enum D2D1_FEATURE { + D2D1_FEATURE_DOUBLES = 0, + D2D1_FEATURE_D3D10_X_HARDWARE_OPTIONS = 1, + D2D1_FEATURE_FORCE_DWORD = 0xffffffff +} D2D1_FEATURE; + +typedef enum D2D1_CHANGE_TYPE { + D2D1_CHANGE_TYPE_NONE = 0, + D2D1_CHANGE_TYPE_PROPERTIES = 1, + D2D1_CHANGE_TYPE_CONTEXT = 2, + D2D1_CHANGE_TYPE_GRAPH = 3, + D2D1_CHANGE_TYPE_FORCE_DWORD = 0xffffffff +} D2D1_CHANGE_TYPE; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_CHANGE_TYPE); + +typedef enum D2D1_PIXEL_OPTIONS { + D2D1_PIXEL_OPTIONS_NONE = 0, + D2D1_PIXEL_OPTIONS_TRIVIAL_SAMPLING = 1, + D2D1_PIXEL_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_PIXEL_OPTIONS; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_PIXEL_OPTIONS); + +typedef enum D2D1_VERTEX_OPTIONS { + D2D1_VERTEX_OPTIONS_NONE = 0, + D2D1_VERTEX_OPTIONS_DO_NOT_CLEAR = 1, + D2D1_VERTEX_OPTIONS_USE_DEPTH_BUFFER = 2, + D2D1_VERTEX_OPTIONS_ASSUME_NO_OVERLAP = 4, + D2D1_VERTEX_OPTIONS_FORCE_DWORD = 0xffffffff +} D2D1_VERTEX_OPTIONS; + +DEFINE_ENUM_FLAG_OPERATORS(D2D1_VERTEX_OPTIONS); + typedef struct D2D1_BLEND_DESCRIPTION { D2D1_BLEND sourceBlend; D2D1_BLEND destinationBlend; @@ -279,2526 +98,383 @@ typedef struct D2D1_BLEND_DESCRIPTION { D2D1_BLEND sourceBlendAlpha; D2D1_BLEND destinationBlendAlpha; D2D1_BLEND_OPERATION blendOperationAlpha; - float blendFactor[4]; + FLOAT blendFactor[4]; } D2D1_BLEND_DESCRIPTION; + typedef struct D2D1_RESOURCE_TEXTURE_PROPERTIES { - const UINT32 *extents; + CONST UINT32 *extents; UINT32 dimensions; D2D1_BUFFER_PRECISION bufferPrecision; D2D1_CHANNEL_DEPTH channelDepth; D2D1_FILTER filter; - const D2D1_EXTEND_MODE *extendModes; + CONST D2D1_EXTEND_MODE *extendModes; } D2D1_RESOURCE_TEXTURE_PROPERTIES; + typedef struct D2D1_INPUT_ELEMENT_DESC { - const char *semanticName; + PCSTR semanticName; UINT32 semanticIndex; DXGI_FORMAT format; UINT32 inputSlot; UINT32 alignedByteOffset; } D2D1_INPUT_ELEMENT_DESC; + typedef struct D2D1_VERTEX_BUFFER_PROPERTIES { UINT32 inputCount; D2D1_VERTEX_USAGE usage; - const BYTE *data; + CONST BYTE *data; UINT32 byteWidth; } D2D1_VERTEX_BUFFER_PROPERTIES; + typedef struct D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES { - const BYTE *shaderBufferWithInputSignature; + CONST BYTE *shaderBufferWithInputSignature; UINT32 shaderBufferSize; - const D2D1_INPUT_ELEMENT_DESC *inputElements; + CONST D2D1_INPUT_ELEMENT_DESC *inputElements; UINT32 elementCount; UINT32 stride; } D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES; -/***************************************************************************** - * ID2D1VertexBuffer interface - */ -#ifndef __ID2D1VertexBuffer_INTERFACE_DEFINED__ -#define __ID2D1VertexBuffer_INTERFACE_DEFINED__ -DEFINE_GUID(IID_ID2D1VertexBuffer, 0x9b8b1336, 0x00a5, 0x4668, 0x92,0xb7, 0xce,0xd5,0xd8,0xbf,0x9b,0x7b); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("9b8b1336-00a5-4668-92b7-ced5d8bf9b7b") -ID2D1VertexBuffer : public IUnknown +typedef struct D2D1_INPUT_DESCRIPTION { + D2D1_FILTER filter; + UINT32 levelOfDetailCount; +} D2D1_INPUT_DESCRIPTION; + +typedef struct D2D1_VERTEX_RANGE { + UINT32 startVertex; + UINT32 vertexCount; +} D2D1_VERTEX_RANGE; + +typedef struct D2D1_PROPERTY_BINDING { + PCWSTR propertyName; + PD2D1_PROPERTY_SET_FUNCTION setFunction; + PD2D1_PROPERTY_GET_FUNCTION getFunction; +} D2D1_PROPERTY_BINDING; + +#ifndef D2D_USE_C_DEFINITIONS + +interface ID2D1VertexBuffer : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE Map( - BYTE **data, - UINT32 size) = 0; - - virtual HRESULT STDMETHODCALLTYPE Unmap( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1VertexBuffer, 0x9b8b1336, 0x00a5, 0x4668, 0x92,0xb7, 0xce,0xd5,0xd8,0xbf,0x9b,0x7b) -#endif -#else -typedef struct ID2D1VertexBufferVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1VertexBuffer *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1VertexBuffer *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1VertexBuffer *This); - - /*** ID2D1VertexBuffer methods ***/ - HRESULT (STDMETHODCALLTYPE *Map)( - ID2D1VertexBuffer *This, - BYTE **data, - UINT32 size); - - HRESULT (STDMETHODCALLTYPE *Unmap)( - ID2D1VertexBuffer *This); - - END_INTERFACE -} ID2D1VertexBufferVtbl; - -interface ID2D1VertexBuffer { - CONST_VTBL ID2D1VertexBufferVtbl* lpVtbl; + STDMETHOD(Map)(BYTE **data, UINT32 bufferSize) PURE; + STDMETHOD(Unmap)() PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1VertexBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1VertexBuffer_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1VertexBuffer_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1VertexBuffer methods ***/ -#define ID2D1VertexBuffer_Map(This,data,size) (This)->lpVtbl->Map(This,data,size) -#define ID2D1VertexBuffer_Unmap(This) (This)->lpVtbl->Unmap(This) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1VertexBuffer_QueryInterface(ID2D1VertexBuffer* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1VertexBuffer_AddRef(ID2D1VertexBuffer* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1VertexBuffer_Release(ID2D1VertexBuffer* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1VertexBuffer methods ***/ -static __WIDL_INLINE HRESULT ID2D1VertexBuffer_Map(ID2D1VertexBuffer* This,BYTE **data,UINT32 size) { - return This->lpVtbl->Map(This,data,size); -} -static __WIDL_INLINE HRESULT ID2D1VertexBuffer_Unmap(ID2D1VertexBuffer* This) { - return This->lpVtbl->Unmap(This); -} -#endif -#endif + +typedef interface ID2D1VertexBuffer ID2D1VertexBuffer; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1VertexBuffer, 0x9b8b1336,0x00a5,0x4668,0x92,0xb7,0xce,0xd5,0xd8,0xbf,0x9b,0x7b); +__CRT_UUID_DECL(ID2D1VertexBuffer, 0x9b8b1336,0x00a5,0x4668,0x92,0xb7,0xce,0xd5,0xd8,0xbf,0x9b,0x7b); -#endif /* __ID2D1VertexBuffer_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1ResourceTexture interface - */ -#ifndef __ID2D1ResourceTexture_INTERFACE_DEFINED__ -#define __ID2D1ResourceTexture_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1ResourceTexture, 0x688d15c3, 0x02b0, 0x438d, 0xb1,0x3a, 0xd1,0xb4,0x4c,0x32,0xc3,0x9a); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("688d15c3-02b0-438d-b13a-d1b44c32c39a") -ID2D1ResourceTexture : public IUnknown +interface ID2D1ResourceTexture : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE Update( - const UINT32 *min_extents, - const UINT32 *max_extents, - const UINT32 *strides, - UINT32 dimensions, - const BYTE *data, - UINT32 data_size) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1ResourceTexture, 0x688d15c3, 0x02b0, 0x438d, 0xb1,0x3a, 0xd1,0xb4,0x4c,0x32,0xc3,0x9a) -#endif -#else -typedef struct ID2D1ResourceTextureVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1ResourceTexture *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1ResourceTexture *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1ResourceTexture *This); - - /*** ID2D1ResourceTexture methods ***/ - HRESULT (STDMETHODCALLTYPE *Update)( - ID2D1ResourceTexture *This, - const UINT32 *min_extents, - const UINT32 *max_extents, - const UINT32 *strides, - UINT32 dimensions, - const BYTE *data, - UINT32 data_size); - - END_INTERFACE -} ID2D1ResourceTextureVtbl; - -interface ID2D1ResourceTexture { - CONST_VTBL ID2D1ResourceTextureVtbl* lpVtbl; + STDMETHOD(Update)(CONST UINT32 *minimumExtents, CONST UINT32 *maximimumExtents, + CONST UINT32 *strides, UINT32 dimensions, CONST BYTE *data, UINT32 dataCount) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1ResourceTexture_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1ResourceTexture_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1ResourceTexture_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1ResourceTexture methods ***/ -#define ID2D1ResourceTexture_Update(This,min_extents,max_extents,strides,dimensions,data,data_size) (This)->lpVtbl->Update(This,min_extents,max_extents,strides,dimensions,data,data_size) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1ResourceTexture_QueryInterface(ID2D1ResourceTexture* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1ResourceTexture_AddRef(ID2D1ResourceTexture* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1ResourceTexture_Release(ID2D1ResourceTexture* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1ResourceTexture methods ***/ -static __WIDL_INLINE HRESULT ID2D1ResourceTexture_Update(ID2D1ResourceTexture* This,const UINT32 *min_extents,const UINT32 *max_extents,const UINT32 *strides,UINT32 dimensions,const BYTE *data,UINT32 data_size) { - return This->lpVtbl->Update(This,min_extents,max_extents,strides,dimensions,data,data_size); -} -#endif -#endif + +typedef interface ID2D1ResourceTexture ID2D1ResourceTexture; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1ResourceTexture, 0x688d15c3,0x02b0,0x438d,0xb1,0x3a,0xd1,0xb4,0x4c,0x32,0xc3,0x9a); +__CRT_UUID_DECL(ID2D1ResourceTexture, 0x688d15c3,0x02b0,0x438d,0xb1,0x3a,0xd1,0xb4,0x4c,0x32,0xc3,0x9a); -#endif /* __ID2D1ResourceTexture_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1RenderInfo interface - */ -#ifndef __ID2D1RenderInfo_INTERFACE_DEFINED__ -#define __ID2D1RenderInfo_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1RenderInfo, 0x519ae1bd, 0xd19a, 0x420d, 0xb8,0x49, 0x36,0x4f,0x59,0x47,0x76,0xb7); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("519ae1bd-d19a-420d-b849-364f594776b7") -ID2D1RenderInfo : public IUnknown +interface ID2D1RenderInfo : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE SetInputDescription( - UINT32 index, - D2D1_INPUT_DESCRIPTION description) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetOutputBuffer( - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth) = 0; - - virtual void STDMETHODCALLTYPE SetCached( - WINBOOL is_cached) = 0; - - virtual void STDMETHODCALLTYPE SetInstructionCountHint( - UINT32 count) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1RenderInfo, 0x519ae1bd, 0xd19a, 0x420d, 0xb8,0x49, 0x36,0x4f,0x59,0x47,0x76,0xb7) -#endif -#else -typedef struct ID2D1RenderInfoVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1RenderInfo *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1RenderInfo *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1RenderInfo *This); - - /*** ID2D1RenderInfo methods ***/ - HRESULT (STDMETHODCALLTYPE *SetInputDescription)( - ID2D1RenderInfo *This, - UINT32 index, - D2D1_INPUT_DESCRIPTION description); - - HRESULT (STDMETHODCALLTYPE *SetOutputBuffer)( - ID2D1RenderInfo *This, - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth); - - void (STDMETHODCALLTYPE *SetCached)( - ID2D1RenderInfo *This, - WINBOOL is_cached); - - void (STDMETHODCALLTYPE *SetInstructionCountHint)( - ID2D1RenderInfo *This, - UINT32 count); - - END_INTERFACE -} ID2D1RenderInfoVtbl; - -interface ID2D1RenderInfo { - CONST_VTBL ID2D1RenderInfoVtbl* lpVtbl; + STDMETHOD(SetInputDescription)(UINT32 inputIndex, D2D1_INPUT_DESCRIPTION inputDescription) PURE; + STDMETHOD(SetOutputBuffer)(D2D1_BUFFER_PRECISION bufferPrecision, D2D1_CHANNEL_DEPTH channelDepth) PURE; + STDMETHOD_(void, SetCached)(BOOL isCached) PURE; + STDMETHOD_(void, SetInstructionCountHint)(UINT32 instructionCount) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1RenderInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1RenderInfo_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1RenderInfo_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1RenderInfo methods ***/ -#define ID2D1RenderInfo_SetInputDescription(This,index,description) (This)->lpVtbl->SetInputDescription(This,index,description) -#define ID2D1RenderInfo_SetOutputBuffer(This,precision,depth) (This)->lpVtbl->SetOutputBuffer(This,precision,depth) -#define ID2D1RenderInfo_SetCached(This,is_cached) (This)->lpVtbl->SetCached(This,is_cached) -#define ID2D1RenderInfo_SetInstructionCountHint(This,count) (This)->lpVtbl->SetInstructionCountHint(This,count) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1RenderInfo_QueryInterface(ID2D1RenderInfo* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1RenderInfo_AddRef(ID2D1RenderInfo* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1RenderInfo_Release(ID2D1RenderInfo* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1RenderInfo methods ***/ -static __WIDL_INLINE HRESULT ID2D1RenderInfo_SetInputDescription(ID2D1RenderInfo* This,UINT32 index,D2D1_INPUT_DESCRIPTION description) { - return This->lpVtbl->SetInputDescription(This,index,description); -} -static __WIDL_INLINE HRESULT ID2D1RenderInfo_SetOutputBuffer(ID2D1RenderInfo* This,D2D1_BUFFER_PRECISION precision,D2D1_CHANNEL_DEPTH depth) { - return This->lpVtbl->SetOutputBuffer(This,precision,depth); -} -static __WIDL_INLINE void ID2D1RenderInfo_SetCached(ID2D1RenderInfo* This,WINBOOL is_cached) { - This->lpVtbl->SetCached(This,is_cached); -} -static __WIDL_INLINE void ID2D1RenderInfo_SetInstructionCountHint(ID2D1RenderInfo* This,UINT32 count) { - This->lpVtbl->SetInstructionCountHint(This,count); -} -#endif -#endif + +typedef interface ID2D1RenderInfo ID2D1RenderInfo; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1RenderInfo, 0x519ae1bd,0xd19a,0x420d,0xb8,0x49,0x36,0x4f,0x59,0x47,0x76,0xb7); +__CRT_UUID_DECL(ID2D1RenderInfo, 0x519ae1bd,0xd19a,0x420d,0xb8,0x49,0x36,0x4f,0x59,0x47,0x76,0xb7); -#endif /* __ID2D1RenderInfo_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1DrawInfo interface - */ -#ifndef __ID2D1DrawInfo_INTERFACE_DEFINED__ -#define __ID2D1DrawInfo_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1DrawInfo, 0x693ce632, 0x7f2f, 0x45de, 0x93,0xfe, 0x18,0xd8,0x8b,0x37,0xaa,0x21); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("693ce632-7f2f-45de-93fe-18d88b37aa21") -ID2D1DrawInfo : public ID2D1RenderInfo +interface ID2D1DrawInfo : public ID2D1RenderInfo { - virtual HRESULT STDMETHODCALLTYPE SetPixelShaderConstantBuffer( - const BYTE *buffer, - UINT32 size) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetResourceTexture( - UINT32 index, - ID2D1ResourceTexture *texture) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetVertexShaderConstantBuffer( - const BYTE *buffer, - UINT32 size) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetPixelShader( - REFGUID id, - D2D1_PIXEL_OPTIONS options) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetVertexProcessing( - ID2D1VertexBuffer *buffer, - D2D1_VERTEX_OPTIONS options, - const D2D1_BLEND_DESCRIPTION *description, - const D2D1_VERTEX_RANGE *range, - const GUID *shader) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1DrawInfo, 0x693ce632, 0x7f2f, 0x45de, 0x93,0xfe, 0x18,0xd8,0x8b,0x37,0xaa,0x21) -#endif -#else -typedef struct ID2D1DrawInfoVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1DrawInfo *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1DrawInfo *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1DrawInfo *This); - - /*** ID2D1RenderInfo methods ***/ - HRESULT (STDMETHODCALLTYPE *SetInputDescription)( - ID2D1DrawInfo *This, - UINT32 index, - D2D1_INPUT_DESCRIPTION description); - - HRESULT (STDMETHODCALLTYPE *SetOutputBuffer)( - ID2D1DrawInfo *This, - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth); - - void (STDMETHODCALLTYPE *SetCached)( - ID2D1DrawInfo *This, - WINBOOL is_cached); - - void (STDMETHODCALLTYPE *SetInstructionCountHint)( - ID2D1DrawInfo *This, - UINT32 count); - - /*** ID2D1DrawInfo methods ***/ - HRESULT (STDMETHODCALLTYPE *SetPixelShaderConstantBuffer)( - ID2D1DrawInfo *This, - const BYTE *buffer, - UINT32 size); - - HRESULT (STDMETHODCALLTYPE *SetResourceTexture)( - ID2D1DrawInfo *This, - UINT32 index, - ID2D1ResourceTexture *texture); - - HRESULT (STDMETHODCALLTYPE *SetVertexShaderConstantBuffer)( - ID2D1DrawInfo *This, - const BYTE *buffer, - UINT32 size); - - HRESULT (STDMETHODCALLTYPE *SetPixelShader)( - ID2D1DrawInfo *This, - REFGUID id, - D2D1_PIXEL_OPTIONS options); - - HRESULT (STDMETHODCALLTYPE *SetVertexProcessing)( - ID2D1DrawInfo *This, - ID2D1VertexBuffer *buffer, - D2D1_VERTEX_OPTIONS options, - const D2D1_BLEND_DESCRIPTION *description, - const D2D1_VERTEX_RANGE *range, - const GUID *shader); - - END_INTERFACE -} ID2D1DrawInfoVtbl; - -interface ID2D1DrawInfo { - CONST_VTBL ID2D1DrawInfoVtbl* lpVtbl; + STDMETHOD(SetPixelShaderConstantBuffer)(CONST BYTE *buffer, UINT32 bufferCount) PURE; + STDMETHOD(SetResourceTexture)(UINT32 textureIndex, ID2D1ResourceTexture *resourceTexture) PURE; + STDMETHOD(SetVertexShaderConstantBuffer)(CONST BYTE *buffer, UINT32 bufferCount) PURE; + STDMETHOD(SetPixelShader)(REFGUID shaderId, D2D1_PIXEL_OPTIONS pixelOptions = D2D1_PIXEL_OPTIONS_NONE) PURE; + STDMETHOD(SetVertexProcessing)(ID2D1VertexBuffer *vertexBuffer, D2D1_VERTEX_OPTIONS vertexOptions, + CONST D2D1_BLEND_DESCRIPTION *blendDescription = NULL, CONST D2D1_VERTEX_RANGE *vertexRange = NULL, + CONST GUID *vertexShader = NULL) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1DrawInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1DrawInfo_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1DrawInfo_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1RenderInfo methods ***/ -#define ID2D1DrawInfo_SetInputDescription(This,index,description) (This)->lpVtbl->SetInputDescription(This,index,description) -#define ID2D1DrawInfo_SetOutputBuffer(This,precision,depth) (This)->lpVtbl->SetOutputBuffer(This,precision,depth) -#define ID2D1DrawInfo_SetCached(This,is_cached) (This)->lpVtbl->SetCached(This,is_cached) -#define ID2D1DrawInfo_SetInstructionCountHint(This,count) (This)->lpVtbl->SetInstructionCountHint(This,count) -/*** ID2D1DrawInfo methods ***/ -#define ID2D1DrawInfo_SetPixelShaderConstantBuffer(This,buffer,size) (This)->lpVtbl->SetPixelShaderConstantBuffer(This,buffer,size) -#define ID2D1DrawInfo_SetResourceTexture(This,index,texture) (This)->lpVtbl->SetResourceTexture(This,index,texture) -#define ID2D1DrawInfo_SetVertexShaderConstantBuffer(This,buffer,size) (This)->lpVtbl->SetVertexShaderConstantBuffer(This,buffer,size) -#define ID2D1DrawInfo_SetPixelShader(This,id,options) (This)->lpVtbl->SetPixelShader(This,id,options) -#define ID2D1DrawInfo_SetVertexProcessing(This,buffer,options,description,range,shader) (This)->lpVtbl->SetVertexProcessing(This,buffer,options,description,range,shader) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawInfo_QueryInterface(ID2D1DrawInfo* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1DrawInfo_AddRef(ID2D1DrawInfo* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1DrawInfo_Release(ID2D1DrawInfo* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1RenderInfo methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetInputDescription(ID2D1DrawInfo* This,UINT32 index,D2D1_INPUT_DESCRIPTION description) { - return This->lpVtbl->SetInputDescription(This,index,description); -} -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetOutputBuffer(ID2D1DrawInfo* This,D2D1_BUFFER_PRECISION precision,D2D1_CHANNEL_DEPTH depth) { - return This->lpVtbl->SetOutputBuffer(This,precision,depth); -} -static __WIDL_INLINE void ID2D1DrawInfo_SetCached(ID2D1DrawInfo* This,WINBOOL is_cached) { - This->lpVtbl->SetCached(This,is_cached); -} -static __WIDL_INLINE void ID2D1DrawInfo_SetInstructionCountHint(ID2D1DrawInfo* This,UINT32 count) { - This->lpVtbl->SetInstructionCountHint(This,count); -} -/*** ID2D1DrawInfo methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetPixelShaderConstantBuffer(ID2D1DrawInfo* This,const BYTE *buffer,UINT32 size) { - return This->lpVtbl->SetPixelShaderConstantBuffer(This,buffer,size); -} -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetResourceTexture(ID2D1DrawInfo* This,UINT32 index,ID2D1ResourceTexture *texture) { - return This->lpVtbl->SetResourceTexture(This,index,texture); -} -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetVertexShaderConstantBuffer(ID2D1DrawInfo* This,const BYTE *buffer,UINT32 size) { - return This->lpVtbl->SetVertexShaderConstantBuffer(This,buffer,size); -} -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetPixelShader(ID2D1DrawInfo* This,REFGUID id,D2D1_PIXEL_OPTIONS options) { - return This->lpVtbl->SetPixelShader(This,id,options); -} -static __WIDL_INLINE HRESULT ID2D1DrawInfo_SetVertexProcessing(ID2D1DrawInfo* This,ID2D1VertexBuffer *buffer,D2D1_VERTEX_OPTIONS options,const D2D1_BLEND_DESCRIPTION *description,const D2D1_VERTEX_RANGE *range,const GUID *shader) { - return This->lpVtbl->SetVertexProcessing(This,buffer,options,description,range,shader); -} -#endif -#endif + +typedef interface ID2D1DrawInfo ID2D1DrawInfo; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1DrawInfo, 0x693ce632,0x7f2f,0x45de,0x93,0xfe,0x18,0xd8,0x8b,0x37,0xaa,0x21); +__CRT_UUID_DECL(ID2D1DrawInfo, 0x693ce632,0x7f2f,0x45de,0x93,0xfe,0x18,0xd8,0x8b,0x37,0xaa,0x21); -#endif /* __ID2D1DrawInfo_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1ComputeInfo interface - */ -#ifndef __ID2D1ComputeInfo_INTERFACE_DEFINED__ -#define __ID2D1ComputeInfo_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1ComputeInfo, 0x5598b14b, 0x9fd7, 0x48b7, 0x9b,0xdb, 0x8f,0x09,0x64,0xeb,0x38,0xbc); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("5598b14b-9fd7-48b7-9bdb-8f0964eb38bc") -ID2D1ComputeInfo : public ID2D1RenderInfo +interface ID2D1TransformNode : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE SetComputeShaderconstantBuffer( - const BYTE *buffer, - UINT32 size) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetComputeShader( - REFGUID id) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetResourceTexture( - UINT32 index, - ID2D1ResourceTexture *texture) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1ComputeInfo, 0x5598b14b, 0x9fd7, 0x48b7, 0x9b,0xdb, 0x8f,0x09,0x64,0xeb,0x38,0xbc) -#endif -#else -typedef struct ID2D1ComputeInfoVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1ComputeInfo *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1ComputeInfo *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1ComputeInfo *This); - - /*** ID2D1RenderInfo methods ***/ - HRESULT (STDMETHODCALLTYPE *SetInputDescription)( - ID2D1ComputeInfo *This, - UINT32 index, - D2D1_INPUT_DESCRIPTION description); - - HRESULT (STDMETHODCALLTYPE *SetOutputBuffer)( - ID2D1ComputeInfo *This, - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth); - - void (STDMETHODCALLTYPE *SetCached)( - ID2D1ComputeInfo *This, - WINBOOL is_cached); - - void (STDMETHODCALLTYPE *SetInstructionCountHint)( - ID2D1ComputeInfo *This, - UINT32 count); - - /*** ID2D1ComputeInfo methods ***/ - HRESULT (STDMETHODCALLTYPE *SetComputeShaderconstantBuffer)( - ID2D1ComputeInfo *This, - const BYTE *buffer, - UINT32 size); - - HRESULT (STDMETHODCALLTYPE *SetComputeShader)( - ID2D1ComputeInfo *This, - REFGUID id); - - HRESULT (STDMETHODCALLTYPE *SetResourceTexture)( - ID2D1ComputeInfo *This, - UINT32 index, - ID2D1ResourceTexture *texture); - - END_INTERFACE -} ID2D1ComputeInfoVtbl; - -interface ID2D1ComputeInfo { - CONST_VTBL ID2D1ComputeInfoVtbl* lpVtbl; + STDMETHOD_(UINT32, GetInputCount)() CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1ComputeInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1ComputeInfo_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1ComputeInfo_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1RenderInfo methods ***/ -#define ID2D1ComputeInfo_SetInputDescription(This,index,description) (This)->lpVtbl->SetInputDescription(This,index,description) -#define ID2D1ComputeInfo_SetOutputBuffer(This,precision,depth) (This)->lpVtbl->SetOutputBuffer(This,precision,depth) -#define ID2D1ComputeInfo_SetCached(This,is_cached) (This)->lpVtbl->SetCached(This,is_cached) -#define ID2D1ComputeInfo_SetInstructionCountHint(This,count) (This)->lpVtbl->SetInstructionCountHint(This,count) -/*** ID2D1ComputeInfo methods ***/ -#define ID2D1ComputeInfo_SetComputeShaderconstantBuffer(This,buffer,size) (This)->lpVtbl->SetComputeShaderconstantBuffer(This,buffer,size) -#define ID2D1ComputeInfo_SetComputeShader(This,id) (This)->lpVtbl->SetComputeShader(This,id) -#define ID2D1ComputeInfo_SetResourceTexture(This,index,texture) (This)->lpVtbl->SetResourceTexture(This,index,texture) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1ComputeInfo_QueryInterface(ID2D1ComputeInfo* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1ComputeInfo_AddRef(ID2D1ComputeInfo* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1ComputeInfo_Release(ID2D1ComputeInfo* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1RenderInfo methods ***/ -static __WIDL_INLINE HRESULT ID2D1ComputeInfo_SetInputDescription(ID2D1ComputeInfo* This,UINT32 index,D2D1_INPUT_DESCRIPTION description) { - return This->lpVtbl->SetInputDescription(This,index,description); -} -static __WIDL_INLINE HRESULT ID2D1ComputeInfo_SetOutputBuffer(ID2D1ComputeInfo* This,D2D1_BUFFER_PRECISION precision,D2D1_CHANNEL_DEPTH depth) { - return This->lpVtbl->SetOutputBuffer(This,precision,depth); -} -static __WIDL_INLINE void ID2D1ComputeInfo_SetCached(ID2D1ComputeInfo* This,WINBOOL is_cached) { - This->lpVtbl->SetCached(This,is_cached); -} -static __WIDL_INLINE void ID2D1ComputeInfo_SetInstructionCountHint(ID2D1ComputeInfo* This,UINT32 count) { - This->lpVtbl->SetInstructionCountHint(This,count); -} -/*** ID2D1ComputeInfo methods ***/ -static __WIDL_INLINE HRESULT ID2D1ComputeInfo_SetComputeShaderconstantBuffer(ID2D1ComputeInfo* This,const BYTE *buffer,UINT32 size) { - return This->lpVtbl->SetComputeShaderconstantBuffer(This,buffer,size); -} -static __WIDL_INLINE HRESULT ID2D1ComputeInfo_SetComputeShader(ID2D1ComputeInfo* This,REFGUID id) { - return This->lpVtbl->SetComputeShader(This,id); -} -static __WIDL_INLINE HRESULT ID2D1ComputeInfo_SetResourceTexture(ID2D1ComputeInfo* This,UINT32 index,ID2D1ResourceTexture *texture) { - return This->lpVtbl->SetResourceTexture(This,index,texture); -} -#endif -#endif + +typedef interface ID2D1TransformNode ID2D1TransformNode; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1TransformNode, 0xb2efe1e7,0x729f,0x4102,0x94,0x9f,0x50,0x5f,0xa2,0x1b,0xf6,0x66); +__CRT_UUID_DECL(ID2D1TransformNode, 0xb2efe1e7,0x729f,0x4102,0x94,0x9f,0x50,0x5f,0xa2,0x1b,0xf6,0x66); -#endif /* __ID2D1ComputeInfo_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1TransformNode interface - */ -#ifndef __ID2D1TransformNode_INTERFACE_DEFINED__ -#define __ID2D1TransformNode_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1TransformNode, 0xb2efe1e7, 0x729f, 0x4102, 0x94,0x9f, 0x50,0x5f,0xa2,0x1b,0xf6,0x66); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("b2efe1e7-729f-4102-949f-505fa21bf666") -ID2D1TransformNode : public IUnknown +interface ID2D1Transform : public ID2D1TransformNode { - virtual UINT32 STDMETHODCALLTYPE GetInputCount( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1TransformNode, 0xb2efe1e7, 0x729f, 0x4102, 0x94,0x9f, 0x50,0x5f,0xa2,0x1b,0xf6,0x66) -#endif -#else -typedef struct ID2D1TransformNodeVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1TransformNode *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1TransformNode *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1TransformNode *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1TransformNode *This); - - END_INTERFACE -} ID2D1TransformNodeVtbl; - -interface ID2D1TransformNode { - CONST_VTBL ID2D1TransformNodeVtbl* lpVtbl; + STDMETHOD(MapOutputRectToInputRects)(CONST D2D1_RECT_L *outputRect, D2D1_RECT_L *inputRects, + UINT32 inputRectsCount) CONST PURE; + STDMETHOD(MapInputRectsToOutputRect)(CONST D2D1_RECT_L *inputRects, CONST D2D1_RECT_L *inputOpaqueSubRects, + UINT32 inputRectCount, D2D1_RECT_L *outputRect, D2D1_RECT_L *outputOpaqueSubRect) PURE; + STDMETHOD(MapInvalidRect)(UINT32 inputIndex, D2D1_RECT_L invalidInputRect, D2D1_RECT_L *invalidOutputRect) CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1TransformNode_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1TransformNode_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1TransformNode_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1TransformNode_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1TransformNode_QueryInterface(ID2D1TransformNode* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1TransformNode_AddRef(ID2D1TransformNode* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1TransformNode_Release(ID2D1TransformNode* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1TransformNode_GetInputCount(ID2D1TransformNode* This) { - return This->lpVtbl->GetInputCount(This); -} -#endif -#endif + +typedef interface ID2D1Transform ID2D1Transform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1Transform, 0xef1a287d,0x342a,0x4f76,0x8f,0xdb,0xda,0x0d,0x6e,0xa9,0xf9,0x2b); +__CRT_UUID_DECL(ID2D1Transform, 0xef1a287d,0x342a,0x4f76,0x8f,0xdb,0xda,0x0d,0x6e,0xa9,0xf9,0x2b); -#endif /* __ID2D1TransformNode_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1TransformGraph interface - */ -#ifndef __ID2D1TransformGraph_INTERFACE_DEFINED__ -#define __ID2D1TransformGraph_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1TransformGraph, 0x13d29038, 0xc3e6, 0x4034, 0x90,0x81, 0x13,0xb5,0x3a,0x41,0x79,0x92); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("13d29038-c3e6-4034-9081-13b53a417992") -ID2D1TransformGraph : public IUnknown +interface ID2D1DrawTransform : public ID2D1Transform { - virtual UINT32 STDMETHODCALLTYPE GetInputCount( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetSingleTransformNode( - ID2D1TransformNode *node) = 0; - - virtual HRESULT STDMETHODCALLTYPE AddNode( - ID2D1TransformNode *node) = 0; - - virtual HRESULT STDMETHODCALLTYPE RemoveNode( - ID2D1TransformNode *node) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetOutputNode( - ID2D1TransformNode *node) = 0; - - virtual HRESULT STDMETHODCALLTYPE ConnectNode( - ID2D1TransformNode *from_node, - ID2D1TransformNode *to_node, - UINT32 index) = 0; - - virtual HRESULT STDMETHODCALLTYPE ConnectToEffectInput( - UINT32 input_index, - ID2D1TransformNode *node, - UINT32 node_index) = 0; - - virtual void STDMETHODCALLTYPE Clear( - ) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetPassthroughGraph( - UINT32 index) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1TransformGraph, 0x13d29038, 0xc3e6, 0x4034, 0x90,0x81, 0x13,0xb5,0x3a,0x41,0x79,0x92) -#endif -#else -typedef struct ID2D1TransformGraphVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1TransformGraph *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1TransformGraph *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1TransformGraph *This); - - /*** ID2D1TransformGraph methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1TransformGraph *This); - - HRESULT (STDMETHODCALLTYPE *SetSingleTransformNode)( - ID2D1TransformGraph *This, - ID2D1TransformNode *node); - - HRESULT (STDMETHODCALLTYPE *AddNode)( - ID2D1TransformGraph *This, - ID2D1TransformNode *node); - - HRESULT (STDMETHODCALLTYPE *RemoveNode)( - ID2D1TransformGraph *This, - ID2D1TransformNode *node); - - HRESULT (STDMETHODCALLTYPE *SetOutputNode)( - ID2D1TransformGraph *This, - ID2D1TransformNode *node); - - HRESULT (STDMETHODCALLTYPE *ConnectNode)( - ID2D1TransformGraph *This, - ID2D1TransformNode *from_node, - ID2D1TransformNode *to_node, - UINT32 index); - - HRESULT (STDMETHODCALLTYPE *ConnectToEffectInput)( - ID2D1TransformGraph *This, - UINT32 input_index, - ID2D1TransformNode *node, - UINT32 node_index); - - void (STDMETHODCALLTYPE *Clear)( - ID2D1TransformGraph *This); - - HRESULT (STDMETHODCALLTYPE *SetPassthroughGraph)( - ID2D1TransformGraph *This, - UINT32 index); - - END_INTERFACE -} ID2D1TransformGraphVtbl; - -interface ID2D1TransformGraph { - CONST_VTBL ID2D1TransformGraphVtbl* lpVtbl; + STDMETHOD(SetDrawInfo)(ID2D1DrawInfo *drawInfo) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1TransformGraph_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1TransformGraph_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1TransformGraph_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformGraph methods ***/ -#define ID2D1TransformGraph_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -#define ID2D1TransformGraph_SetSingleTransformNode(This,node) (This)->lpVtbl->SetSingleTransformNode(This,node) -#define ID2D1TransformGraph_AddNode(This,node) (This)->lpVtbl->AddNode(This,node) -#define ID2D1TransformGraph_RemoveNode(This,node) (This)->lpVtbl->RemoveNode(This,node) -#define ID2D1TransformGraph_SetOutputNode(This,node) (This)->lpVtbl->SetOutputNode(This,node) -#define ID2D1TransformGraph_ConnectNode(This,from_node,to_node,index) (This)->lpVtbl->ConnectNode(This,from_node,to_node,index) -#define ID2D1TransformGraph_ConnectToEffectInput(This,input_index,node,node_index) (This)->lpVtbl->ConnectToEffectInput(This,input_index,node,node_index) -#define ID2D1TransformGraph_Clear(This) (This)->lpVtbl->Clear(This) -#define ID2D1TransformGraph_SetPassthroughGraph(This,index) (This)->lpVtbl->SetPassthroughGraph(This,index) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1TransformGraph_QueryInterface(ID2D1TransformGraph* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1TransformGraph_AddRef(ID2D1TransformGraph* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1TransformGraph_Release(ID2D1TransformGraph* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformGraph methods ***/ -static __WIDL_INLINE UINT32 ID2D1TransformGraph_GetInputCount(ID2D1TransformGraph* This) { - return This->lpVtbl->GetInputCount(This); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_SetSingleTransformNode(ID2D1TransformGraph* This,ID2D1TransformNode *node) { - return This->lpVtbl->SetSingleTransformNode(This,node); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_AddNode(ID2D1TransformGraph* This,ID2D1TransformNode *node) { - return This->lpVtbl->AddNode(This,node); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_RemoveNode(ID2D1TransformGraph* This,ID2D1TransformNode *node) { - return This->lpVtbl->RemoveNode(This,node); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_SetOutputNode(ID2D1TransformGraph* This,ID2D1TransformNode *node) { - return This->lpVtbl->SetOutputNode(This,node); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_ConnectNode(ID2D1TransformGraph* This,ID2D1TransformNode *from_node,ID2D1TransformNode *to_node,UINT32 index) { - return This->lpVtbl->ConnectNode(This,from_node,to_node,index); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_ConnectToEffectInput(ID2D1TransformGraph* This,UINT32 input_index,ID2D1TransformNode *node,UINT32 node_index) { - return This->lpVtbl->ConnectToEffectInput(This,input_index,node,node_index); -} -static __WIDL_INLINE void ID2D1TransformGraph_Clear(ID2D1TransformGraph* This) { - This->lpVtbl->Clear(This); -} -static __WIDL_INLINE HRESULT ID2D1TransformGraph_SetPassthroughGraph(ID2D1TransformGraph* This,UINT32 index) { - return This->lpVtbl->SetPassthroughGraph(This,index); -} -#endif -#endif + +typedef interface ID2D1DrawTransform ID2D1DrawTransform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1DrawTransform, 0x36bfdcb6,0x9739,0x435d,0xa3,0x0d,0xa6,0x53,0xbe,0xff,0x6a,0x6f); +__CRT_UUID_DECL(ID2D1DrawTransform, 0x36bfdcb6,0x9739,0x435d,0xa3,0x0d,0xa6,0x53,0xbe,0xff,0x6a,0x6f); -#endif /* __ID2D1TransformGraph_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1Transform interface - */ -#ifndef __ID2D1Transform_INTERFACE_DEFINED__ -#define __ID2D1Transform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1Transform, 0xef1a287d, 0x342a, 0x4f76, 0x8f,0xdb, 0xda,0x0d,0x6e,0xa9,0xf9,0x2b); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("ef1a287d-342a-4f76-8fdb-da0d6ea9f92b") -ID2D1Transform : public ID2D1TransformNode +interface ID2D1TransformGraph : public IUnknown { - virtual HRESULT STDMETHODCALLTYPE MapOutputRectToInputRects( - const D2D1_RECT_L *output_rect, - D2D1_RECT_L *input_rects, - UINT32 input_rects_count) = 0; - - virtual HRESULT STDMETHODCALLTYPE MapInputRectsToOutputRect( - const D2D1_RECT_L *input_rects, - const D2D1_RECT_L *input_opaque_rects, - UINT32 input_rect_count, - D2D1_RECT_L *output_rect, - D2D1_RECT_L *output_opaque_rect) = 0; - - virtual HRESULT STDMETHODCALLTYPE MapInvalidRect( - UINT32 index, - D2D1_RECT_L input_rect, - D2D1_RECT_L *output_rect) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1Transform, 0xef1a287d, 0x342a, 0x4f76, 0x8f,0xdb, 0xda,0x0d,0x6e,0xa9,0xf9,0x2b) -#endif -#else -typedef struct ID2D1TransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1Transform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1Transform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1Transform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1Transform *This); - - /*** ID2D1Transform methods ***/ - HRESULT (STDMETHODCALLTYPE *MapOutputRectToInputRects)( - ID2D1Transform *This, - const D2D1_RECT_L *output_rect, - D2D1_RECT_L *input_rects, - UINT32 input_rects_count); - - HRESULT (STDMETHODCALLTYPE *MapInputRectsToOutputRect)( - ID2D1Transform *This, - const D2D1_RECT_L *input_rects, - const D2D1_RECT_L *input_opaque_rects, - UINT32 input_rect_count, - D2D1_RECT_L *output_rect, - D2D1_RECT_L *output_opaque_rect); - - HRESULT (STDMETHODCALLTYPE *MapInvalidRect)( - ID2D1Transform *This, - UINT32 index, - D2D1_RECT_L input_rect, - D2D1_RECT_L *output_rect); - - END_INTERFACE -} ID2D1TransformVtbl; - -interface ID2D1Transform { - CONST_VTBL ID2D1TransformVtbl* lpVtbl; + STDMETHOD_(UINT32, GetInputCount)() CONST PURE; + STDMETHOD(SetSingleTransformNode)(ID2D1TransformNode *node) PURE; + STDMETHOD(AddNode)(ID2D1TransformNode *node) PURE; + STDMETHOD(RemoveNode)(ID2D1TransformNode *node) PURE; + STDMETHOD(SetOutputNode)(ID2D1TransformNode *node) PURE; + STDMETHOD(ConnectNode)(ID2D1TransformNode *fromNode, ID2D1TransformNode *toNode, UINT32 toNodeInputIndex) PURE; + STDMETHOD(ConnectToEffectInput)(UINT32 toEffectInputIndex, ID2D1TransformNode *node, UINT32 toNodeInputIndex) PURE; + STDMETHOD_(void, Clear)() PURE; + STDMETHOD(SetPassthroughGraph)(UINT32 effectInputIndex) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1Transform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1Transform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1Transform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1Transform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1Transform methods ***/ -#define ID2D1Transform_MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) (This)->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) -#define ID2D1Transform_MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) (This)->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) -#define ID2D1Transform_MapInvalidRect(This,index,input_rect,output_rect) (This)->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1Transform_QueryInterface(ID2D1Transform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1Transform_AddRef(ID2D1Transform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1Transform_Release(ID2D1Transform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1Transform_GetInputCount(ID2D1Transform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1Transform methods ***/ -static __WIDL_INLINE HRESULT ID2D1Transform_MapOutputRectToInputRects(ID2D1Transform* This,const D2D1_RECT_L *output_rect,D2D1_RECT_L *input_rects,UINT32 input_rects_count) { - return This->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count); -} -static __WIDL_INLINE HRESULT ID2D1Transform_MapInputRectsToOutputRect(ID2D1Transform* This,const D2D1_RECT_L *input_rects,const D2D1_RECT_L *input_opaque_rects,UINT32 input_rect_count,D2D1_RECT_L *output_rect,D2D1_RECT_L *output_opaque_rect) { - return This->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect); -} -static __WIDL_INLINE HRESULT ID2D1Transform_MapInvalidRect(ID2D1Transform* This,UINT32 index,D2D1_RECT_L input_rect,D2D1_RECT_L *output_rect) { - return This->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect); -} -#endif -#endif + +typedef interface ID2D1TransformGraph ID2D1TransformGraph; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1TransformGraph, 0x13d29038,0xc3e6,0x4034,0x90,0x81,0x13,0xb5,0x3a,0x41,0x79,0x92); +__CRT_UUID_DECL(ID2D1TransformGraph, 0x13d29038,0xc3e6,0x4034,0x90,0x81,0x13,0xb5,0x3a,0x41,0x79,0x92); -#endif /* __ID2D1Transform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1DrawTransform interface - */ -#ifndef __ID2D1DrawTransform_INTERFACE_DEFINED__ -#define __ID2D1DrawTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1DrawTransform, 0x36bfdcb6, 0x9739, 0x435d, 0xa3,0x0d, 0xa6,0x53,0xbe,0xff,0x6a,0x6f); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("36bfdcb6-9739-435d-a30d-a653beff6a6f") -ID2D1DrawTransform : public ID2D1Transform +interface ID2D1ConcreteTransform : public ID2D1TransformNode { - virtual HRESULT STDMETHODCALLTYPE SetDrawInfo( - ID2D1DrawInfo *info) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1DrawTransform, 0x36bfdcb6, 0x9739, 0x435d, 0xa3,0x0d, 0xa6,0x53,0xbe,0xff,0x6a,0x6f) -#endif -#else -typedef struct ID2D1DrawTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1DrawTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1DrawTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1DrawTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1DrawTransform *This); - - /*** ID2D1Transform methods ***/ - HRESULT (STDMETHODCALLTYPE *MapOutputRectToInputRects)( - ID2D1DrawTransform *This, - const D2D1_RECT_L *output_rect, - D2D1_RECT_L *input_rects, - UINT32 input_rects_count); - - HRESULT (STDMETHODCALLTYPE *MapInputRectsToOutputRect)( - ID2D1DrawTransform *This, - const D2D1_RECT_L *input_rects, - const D2D1_RECT_L *input_opaque_rects, - UINT32 input_rect_count, - D2D1_RECT_L *output_rect, - D2D1_RECT_L *output_opaque_rect); - - HRESULT (STDMETHODCALLTYPE *MapInvalidRect)( - ID2D1DrawTransform *This, - UINT32 index, - D2D1_RECT_L input_rect, - D2D1_RECT_L *output_rect); - - /*** ID2D1DrawTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *SetDrawInfo)( - ID2D1DrawTransform *This, - ID2D1DrawInfo *info); - - END_INTERFACE -} ID2D1DrawTransformVtbl; - -interface ID2D1DrawTransform { - CONST_VTBL ID2D1DrawTransformVtbl* lpVtbl; + STDMETHOD(SetOutputBuffer)(D2D1_BUFFER_PRECISION bufferPrecision, D2D1_CHANNEL_DEPTH channelDepth) PURE; + STDMETHOD_(void, SetCached)(BOOL isCached) PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1DrawTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1DrawTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1DrawTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1DrawTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1Transform methods ***/ -#define ID2D1DrawTransform_MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) (This)->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) -#define ID2D1DrawTransform_MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) (This)->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) -#define ID2D1DrawTransform_MapInvalidRect(This,index,input_rect,output_rect) (This)->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect) -/*** ID2D1DrawTransform methods ***/ -#define ID2D1DrawTransform_SetDrawInfo(This,info) (This)->lpVtbl->SetDrawInfo(This,info) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawTransform_QueryInterface(ID2D1DrawTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1DrawTransform_AddRef(ID2D1DrawTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1DrawTransform_Release(ID2D1DrawTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1DrawTransform_GetInputCount(ID2D1DrawTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1Transform methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawTransform_MapOutputRectToInputRects(ID2D1DrawTransform* This,const D2D1_RECT_L *output_rect,D2D1_RECT_L *input_rects,UINT32 input_rects_count) { - return This->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count); -} -static __WIDL_INLINE HRESULT ID2D1DrawTransform_MapInputRectsToOutputRect(ID2D1DrawTransform* This,const D2D1_RECT_L *input_rects,const D2D1_RECT_L *input_opaque_rects,UINT32 input_rect_count,D2D1_RECT_L *output_rect,D2D1_RECT_L *output_opaque_rect) { - return This->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect); -} -static __WIDL_INLINE HRESULT ID2D1DrawTransform_MapInvalidRect(ID2D1DrawTransform* This,UINT32 index,D2D1_RECT_L input_rect,D2D1_RECT_L *output_rect) { - return This->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect); -} -/*** ID2D1DrawTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1DrawTransform_SetDrawInfo(ID2D1DrawTransform* This,ID2D1DrawInfo *info) { - return This->lpVtbl->SetDrawInfo(This,info); -} -#endif -#endif + +typedef interface ID2D1ConcreteTransform ID2D1ConcreteTransform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1ConcreteTransform, 0x1a799d8a,0x69f7,0x4e4c,0x9f,0xed,0x43,0x7c,0xcc,0x66,0x84,0xcc); +__CRT_UUID_DECL(ID2D1ConcreteTransform, 0x1a799d8a,0x69f7,0x4e4c,0x9f,0xed,0x43,0x7c,0xcc,0x66,0x84,0xcc); -#endif /* __ID2D1DrawTransform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1ComputeTransform interface - */ -#ifndef __ID2D1ComputeTransform_INTERFACE_DEFINED__ -#define __ID2D1ComputeTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1ComputeTransform, 0x0d85573c, 0x01e3, 0x4f7d, 0xbf,0xd9, 0x0d,0x60,0x60,0x8b,0xf3,0xc3); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("0d85573c-01e3-4f7d-bfd9-0d60608bf3c3") -ID2D1ComputeTransform : public ID2D1Transform +interface ID2D1BlendTransform : public ID2D1ConcreteTransform { - virtual HRESULT STDMETHODCALLTYPE SetComputeInfo( - ID2D1ComputeInfo *info) = 0; - - virtual HRESULT STDMETHODCALLTYPE CalculateThreadgroups( - const D2D1_RECT_L *output_rect, - UINT32 *dimension_x, - UINT32 *dimension_y, - UINT32 *dimension_z) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1ComputeTransform, 0x0d85573c, 0x01e3, 0x4f7d, 0xbf,0xd9, 0x0d,0x60,0x60,0x8b,0xf3,0xc3) -#endif -#else -typedef struct ID2D1ComputeTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1ComputeTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1ComputeTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1ComputeTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1ComputeTransform *This); - - /*** ID2D1Transform methods ***/ - HRESULT (STDMETHODCALLTYPE *MapOutputRectToInputRects)( - ID2D1ComputeTransform *This, - const D2D1_RECT_L *output_rect, - D2D1_RECT_L *input_rects, - UINT32 input_rects_count); - - HRESULT (STDMETHODCALLTYPE *MapInputRectsToOutputRect)( - ID2D1ComputeTransform *This, - const D2D1_RECT_L *input_rects, - const D2D1_RECT_L *input_opaque_rects, - UINT32 input_rect_count, - D2D1_RECT_L *output_rect, - D2D1_RECT_L *output_opaque_rect); - - HRESULT (STDMETHODCALLTYPE *MapInvalidRect)( - ID2D1ComputeTransform *This, - UINT32 index, - D2D1_RECT_L input_rect, - D2D1_RECT_L *output_rect); - - /*** ID2D1ComputeTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *SetComputeInfo)( - ID2D1ComputeTransform *This, - ID2D1ComputeInfo *info); - - HRESULT (STDMETHODCALLTYPE *CalculateThreadgroups)( - ID2D1ComputeTransform *This, - const D2D1_RECT_L *output_rect, - UINT32 *dimension_x, - UINT32 *dimension_y, - UINT32 *dimension_z); - - END_INTERFACE -} ID2D1ComputeTransformVtbl; - -interface ID2D1ComputeTransform { - CONST_VTBL ID2D1ComputeTransformVtbl* lpVtbl; + STDMETHOD_(void, SetDescription)(CONST D2D1_BLEND_DESCRIPTION *description) PURE; + STDMETHOD_(void, GetDescription)(D2D1_BLEND_DESCRIPTION *description) CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1ComputeTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1ComputeTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1ComputeTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1ComputeTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1Transform methods ***/ -#define ID2D1ComputeTransform_MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) (This)->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) -#define ID2D1ComputeTransform_MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) (This)->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) -#define ID2D1ComputeTransform_MapInvalidRect(This,index,input_rect,output_rect) (This)->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect) -/*** ID2D1ComputeTransform methods ***/ -#define ID2D1ComputeTransform_SetComputeInfo(This,info) (This)->lpVtbl->SetComputeInfo(This,info) -#define ID2D1ComputeTransform_CalculateThreadgroups(This,output_rect,dimension_x,dimension_y,dimension_z) (This)->lpVtbl->CalculateThreadgroups(This,output_rect,dimension_x,dimension_y,dimension_z) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1ComputeTransform_QueryInterface(ID2D1ComputeTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1ComputeTransform_AddRef(ID2D1ComputeTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1ComputeTransform_Release(ID2D1ComputeTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1ComputeTransform_GetInputCount(ID2D1ComputeTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1Transform methods ***/ -static __WIDL_INLINE HRESULT ID2D1ComputeTransform_MapOutputRectToInputRects(ID2D1ComputeTransform* This,const D2D1_RECT_L *output_rect,D2D1_RECT_L *input_rects,UINT32 input_rects_count) { - return This->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count); -} -static __WIDL_INLINE HRESULT ID2D1ComputeTransform_MapInputRectsToOutputRect(ID2D1ComputeTransform* This,const D2D1_RECT_L *input_rects,const D2D1_RECT_L *input_opaque_rects,UINT32 input_rect_count,D2D1_RECT_L *output_rect,D2D1_RECT_L *output_opaque_rect) { - return This->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect); -} -static __WIDL_INLINE HRESULT ID2D1ComputeTransform_MapInvalidRect(ID2D1ComputeTransform* This,UINT32 index,D2D1_RECT_L input_rect,D2D1_RECT_L *output_rect) { - return This->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect); -} -/*** ID2D1ComputeTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1ComputeTransform_SetComputeInfo(ID2D1ComputeTransform* This,ID2D1ComputeInfo *info) { - return This->lpVtbl->SetComputeInfo(This,info); -} -static __WIDL_INLINE HRESULT ID2D1ComputeTransform_CalculateThreadgroups(ID2D1ComputeTransform* This,const D2D1_RECT_L *output_rect,UINT32 *dimension_x,UINT32 *dimension_y,UINT32 *dimension_z) { - return This->lpVtbl->CalculateThreadgroups(This,output_rect,dimension_x,dimension_y,dimension_z); -} -#endif -#endif + +typedef interface ID2D1BlendTransform ID2D1BlendTransform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1BlendTransform, 0x63ac0b32,0xba44,0x450f,0x88,0x06,0x7f,0x4c,0xa1,0xff,0x2f,0x1b); +__CRT_UUID_DECL(ID2D1BlendTransform, 0x63ac0b32,0xba44,0x450f,0x88,0x06,0x7f,0x4c,0xa1,0xff,0x2f,0x1b); -#endif /* __ID2D1ComputeTransform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1AnalysisTransform interface - */ -#ifndef __ID2D1AnalysisTransform_INTERFACE_DEFINED__ -#define __ID2D1AnalysisTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1AnalysisTransform, 0x0359dc30, 0x95e6, 0x4568, 0x90,0x55, 0x27,0x72,0x0d,0x13,0x0e,0x93); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("0359dc30-95e6-4568-9055-27720d130e93") -ID2D1AnalysisTransform : public IUnknown +interface ID2D1BorderTransform : public ID2D1ConcreteTransform { - virtual HRESULT STDMETHODCALLTYPE ProcessAnalysisResults( - const BYTE *data, - UINT32 size) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1AnalysisTransform, 0x0359dc30, 0x95e6, 0x4568, 0x90,0x55, 0x27,0x72,0x0d,0x13,0x0e,0x93) -#endif -#else -typedef struct ID2D1AnalysisTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1AnalysisTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1AnalysisTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1AnalysisTransform *This); - - /*** ID2D1AnalysisTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *ProcessAnalysisResults)( - ID2D1AnalysisTransform *This, - const BYTE *data, - UINT32 size); - - END_INTERFACE -} ID2D1AnalysisTransformVtbl; - -interface ID2D1AnalysisTransform { - CONST_VTBL ID2D1AnalysisTransformVtbl* lpVtbl; + STDMETHOD_(void, SetExtendModeX)(D2D1_EXTEND_MODE extendMode) PURE; + STDMETHOD_(void, SetExtendModeY)(D2D1_EXTEND_MODE extendMode) PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeX)() CONST PURE; + STDMETHOD_(D2D1_EXTEND_MODE, GetExtendModeY)() CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1AnalysisTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1AnalysisTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1AnalysisTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1AnalysisTransform methods ***/ -#define ID2D1AnalysisTransform_ProcessAnalysisResults(This,data,size) (This)->lpVtbl->ProcessAnalysisResults(This,data,size) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1AnalysisTransform_QueryInterface(ID2D1AnalysisTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1AnalysisTransform_AddRef(ID2D1AnalysisTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1AnalysisTransform_Release(ID2D1AnalysisTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1AnalysisTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1AnalysisTransform_ProcessAnalysisResults(ID2D1AnalysisTransform* This,const BYTE *data,UINT32 size) { - return This->lpVtbl->ProcessAnalysisResults(This,data,size); -} -#endif -#endif + +typedef interface ID2D1BorderTransform ID2D1BorderTransform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1BorderTransform, 0x4998735c,0x3a19,0x473c,0x97,0x81,0x65,0x68,0x47,0xe3,0xa3,0x47); +__CRT_UUID_DECL(ID2D1BorderTransform, 0x4998735c,0x3a19,0x473c,0x97,0x81,0x65,0x68,0x47,0xe3,0xa3,0x47); -#endif /* __ID2D1AnalysisTransform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1SourceTransform interface - */ -#ifndef __ID2D1SourceTransform_INTERFACE_DEFINED__ -#define __ID2D1SourceTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1SourceTransform, 0xdb1800dd, 0x0c34, 0x4cf9, 0xbe,0x90, 0x31,0xcc,0x0a,0x56,0x53,0xe1); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("db1800dd-0c34-4cf9-be90-31cc0a5653e1") -ID2D1SourceTransform : public ID2D1Transform +interface ID2D1OffsetTransform : public ID2D1TransformNode { - virtual HRESULT STDMETHODCALLTYPE SetRenderInfo( - ID2D1RenderInfo *info) = 0; - - virtual HRESULT STDMETHODCALLTYPE Draw( - ID2D1Bitmap1 *target, - const D2D1_RECT_L *draw_rect, - D2D1_POINT_2U target_origin) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1SourceTransform, 0xdb1800dd, 0x0c34, 0x4cf9, 0xbe,0x90, 0x31,0xcc,0x0a,0x56,0x53,0xe1) -#endif -#else -typedef struct ID2D1SourceTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1SourceTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1SourceTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1SourceTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1SourceTransform *This); - - /*** ID2D1Transform methods ***/ - HRESULT (STDMETHODCALLTYPE *MapOutputRectToInputRects)( - ID2D1SourceTransform *This, - const D2D1_RECT_L *output_rect, - D2D1_RECT_L *input_rects, - UINT32 input_rects_count); - - HRESULT (STDMETHODCALLTYPE *MapInputRectsToOutputRect)( - ID2D1SourceTransform *This, - const D2D1_RECT_L *input_rects, - const D2D1_RECT_L *input_opaque_rects, - UINT32 input_rect_count, - D2D1_RECT_L *output_rect, - D2D1_RECT_L *output_opaque_rect); - - HRESULT (STDMETHODCALLTYPE *MapInvalidRect)( - ID2D1SourceTransform *This, - UINT32 index, - D2D1_RECT_L input_rect, - D2D1_RECT_L *output_rect); - - /*** ID2D1SourceTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *SetRenderInfo)( - ID2D1SourceTransform *This, - ID2D1RenderInfo *info); - - HRESULT (STDMETHODCALLTYPE *Draw)( - ID2D1SourceTransform *This, - ID2D1Bitmap1 *target, - const D2D1_RECT_L *draw_rect, - D2D1_POINT_2U target_origin); - - END_INTERFACE -} ID2D1SourceTransformVtbl; - -interface ID2D1SourceTransform { - CONST_VTBL ID2D1SourceTransformVtbl* lpVtbl; + STDMETHOD_(void, SetOffset)(D2D1_POINT_2L offset) PURE; + STDMETHOD_(D2D1_POINT_2L, GetOffset)() CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1SourceTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1SourceTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1SourceTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1SourceTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1Transform methods ***/ -#define ID2D1SourceTransform_MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) (This)->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count) -#define ID2D1SourceTransform_MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) (This)->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect) -#define ID2D1SourceTransform_MapInvalidRect(This,index,input_rect,output_rect) (This)->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect) -/*** ID2D1SourceTransform methods ***/ -#define ID2D1SourceTransform_SetRenderInfo(This,info) (This)->lpVtbl->SetRenderInfo(This,info) -#define ID2D1SourceTransform_Draw(This,target,draw_rect,target_origin) (This)->lpVtbl->Draw(This,target,draw_rect,target_origin) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1SourceTransform_QueryInterface(ID2D1SourceTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1SourceTransform_AddRef(ID2D1SourceTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1SourceTransform_Release(ID2D1SourceTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1SourceTransform_GetInputCount(ID2D1SourceTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1Transform methods ***/ -static __WIDL_INLINE HRESULT ID2D1SourceTransform_MapOutputRectToInputRects(ID2D1SourceTransform* This,const D2D1_RECT_L *output_rect,D2D1_RECT_L *input_rects,UINT32 input_rects_count) { - return This->lpVtbl->MapOutputRectToInputRects(This,output_rect,input_rects,input_rects_count); -} -static __WIDL_INLINE HRESULT ID2D1SourceTransform_MapInputRectsToOutputRect(ID2D1SourceTransform* This,const D2D1_RECT_L *input_rects,const D2D1_RECT_L *input_opaque_rects,UINT32 input_rect_count,D2D1_RECT_L *output_rect,D2D1_RECT_L *output_opaque_rect) { - return This->lpVtbl->MapInputRectsToOutputRect(This,input_rects,input_opaque_rects,input_rect_count,output_rect,output_opaque_rect); -} -static __WIDL_INLINE HRESULT ID2D1SourceTransform_MapInvalidRect(ID2D1SourceTransform* This,UINT32 index,D2D1_RECT_L input_rect,D2D1_RECT_L *output_rect) { - return This->lpVtbl->MapInvalidRect(This,index,input_rect,output_rect); -} -/*** ID2D1SourceTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1SourceTransform_SetRenderInfo(ID2D1SourceTransform* This,ID2D1RenderInfo *info) { - return This->lpVtbl->SetRenderInfo(This,info); -} -static __WIDL_INLINE HRESULT ID2D1SourceTransform_Draw(ID2D1SourceTransform* This,ID2D1Bitmap1 *target,const D2D1_RECT_L *draw_rect,D2D1_POINT_2U target_origin) { - return This->lpVtbl->Draw(This,target,draw_rect,target_origin); -} -#endif -#endif + +typedef interface ID2D1OffsetTransform ID2D1OffsetTransform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1OffsetTransform, 0x3fe6adea,0x7643,0x4f53,0xbd,0x14,0xa0,0xce,0x63,0xf2,0x40,0x42); +__CRT_UUID_DECL(ID2D1OffsetTransform, 0x3fe6adea,0x7643,0x4f53,0xbd,0x14,0xa0,0xce,0x63,0xf2,0x40,0x42); -#endif /* __ID2D1SourceTransform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1ConcreteTransform interface - */ -#ifndef __ID2D1ConcreteTransform_INTERFACE_DEFINED__ -#define __ID2D1ConcreteTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1ConcreteTransform, 0x1a799d8a, 0x69f7, 0x4e4c, 0x9f,0xed, 0x43,0x7c,0xcc,0x66,0x84,0xcc); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("1a799d8a-69f7-4e4c-9fed-437ccc6684cc") -ID2D1ConcreteTransform : public ID2D1TransformNode +interface ID2D1BoundsAdjustmentTransform : public ID2D1TransformNode { - virtual HRESULT STDMETHODCALLTYPE SetOutputBuffer( - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth) = 0; - - virtual void STDMETHODCALLTYPE SetCached( - WINBOOL is_cached) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1ConcreteTransform, 0x1a799d8a, 0x69f7, 0x4e4c, 0x9f,0xed, 0x43,0x7c,0xcc,0x66,0x84,0xcc) -#endif -#else -typedef struct ID2D1ConcreteTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1ConcreteTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1ConcreteTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1ConcreteTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1ConcreteTransform *This); - - /*** ID2D1ConcreteTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *SetOutputBuffer)( - ID2D1ConcreteTransform *This, - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth); - - void (STDMETHODCALLTYPE *SetCached)( - ID2D1ConcreteTransform *This, - WINBOOL is_cached); - - END_INTERFACE -} ID2D1ConcreteTransformVtbl; - -interface ID2D1ConcreteTransform { - CONST_VTBL ID2D1ConcreteTransformVtbl* lpVtbl; + STDMETHOD_(void, SetOutputBounds)(CONST D2D1_RECT_L *outputBounds) PURE; + STDMETHOD_(void, GetOutputBounds)(D2D1_RECT_L *outputBounds) CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1ConcreteTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1ConcreteTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1ConcreteTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1ConcreteTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1ConcreteTransform methods ***/ -#define ID2D1ConcreteTransform_SetOutputBuffer(This,precision,depth) (This)->lpVtbl->SetOutputBuffer(This,precision,depth) -#define ID2D1ConcreteTransform_SetCached(This,is_cached) (This)->lpVtbl->SetCached(This,is_cached) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1ConcreteTransform_QueryInterface(ID2D1ConcreteTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1ConcreteTransform_AddRef(ID2D1ConcreteTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1ConcreteTransform_Release(ID2D1ConcreteTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1ConcreteTransform_GetInputCount(ID2D1ConcreteTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1ConcreteTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1ConcreteTransform_SetOutputBuffer(ID2D1ConcreteTransform* This,D2D1_BUFFER_PRECISION precision,D2D1_CHANNEL_DEPTH depth) { - return This->lpVtbl->SetOutputBuffer(This,precision,depth); -} -static __WIDL_INLINE void ID2D1ConcreteTransform_SetCached(ID2D1ConcreteTransform* This,WINBOOL is_cached) { - This->lpVtbl->SetCached(This,is_cached); -} -#endif -#endif + +typedef interface ID2D1BoundsAdjustmentTransform ID2D1BoundsAdjustmentTransform; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1BoundsAdjustmentTransform, 0x90f732e2,0x5092,0x4606,0xa8,0x19,0x86,0x51,0x97,0x0b,0xac,0xcd); +__CRT_UUID_DECL(ID2D1BoundsAdjustmentTransform, 0x90f732e2,0x5092,0x4606,0xa8,0x19,0x86,0x51,0x97,0x0b,0xac,0xcd); -#endif /* __ID2D1ConcreteTransform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1BlendTransform interface - */ -#ifndef __ID2D1BlendTransform_INTERFACE_DEFINED__ -#define __ID2D1BlendTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1BlendTransform, 0x63ac0b32, 0xba44, 0x450f, 0x88,0x06, 0x7f,0x4c,0xa1,0xff,0x2f,0x1b); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("63ac0b32-ba44-450f-8806-7f4ca1ff2f1b") -ID2D1BlendTransform : public ID2D1ConcreteTransform +interface ID2D1EffectContext : public IUnknown { - virtual void STDMETHODCALLTYPE SetDescription( - const D2D1_BLEND_DESCRIPTION *description) = 0; - - virtual void STDMETHODCALLTYPE GetDescription( - D2D1_BLEND_DESCRIPTION *description) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1BlendTransform, 0x63ac0b32, 0xba44, 0x450f, 0x88,0x06, 0x7f,0x4c,0xa1,0xff,0x2f,0x1b) -#endif -#else -typedef struct ID2D1BlendTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1BlendTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1BlendTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1BlendTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1BlendTransform *This); - - /*** ID2D1ConcreteTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *SetOutputBuffer)( - ID2D1BlendTransform *This, - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth); - - void (STDMETHODCALLTYPE *SetCached)( - ID2D1BlendTransform *This, - WINBOOL is_cached); - - /*** ID2D1BlendTransform methods ***/ - void (STDMETHODCALLTYPE *SetDescription)( - ID2D1BlendTransform *This, - const D2D1_BLEND_DESCRIPTION *description); - - void (STDMETHODCALLTYPE *GetDescription)( - ID2D1BlendTransform *This, - D2D1_BLEND_DESCRIPTION *description); - - END_INTERFACE -} ID2D1BlendTransformVtbl; - -interface ID2D1BlendTransform { - CONST_VTBL ID2D1BlendTransformVtbl* lpVtbl; + STDMETHOD_(void, GetDpi)(FLOAT *dpiX, FLOAT *dpiY) CONST PURE; + STDMETHOD(CreateEffect)(REFCLSID effectId, ID2D1Effect **effect) PURE; + STDMETHOD(GetMaximumSupportedFeatureLevel)(CONST D3D_FEATURE_LEVEL *featureLevels, UINT32 featureLevelsCount, + D3D_FEATURE_LEVEL *maximumSupportedFeatureLevel) CONST PURE; + STDMETHOD(CreateTransformNodeFromEffect)(ID2D1Effect *effect, ID2D1TransformNode **transformNode) PURE; + STDMETHOD(CreateBlendTransform)(UINT32 numInputs, CONST D2D1_BLEND_DESCRIPTION *blendDescription, ID2D1BlendTransform **transform) PURE; + STDMETHOD(CreateBorderTransform)(D2D1_EXTEND_MODE extendModeX, D2D1_EXTEND_MODE extendModeY, ID2D1BorderTransform **transform) PURE; + STDMETHOD(CreateOffsetTransform)(D2D1_POINT_2L offset, ID2D1OffsetTransform **transform) PURE; + STDMETHOD(CreateBoundsAdjustmentTransform)(CONST D2D1_RECT_L *outputRectangle, ID2D1BoundsAdjustmentTransform **transform) PURE; + STDMETHOD(LoadPixelShader)(REFGUID shaderId, CONST BYTE *shaderBuffer, UINT32 shaderBufferCount) PURE; + STDMETHOD(LoadVertexShader)(REFGUID resourceId, CONST BYTE *shaderBuffer, UINT32 shaderBufferCount) PURE; + STDMETHOD(LoadComputeShader)(REFGUID resourceId, CONST BYTE *shaderBuffer, UINT32 shaderBufferCount) PURE; + STDMETHOD_(BOOL, IsShaderLoaded)(REFGUID shaderId) PURE; + STDMETHOD(CreateResourceTexture)(CONST GUID *resourceId, CONST D2D1_RESOURCE_TEXTURE_PROPERTIES *resourceTextureProperties, + CONST BYTE *data, CONST UINT32 *strides, UINT32 dataSize, ID2D1ResourceTexture **resourceTexture) PURE; + STDMETHOD(FindResourceTexture)(CONST GUID *resourceId, ID2D1ResourceTexture **resourceTexture) PURE; + STDMETHOD(CreateVertexBuffer)(CONST D2D1_VERTEX_BUFFER_PROPERTIES *vertexBufferProperties, CONST GUID *resourceId, + CONST D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES *customVertexBufferProperties, ID2D1VertexBuffer **buffer) PURE; + STDMETHOD(FindVertexBuffer)(CONST GUID *resourceId, ID2D1VertexBuffer **buffer) PURE; + STDMETHOD(CreateColorContext)(D2D1_COLOR_SPACE space, CONST BYTE *profile, UINT32 profileSize, ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateColorContextFromFilename)(PCWSTR filename, ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CreateColorContextFromWicColorContext)(IWICColorContext *wicColorContext, ID2D1ColorContext **colorContext) PURE; + STDMETHOD(CheckFeatureSupport)(D2D1_FEATURE feature, void *featureSupportData, UINT32 featureSupportDataSize) CONST PURE; + STDMETHOD_(BOOL, IsBufferPrecisionSupported)(D2D1_BUFFER_PRECISION bufferPrecision) CONST PURE; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1BlendTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1BlendTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1BlendTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1BlendTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1ConcreteTransform methods ***/ -#define ID2D1BlendTransform_SetOutputBuffer(This,precision,depth) (This)->lpVtbl->SetOutputBuffer(This,precision,depth) -#define ID2D1BlendTransform_SetCached(This,is_cached) (This)->lpVtbl->SetCached(This,is_cached) -/*** ID2D1BlendTransform methods ***/ -#define ID2D1BlendTransform_SetDescription(This,description) (This)->lpVtbl->SetDescription(This,description) -#define ID2D1BlendTransform_GetDescription(This,description) (This)->lpVtbl->GetDescription(This,description) #else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1BlendTransform_QueryInterface(ID2D1BlendTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1BlendTransform_AddRef(ID2D1BlendTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1BlendTransform_Release(ID2D1BlendTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1BlendTransform_GetInputCount(ID2D1BlendTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1ConcreteTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1BlendTransform_SetOutputBuffer(ID2D1BlendTransform* This,D2D1_BUFFER_PRECISION precision,D2D1_CHANNEL_DEPTH depth) { - return This->lpVtbl->SetOutputBuffer(This,precision,depth); -} -static __WIDL_INLINE void ID2D1BlendTransform_SetCached(ID2D1BlendTransform* This,WINBOOL is_cached) { - This->lpVtbl->SetCached(This,is_cached); -} -/*** ID2D1BlendTransform methods ***/ -static __WIDL_INLINE void ID2D1BlendTransform_SetDescription(ID2D1BlendTransform* This,const D2D1_BLEND_DESCRIPTION *description) { - This->lpVtbl->SetDescription(This,description); -} -static __WIDL_INLINE void ID2D1BlendTransform_GetDescription(ID2D1BlendTransform* This,D2D1_BLEND_DESCRIPTION *description) { - This->lpVtbl->GetDescription(This,description); -} -#endif -#endif + +typedef interface ID2D1EffectContext ID2D1EffectContext; +/* FIXME: Add full C declaration */ #endif +DEFINE_GUID(IID_ID2D1EffectContext,0x3d9f916b,0x27dc,0x4ad7,0xb4,0xf1,0x64,0x94,0x53,0x40,0xf5,0x63); +__CRT_UUID_DECL(ID2D1EffectContext,0x3d9f916b,0x27dc,0x4ad7,0xb4,0xf1,0x64,0x94,0x53,0x40,0xf5,0x63); -#endif /* __ID2D1BlendTransform_INTERFACE_DEFINED__ */ +#ifndef D2D_USE_C_DEFINITIONS -/***************************************************************************** - * ID2D1BorderTransform interface - */ -#ifndef __ID2D1BorderTransform_INTERFACE_DEFINED__ -#define __ID2D1BorderTransform_INTERFACE_DEFINED__ +interface ID2D1EffectImpl : public IUnknown { + STDMETHOD(Initialize)(ID2D1EffectContext *effectContext, ID2D1TransformGraph *transformGraph) PURE; + STDMETHOD(PrepareForRender)(D2D1_CHANGE_TYPE changeType) PURE; + STDMETHOD(SetGraph)(ID2D1TransformGraph *transformGraph) PURE; +}; -DEFINE_GUID(IID_ID2D1BorderTransform, 0x4998735c, 0x3a19, 0x473c, 0x97,0x81, 0x65,0x68,0x47,0xe3,0xa3,0x47); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("4998735c-3a19-473c-9781-656847e3a347") -ID2D1BorderTransform : public ID2D1ConcreteTransform +#else + +typedef interface ID2D1EffectImpl ID2D1EffectImpl; + +typedef struct ID2D1EffectImplVtbl { - virtual void STDMETHODCALLTYPE SetExtendModeX( - D2D1_EXTEND_MODE mode) = 0; - - virtual void STDMETHODCALLTYPE SetExtendModeY( - D2D1_EXTEND_MODE mode) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendModeX( - ) = 0; - - virtual D2D1_EXTEND_MODE STDMETHODCALLTYPE GetExtendModeY( - ) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1BorderTransform, 0x4998735c, 0x3a19, 0x473c, 0x97,0x81, 0x65,0x68,0x47,0xe3,0xa3,0x47) -#endif -#else -typedef struct ID2D1BorderTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1BorderTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1BorderTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1BorderTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1BorderTransform *This); - - /*** ID2D1ConcreteTransform methods ***/ - HRESULT (STDMETHODCALLTYPE *SetOutputBuffer)( - ID2D1BorderTransform *This, - D2D1_BUFFER_PRECISION precision, - D2D1_CHANNEL_DEPTH depth); - - void (STDMETHODCALLTYPE *SetCached)( - ID2D1BorderTransform *This, - WINBOOL is_cached); - - /*** ID2D1BorderTransform methods ***/ - void (STDMETHODCALLTYPE *SetExtendModeX)( - ID2D1BorderTransform *This, - D2D1_EXTEND_MODE mode); - - void (STDMETHODCALLTYPE *SetExtendModeY)( - ID2D1BorderTransform *This, - D2D1_EXTEND_MODE mode); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeX)( - ID2D1BorderTransform *This); - - D2D1_EXTEND_MODE (STDMETHODCALLTYPE *GetExtendModeY)( - ID2D1BorderTransform *This); - - END_INTERFACE -} ID2D1BorderTransformVtbl; - -interface ID2D1BorderTransform { - CONST_VTBL ID2D1BorderTransformVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1BorderTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1BorderTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1BorderTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1BorderTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1ConcreteTransform methods ***/ -#define ID2D1BorderTransform_SetOutputBuffer(This,precision,depth) (This)->lpVtbl->SetOutputBuffer(This,precision,depth) -#define ID2D1BorderTransform_SetCached(This,is_cached) (This)->lpVtbl->SetCached(This,is_cached) -/*** ID2D1BorderTransform methods ***/ -#define ID2D1BorderTransform_SetExtendModeX(This,mode) (This)->lpVtbl->SetExtendModeX(This,mode) -#define ID2D1BorderTransform_SetExtendModeY(This,mode) (This)->lpVtbl->SetExtendModeY(This,mode) -#define ID2D1BorderTransform_GetExtendModeX(This) (This)->lpVtbl->GetExtendModeX(This) -#define ID2D1BorderTransform_GetExtendModeY(This) (This)->lpVtbl->GetExtendModeY(This) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1BorderTransform_QueryInterface(ID2D1BorderTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1BorderTransform_AddRef(ID2D1BorderTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1BorderTransform_Release(ID2D1BorderTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1BorderTransform_GetInputCount(ID2D1BorderTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1ConcreteTransform methods ***/ -static __WIDL_INLINE HRESULT ID2D1BorderTransform_SetOutputBuffer(ID2D1BorderTransform* This,D2D1_BUFFER_PRECISION precision,D2D1_CHANNEL_DEPTH depth) { - return This->lpVtbl->SetOutputBuffer(This,precision,depth); -} -static __WIDL_INLINE void ID2D1BorderTransform_SetCached(ID2D1BorderTransform* This,WINBOOL is_cached) { - This->lpVtbl->SetCached(This,is_cached); -} -/*** ID2D1BorderTransform methods ***/ -static __WIDL_INLINE void ID2D1BorderTransform_SetExtendModeX(ID2D1BorderTransform* This,D2D1_EXTEND_MODE mode) { - This->lpVtbl->SetExtendModeX(This,mode); -} -static __WIDL_INLINE void ID2D1BorderTransform_SetExtendModeY(ID2D1BorderTransform* This,D2D1_EXTEND_MODE mode) { - This->lpVtbl->SetExtendModeY(This,mode); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1BorderTransform_GetExtendModeX(ID2D1BorderTransform* This) { - return This->lpVtbl->GetExtendModeX(This); -} -static __WIDL_INLINE D2D1_EXTEND_MODE ID2D1BorderTransform_GetExtendModeY(ID2D1BorderTransform* This) { - return This->lpVtbl->GetExtendModeY(This); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1BorderTransform_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1OffsetTransform interface - */ -#ifndef __ID2D1OffsetTransform_INTERFACE_DEFINED__ -#define __ID2D1OffsetTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1OffsetTransform, 0x3fe6adea, 0x7643, 0x4f53, 0xbd,0x14, 0xa0,0xce,0x63,0xf2,0x40,0x42); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("3fe6adea-7643-4f53-bd14-a0ce63f24042") -ID2D1OffsetTransform : public ID2D1TransformNode -{ - virtual void STDMETHODCALLTYPE SetOffset( - D2D1_POINT_2L offset) = 0; - -#ifdef WIDL_EXPLICIT_AGGREGATE_RETURNS - virtual D2D1_POINT_2L* STDMETHODCALLTYPE GetOffset( - D2D1_POINT_2L *__ret) = 0; - D2D1_POINT_2L STDMETHODCALLTYPE GetOffset( - ) - { - D2D1_POINT_2L __ret; - return *GetOffset(&__ret); - } -#else - virtual D2D1_POINT_2L STDMETHODCALLTYPE GetOffset( - ) = 0; -#endif - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1OffsetTransform, 0x3fe6adea, 0x7643, 0x4f53, 0xbd,0x14, 0xa0,0xce,0x63,0xf2,0x40,0x42) -#endif -#else -typedef struct ID2D1OffsetTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1OffsetTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1OffsetTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1OffsetTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1OffsetTransform *This); - - /*** ID2D1OffsetTransform methods ***/ - void (STDMETHODCALLTYPE *SetOffset)( - ID2D1OffsetTransform *This, - D2D1_POINT_2L offset); - - D2D1_POINT_2L * (STDMETHODCALLTYPE *GetOffset)( - ID2D1OffsetTransform *This, - D2D1_POINT_2L *__ret); - - END_INTERFACE -} ID2D1OffsetTransformVtbl; - -interface ID2D1OffsetTransform { - CONST_VTBL ID2D1OffsetTransformVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1OffsetTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1OffsetTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1OffsetTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1OffsetTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1OffsetTransform methods ***/ -#define ID2D1OffsetTransform_SetOffset(This,offset) (This)->lpVtbl->SetOffset(This,offset) -#define ID2D1OffsetTransform_GetOffset(This) ID2D1OffsetTransform_GetOffset_define_WIDL_C_INLINE_WRAPPERS_for_aggregate_return_support -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1OffsetTransform_QueryInterface(ID2D1OffsetTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1OffsetTransform_AddRef(ID2D1OffsetTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1OffsetTransform_Release(ID2D1OffsetTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1OffsetTransform_GetInputCount(ID2D1OffsetTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1OffsetTransform methods ***/ -static __WIDL_INLINE void ID2D1OffsetTransform_SetOffset(ID2D1OffsetTransform* This,D2D1_POINT_2L offset) { - This->lpVtbl->SetOffset(This,offset); -} -static __WIDL_INLINE D2D1_POINT_2L ID2D1OffsetTransform_GetOffset(ID2D1OffsetTransform* This) { - D2D1_POINT_2L __ret; - return *This->lpVtbl->GetOffset(This,&__ret); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1OffsetTransform_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1BoundsAdjustmentTransform interface - */ -#ifndef __ID2D1BoundsAdjustmentTransform_INTERFACE_DEFINED__ -#define __ID2D1BoundsAdjustmentTransform_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1BoundsAdjustmentTransform, 0x90f732e2, 0x5092, 0x4606, 0xa8,0x19, 0x86,0x51,0x97,0x0b,0xac,0xcd); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("90f732e2-5092-4606-a819-8651970baccd") -ID2D1BoundsAdjustmentTransform : public ID2D1TransformNode -{ - virtual void STDMETHODCALLTYPE SetOutputBounds( - const D2D1_RECT_L *bounds) = 0; - - virtual void STDMETHODCALLTYPE GetOutputBounds( - D2D1_RECT_L *bounds) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1BoundsAdjustmentTransform, 0x90f732e2, 0x5092, 0x4606, 0xa8,0x19, 0x86,0x51,0x97,0x0b,0xac,0xcd) -#endif -#else -typedef struct ID2D1BoundsAdjustmentTransformVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1BoundsAdjustmentTransform *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1BoundsAdjustmentTransform *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1BoundsAdjustmentTransform *This); - - /*** ID2D1TransformNode methods ***/ - UINT32 (STDMETHODCALLTYPE *GetInputCount)( - ID2D1BoundsAdjustmentTransform *This); - - /*** ID2D1BoundsAdjustmentTransform methods ***/ - void (STDMETHODCALLTYPE *SetOutputBounds)( - ID2D1BoundsAdjustmentTransform *This, - const D2D1_RECT_L *bounds); - - void (STDMETHODCALLTYPE *GetOutputBounds)( - ID2D1BoundsAdjustmentTransform *This, - D2D1_RECT_L *bounds); - - END_INTERFACE -} ID2D1BoundsAdjustmentTransformVtbl; - -interface ID2D1BoundsAdjustmentTransform { - CONST_VTBL ID2D1BoundsAdjustmentTransformVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1BoundsAdjustmentTransform_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1BoundsAdjustmentTransform_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1BoundsAdjustmentTransform_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1TransformNode methods ***/ -#define ID2D1BoundsAdjustmentTransform_GetInputCount(This) (This)->lpVtbl->GetInputCount(This) -/*** ID2D1BoundsAdjustmentTransform methods ***/ -#define ID2D1BoundsAdjustmentTransform_SetOutputBounds(This,bounds) (This)->lpVtbl->SetOutputBounds(This,bounds) -#define ID2D1BoundsAdjustmentTransform_GetOutputBounds(This,bounds) (This)->lpVtbl->GetOutputBounds(This,bounds) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1BoundsAdjustmentTransform_QueryInterface(ID2D1BoundsAdjustmentTransform* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1BoundsAdjustmentTransform_AddRef(ID2D1BoundsAdjustmentTransform* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1BoundsAdjustmentTransform_Release(ID2D1BoundsAdjustmentTransform* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1TransformNode methods ***/ -static __WIDL_INLINE UINT32 ID2D1BoundsAdjustmentTransform_GetInputCount(ID2D1BoundsAdjustmentTransform* This) { - return This->lpVtbl->GetInputCount(This); -} -/*** ID2D1BoundsAdjustmentTransform methods ***/ -static __WIDL_INLINE void ID2D1BoundsAdjustmentTransform_SetOutputBounds(ID2D1BoundsAdjustmentTransform* This,const D2D1_RECT_L *bounds) { - This->lpVtbl->SetOutputBounds(This,bounds); -} -static __WIDL_INLINE void ID2D1BoundsAdjustmentTransform_GetOutputBounds(ID2D1BoundsAdjustmentTransform* This,D2D1_RECT_L *bounds) { - This->lpVtbl->GetOutputBounds(This,bounds); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1BoundsAdjustmentTransform_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1EffectContext interface - */ -#ifndef __ID2D1EffectContext_INTERFACE_DEFINED__ -#define __ID2D1EffectContext_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1EffectContext, 0x3d9f916b, 0x27dc, 0x4ad7, 0xb4,0xf1, 0x64,0x94,0x53,0x40,0xf5,0x63); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("3d9f916b-27dc-4ad7-b4f1-64945340f563") -ID2D1EffectContext : public IUnknown -{ - virtual void STDMETHODCALLTYPE GetDpi( - float *dpi_x, - float *dpi_y) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateEffect( - REFCLSID clsid, - ID2D1Effect **effect) = 0; - - virtual HRESULT STDMETHODCALLTYPE GetMaximumSupportedFeatureLevel( - const D3D_FEATURE_LEVEL *levels, - UINT32 level_count, - D3D_FEATURE_LEVEL *max_level) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateTransformNodeFromEffect( - ID2D1Effect *effect, - ID2D1TransformNode **node) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBlendTransform( - UINT32 num_inputs, - const D2D1_BLEND_DESCRIPTION *description, - ID2D1BlendTransform **transform) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBorderTransform( - D2D1_EXTEND_MODE mode_x, - D2D1_EXTEND_MODE mode_y, - ID2D1BorderTransform **transform) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateOffsetTransform( - D2D1_POINT_2L offset, - ID2D1OffsetTransform **transform) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateBoundsAdjustmentTransform( - const D2D1_RECT_L *output_rect, - ID2D1BoundsAdjustmentTransform **transform) = 0; - - virtual HRESULT STDMETHODCALLTYPE LoadPixelShader( - REFGUID shader_id, - const BYTE *buffer, - UINT32 buffer_size) = 0; - - virtual HRESULT STDMETHODCALLTYPE LoadVertexShader( - REFGUID shader_id, - const BYTE *buffer, - UINT32 buffer_size) = 0; - - virtual HRESULT STDMETHODCALLTYPE LoadComputeShader( - REFGUID shader_id, - const BYTE *buffer, - UINT32 buffer_size) = 0; - - virtual WINBOOL STDMETHODCALLTYPE IsShaderLoaded( - REFGUID shader_id) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateResourceTexture( - const GUID *id, - const D2D1_RESOURCE_TEXTURE_PROPERTIES *texture_properties, - const BYTE *data, - const UINT32 *strides, - UINT32 data_size, - ID2D1ResourceTexture **texture) = 0; - - virtual HRESULT STDMETHODCALLTYPE FindResourceTexture( - const GUID *id, - ID2D1ResourceTexture **texture) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateVertexBuffer( - const D2D1_VERTEX_BUFFER_PROPERTIES *buffer_properties, - const GUID *id, - const D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES *custom_buffer_properties, - ID2D1VertexBuffer **buffer) = 0; - - virtual HRESULT STDMETHODCALLTYPE FindVertexBuffer( - const GUID *id, - ID2D1VertexBuffer **buffer) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateColorContext( - D2D1_COLOR_SPACE space, - const BYTE *profile, - UINT32 profile_size, - ID2D1ColorContext **color_context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateColorContextFromFilename( - const WCHAR *filename, - ID2D1ColorContext **color_context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateColorContextFromWicColorContext( - IWICColorContext *wic_color_context, - ID2D1ColorContext **color_context) = 0; - - virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( - D2D1_FEATURE feature, - void *data, - UINT32 data_size) = 0; - - virtual WINBOOL STDMETHODCALLTYPE IsBufferPrecisionSupported( - D2D1_BUFFER_PRECISION precision) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1EffectContext, 0x3d9f916b, 0x27dc, 0x4ad7, 0xb4,0xf1, 0x64,0x94,0x53,0x40,0xf5,0x63) -#endif -#else -typedef struct ID2D1EffectContextVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1EffectContext *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1EffectContext *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1EffectContext *This); - - /*** ID2D1EffectContext methods ***/ - void (STDMETHODCALLTYPE *GetDpi)( - ID2D1EffectContext *This, - float *dpi_x, - float *dpi_y); - - HRESULT (STDMETHODCALLTYPE *CreateEffect)( - ID2D1EffectContext *This, - REFCLSID clsid, - ID2D1Effect **effect); - - HRESULT (STDMETHODCALLTYPE *GetMaximumSupportedFeatureLevel)( - ID2D1EffectContext *This, - const D3D_FEATURE_LEVEL *levels, - UINT32 level_count, - D3D_FEATURE_LEVEL *max_level); - - HRESULT (STDMETHODCALLTYPE *CreateTransformNodeFromEffect)( - ID2D1EffectContext *This, - ID2D1Effect *effect, - ID2D1TransformNode **node); - - HRESULT (STDMETHODCALLTYPE *CreateBlendTransform)( - ID2D1EffectContext *This, - UINT32 num_inputs, - const D2D1_BLEND_DESCRIPTION *description, - ID2D1BlendTransform **transform); - - HRESULT (STDMETHODCALLTYPE *CreateBorderTransform)( - ID2D1EffectContext *This, - D2D1_EXTEND_MODE mode_x, - D2D1_EXTEND_MODE mode_y, - ID2D1BorderTransform **transform); - - HRESULT (STDMETHODCALLTYPE *CreateOffsetTransform)( - ID2D1EffectContext *This, - D2D1_POINT_2L offset, - ID2D1OffsetTransform **transform); - - HRESULT (STDMETHODCALLTYPE *CreateBoundsAdjustmentTransform)( - ID2D1EffectContext *This, - const D2D1_RECT_L *output_rect, - ID2D1BoundsAdjustmentTransform **transform); - - HRESULT (STDMETHODCALLTYPE *LoadPixelShader)( - ID2D1EffectContext *This, - REFGUID shader_id, - const BYTE *buffer, - UINT32 buffer_size); - - HRESULT (STDMETHODCALLTYPE *LoadVertexShader)( - ID2D1EffectContext *This, - REFGUID shader_id, - const BYTE *buffer, - UINT32 buffer_size); - - HRESULT (STDMETHODCALLTYPE *LoadComputeShader)( - ID2D1EffectContext *This, - REFGUID shader_id, - const BYTE *buffer, - UINT32 buffer_size); - - WINBOOL (STDMETHODCALLTYPE *IsShaderLoaded)( - ID2D1EffectContext *This, - REFGUID shader_id); - - HRESULT (STDMETHODCALLTYPE *CreateResourceTexture)( - ID2D1EffectContext *This, - const GUID *id, - const D2D1_RESOURCE_TEXTURE_PROPERTIES *texture_properties, - const BYTE *data, - const UINT32 *strides, - UINT32 data_size, - ID2D1ResourceTexture **texture); - - HRESULT (STDMETHODCALLTYPE *FindResourceTexture)( - ID2D1EffectContext *This, - const GUID *id, - ID2D1ResourceTexture **texture); - - HRESULT (STDMETHODCALLTYPE *CreateVertexBuffer)( - ID2D1EffectContext *This, - const D2D1_VERTEX_BUFFER_PROPERTIES *buffer_properties, - const GUID *id, - const D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES *custom_buffer_properties, - ID2D1VertexBuffer **buffer); - - HRESULT (STDMETHODCALLTYPE *FindVertexBuffer)( - ID2D1EffectContext *This, - const GUID *id, - ID2D1VertexBuffer **buffer); - - HRESULT (STDMETHODCALLTYPE *CreateColorContext)( - ID2D1EffectContext *This, - D2D1_COLOR_SPACE space, - const BYTE *profile, - UINT32 profile_size, - ID2D1ColorContext **color_context); - - HRESULT (STDMETHODCALLTYPE *CreateColorContextFromFilename)( - ID2D1EffectContext *This, - const WCHAR *filename, - ID2D1ColorContext **color_context); - - HRESULT (STDMETHODCALLTYPE *CreateColorContextFromWicColorContext)( - ID2D1EffectContext *This, - IWICColorContext *wic_color_context, - ID2D1ColorContext **color_context); - - HRESULT (STDMETHODCALLTYPE *CheckFeatureSupport)( - ID2D1EffectContext *This, - D2D1_FEATURE feature, - void *data, - UINT32 data_size); - - WINBOOL (STDMETHODCALLTYPE *IsBufferPrecisionSupported)( - ID2D1EffectContext *This, - D2D1_BUFFER_PRECISION precision); - - END_INTERFACE -} ID2D1EffectContextVtbl; - -interface ID2D1EffectContext { - CONST_VTBL ID2D1EffectContextVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1EffectContext_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1EffectContext_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1EffectContext_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1EffectContext methods ***/ -#define ID2D1EffectContext_GetDpi(This,dpi_x,dpi_y) (This)->lpVtbl->GetDpi(This,dpi_x,dpi_y) -#define ID2D1EffectContext_CreateEffect(This,clsid,effect) (This)->lpVtbl->CreateEffect(This,clsid,effect) -#define ID2D1EffectContext_GetMaximumSupportedFeatureLevel(This,levels,level_count,max_level) (This)->lpVtbl->GetMaximumSupportedFeatureLevel(This,levels,level_count,max_level) -#define ID2D1EffectContext_CreateTransformNodeFromEffect(This,effect,node) (This)->lpVtbl->CreateTransformNodeFromEffect(This,effect,node) -#define ID2D1EffectContext_CreateBlendTransform(This,num_inputs,description,transform) (This)->lpVtbl->CreateBlendTransform(This,num_inputs,description,transform) -#define ID2D1EffectContext_CreateBorderTransform(This,mode_x,mode_y,transform) (This)->lpVtbl->CreateBorderTransform(This,mode_x,mode_y,transform) -#define ID2D1EffectContext_CreateOffsetTransform(This,offset,transform) (This)->lpVtbl->CreateOffsetTransform(This,offset,transform) -#define ID2D1EffectContext_CreateBoundsAdjustmentTransform(This,output_rect,transform) (This)->lpVtbl->CreateBoundsAdjustmentTransform(This,output_rect,transform) -#define ID2D1EffectContext_LoadPixelShader(This,shader_id,buffer,buffer_size) (This)->lpVtbl->LoadPixelShader(This,shader_id,buffer,buffer_size) -#define ID2D1EffectContext_LoadVertexShader(This,shader_id,buffer,buffer_size) (This)->lpVtbl->LoadVertexShader(This,shader_id,buffer,buffer_size) -#define ID2D1EffectContext_LoadComputeShader(This,shader_id,buffer,buffer_size) (This)->lpVtbl->LoadComputeShader(This,shader_id,buffer,buffer_size) -#define ID2D1EffectContext_IsShaderLoaded(This,shader_id) (This)->lpVtbl->IsShaderLoaded(This,shader_id) -#define ID2D1EffectContext_CreateResourceTexture(This,id,texture_properties,data,strides,data_size,texture) (This)->lpVtbl->CreateResourceTexture(This,id,texture_properties,data,strides,data_size,texture) -#define ID2D1EffectContext_FindResourceTexture(This,id,texture) (This)->lpVtbl->FindResourceTexture(This,id,texture) -#define ID2D1EffectContext_CreateVertexBuffer(This,buffer_properties,id,custom_buffer_properties,buffer) (This)->lpVtbl->CreateVertexBuffer(This,buffer_properties,id,custom_buffer_properties,buffer) -#define ID2D1EffectContext_FindVertexBuffer(This,id,buffer) (This)->lpVtbl->FindVertexBuffer(This,id,buffer) -#define ID2D1EffectContext_CreateColorContext(This,space,profile,profile_size,color_context) (This)->lpVtbl->CreateColorContext(This,space,profile,profile_size,color_context) -#define ID2D1EffectContext_CreateColorContextFromFilename(This,filename,color_context) (This)->lpVtbl->CreateColorContextFromFilename(This,filename,color_context) -#define ID2D1EffectContext_CreateColorContextFromWicColorContext(This,wic_color_context,color_context) (This)->lpVtbl->CreateColorContextFromWicColorContext(This,wic_color_context,color_context) -#define ID2D1EffectContext_CheckFeatureSupport(This,feature,data,data_size) (This)->lpVtbl->CheckFeatureSupport(This,feature,data,data_size) -#define ID2D1EffectContext_IsBufferPrecisionSupported(This,precision) (This)->lpVtbl->IsBufferPrecisionSupported(This,precision) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1EffectContext_QueryInterface(ID2D1EffectContext* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1EffectContext_AddRef(ID2D1EffectContext* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1EffectContext_Release(ID2D1EffectContext* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1EffectContext methods ***/ -static __WIDL_INLINE void ID2D1EffectContext_GetDpi(ID2D1EffectContext* This,float *dpi_x,float *dpi_y) { - This->lpVtbl->GetDpi(This,dpi_x,dpi_y); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateEffect(ID2D1EffectContext* This,REFCLSID clsid,ID2D1Effect **effect) { - return This->lpVtbl->CreateEffect(This,clsid,effect); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_GetMaximumSupportedFeatureLevel(ID2D1EffectContext* This,const D3D_FEATURE_LEVEL *levels,UINT32 level_count,D3D_FEATURE_LEVEL *max_level) { - return This->lpVtbl->GetMaximumSupportedFeatureLevel(This,levels,level_count,max_level); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateTransformNodeFromEffect(ID2D1EffectContext* This,ID2D1Effect *effect,ID2D1TransformNode **node) { - return This->lpVtbl->CreateTransformNodeFromEffect(This,effect,node); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateBlendTransform(ID2D1EffectContext* This,UINT32 num_inputs,const D2D1_BLEND_DESCRIPTION *description,ID2D1BlendTransform **transform) { - return This->lpVtbl->CreateBlendTransform(This,num_inputs,description,transform); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateBorderTransform(ID2D1EffectContext* This,D2D1_EXTEND_MODE mode_x,D2D1_EXTEND_MODE mode_y,ID2D1BorderTransform **transform) { - return This->lpVtbl->CreateBorderTransform(This,mode_x,mode_y,transform); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateOffsetTransform(ID2D1EffectContext* This,D2D1_POINT_2L offset,ID2D1OffsetTransform **transform) { - return This->lpVtbl->CreateOffsetTransform(This,offset,transform); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateBoundsAdjustmentTransform(ID2D1EffectContext* This,const D2D1_RECT_L *output_rect,ID2D1BoundsAdjustmentTransform **transform) { - return This->lpVtbl->CreateBoundsAdjustmentTransform(This,output_rect,transform); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_LoadPixelShader(ID2D1EffectContext* This,REFGUID shader_id,const BYTE *buffer,UINT32 buffer_size) { - return This->lpVtbl->LoadPixelShader(This,shader_id,buffer,buffer_size); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_LoadVertexShader(ID2D1EffectContext* This,REFGUID shader_id,const BYTE *buffer,UINT32 buffer_size) { - return This->lpVtbl->LoadVertexShader(This,shader_id,buffer,buffer_size); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_LoadComputeShader(ID2D1EffectContext* This,REFGUID shader_id,const BYTE *buffer,UINT32 buffer_size) { - return This->lpVtbl->LoadComputeShader(This,shader_id,buffer,buffer_size); -} -static __WIDL_INLINE WINBOOL ID2D1EffectContext_IsShaderLoaded(ID2D1EffectContext* This,REFGUID shader_id) { - return This->lpVtbl->IsShaderLoaded(This,shader_id); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateResourceTexture(ID2D1EffectContext* This,const GUID *id,const D2D1_RESOURCE_TEXTURE_PROPERTIES *texture_properties,const BYTE *data,const UINT32 *strides,UINT32 data_size,ID2D1ResourceTexture **texture) { - return This->lpVtbl->CreateResourceTexture(This,id,texture_properties,data,strides,data_size,texture); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_FindResourceTexture(ID2D1EffectContext* This,const GUID *id,ID2D1ResourceTexture **texture) { - return This->lpVtbl->FindResourceTexture(This,id,texture); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateVertexBuffer(ID2D1EffectContext* This,const D2D1_VERTEX_BUFFER_PROPERTIES *buffer_properties,const GUID *id,const D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES *custom_buffer_properties,ID2D1VertexBuffer **buffer) { - return This->lpVtbl->CreateVertexBuffer(This,buffer_properties,id,custom_buffer_properties,buffer); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_FindVertexBuffer(ID2D1EffectContext* This,const GUID *id,ID2D1VertexBuffer **buffer) { - return This->lpVtbl->FindVertexBuffer(This,id,buffer); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateColorContext(ID2D1EffectContext* This,D2D1_COLOR_SPACE space,const BYTE *profile,UINT32 profile_size,ID2D1ColorContext **color_context) { - return This->lpVtbl->CreateColorContext(This,space,profile,profile_size,color_context); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateColorContextFromFilename(ID2D1EffectContext* This,const WCHAR *filename,ID2D1ColorContext **color_context) { - return This->lpVtbl->CreateColorContextFromFilename(This,filename,color_context); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CreateColorContextFromWicColorContext(ID2D1EffectContext* This,IWICColorContext *wic_color_context,ID2D1ColorContext **color_context) { - return This->lpVtbl->CreateColorContextFromWicColorContext(This,wic_color_context,color_context); -} -static __WIDL_INLINE HRESULT ID2D1EffectContext_CheckFeatureSupport(ID2D1EffectContext* This,D2D1_FEATURE feature,void *data,UINT32 data_size) { - return This->lpVtbl->CheckFeatureSupport(This,feature,data,data_size); -} -static __WIDL_INLINE WINBOOL ID2D1EffectContext_IsBufferPrecisionSupported(ID2D1EffectContext* This,D2D1_BUFFER_PRECISION precision) { - return This->lpVtbl->IsBufferPrecisionSupported(This,precision); -} -#endif -#endif - -#endif - - -#endif /* __ID2D1EffectContext_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * ID2D1EffectImpl interface - */ -#ifndef __ID2D1EffectImpl_INTERFACE_DEFINED__ -#define __ID2D1EffectImpl_INTERFACE_DEFINED__ - -DEFINE_GUID(IID_ID2D1EffectImpl, 0xa248fd3f, 0x3e6c, 0x4e63, 0x9f,0x03, 0x7f,0x68,0xec,0xc9,0x1d,0xb9); -#if defined(__cplusplus) && !defined(CINTERFACE) -MIDL_INTERFACE("a248fd3f-3e6c-4e63-9f03-7f68ecc91db9") -ID2D1EffectImpl : public IUnknown -{ - virtual HRESULT STDMETHODCALLTYPE Initialize( - ID2D1EffectContext *context, - ID2D1TransformGraph *graph) = 0; - - virtual HRESULT STDMETHODCALLTYPE PrepareForRender( - D2D1_CHANGE_TYPE type) = 0; - - virtual HRESULT STDMETHODCALLTYPE SetGraph( - ID2D1TransformGraph *graph) = 0; - -}; -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(ID2D1EffectImpl, 0xa248fd3f, 0x3e6c, 0x4e63, 0x9f,0x03, 0x7f,0x68,0xec,0xc9,0x1d,0xb9) -#endif -#else -typedef struct ID2D1EffectImplVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - ID2D1EffectImpl *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - ID2D1EffectImpl *This); - - ULONG (STDMETHODCALLTYPE *Release)( - ID2D1EffectImpl *This); - - /*** ID2D1EffectImpl methods ***/ - HRESULT (STDMETHODCALLTYPE *Initialize)( - ID2D1EffectImpl *This, - ID2D1EffectContext *context, - ID2D1TransformGraph *graph); - - HRESULT (STDMETHODCALLTYPE *PrepareForRender)( - ID2D1EffectImpl *This, - D2D1_CHANGE_TYPE type); - - HRESULT (STDMETHODCALLTYPE *SetGraph)( - ID2D1EffectImpl *This, - ID2D1TransformGraph *graph); - - END_INTERFACE + IUnknownVtbl Base; + STDMETHOD(Initialize)(ID2D1EffectImpl*,ID2D1EffectContext*,ID2D1TransformGraph*) PURE; + STDMETHOD(PrepareForRender)(ID2D1EffectImpl*,D2D1_CHANGE_TYPE) PURE; + STDMETHOD(SetGraph)(ID2D1EffectImpl*,ID2D1TransformGraph*) PURE; } ID2D1EffectImplVtbl; interface ID2D1EffectImpl { - CONST_VTBL ID2D1EffectImplVtbl* lpVtbl; + CONST struct ID2D1EffectImplVtbl *lpVtbl; }; -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define ID2D1EffectImpl_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define ID2D1EffectImpl_AddRef(This) (This)->lpVtbl->AddRef(This) -#define ID2D1EffectImpl_Release(This) (This)->lpVtbl->Release(This) -/*** ID2D1EffectImpl methods ***/ -#define ID2D1EffectImpl_Initialize(This,context,graph) (This)->lpVtbl->Initialize(This,context,graph) -#define ID2D1EffectImpl_PrepareForRender(This,type) (This)->lpVtbl->PrepareForRender(This,type) -#define ID2D1EffectImpl_SetGraph(This,graph) (This)->lpVtbl->SetGraph(This,graph) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT ID2D1EffectImpl_QueryInterface(ID2D1EffectImpl* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG ID2D1EffectImpl_AddRef(ID2D1EffectImpl* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG ID2D1EffectImpl_Release(ID2D1EffectImpl* This) { - return This->lpVtbl->Release(This); -} -/*** ID2D1EffectImpl methods ***/ -static __WIDL_INLINE HRESULT ID2D1EffectImpl_Initialize(ID2D1EffectImpl* This,ID2D1EffectContext *context,ID2D1TransformGraph *graph) { - return This->lpVtbl->Initialize(This,context,graph); -} -static __WIDL_INLINE HRESULT ID2D1EffectImpl_PrepareForRender(ID2D1EffectImpl* This,D2D1_CHANGE_TYPE type) { - return This->lpVtbl->PrepareForRender(This,type); -} -static __WIDL_INLINE HRESULT ID2D1EffectImpl_SetGraph(ID2D1EffectImpl* This,ID2D1TransformGraph *graph) { - return This->lpVtbl->SetGraph(This,graph); -} -#endif -#endif + +#define ID2D1EffectImpl_QueryInterface(This, riid, ppv) ((This)->lpVtbl->Base.QueryInterface((IUnknown*)(This), riid, ppv)) +#define ID2D1EffectImpl_AddRef(This) ((This)->lpVtbl->Base.AddRef((IUnknown*)(This))) +#define ID2D1EffectImpl_Release(This) ((This)->lpVtbl->Base.Release((IUnknown*)(This))) +#define ID2D1EffectImpl_Initialize(This, effectContext, transformGraph) ((This)->lpVtbl->Initialize(This, effectContext, transformGraph)) +#define ID2D1EffectImpl_PrepareForRender(This, changeType) ((This)->lpVtbl->PrepareForRender(This, changeType)) +#define ID2D1EffectImpl_SetGraph(This, transformGraph) ((This)->lpVtbl->SetGraph(This, transformGraph)) #endif +DEFINE_GUID(IID_ID2D1EffectImpl, 0xa248fd3f,0x3e6c,0x4e63,0x9f,0x03,0x7f,0x68,0xec,0xc9,0x1d,0xb9); +__CRT_UUID_DECL(ID2D1EffectImpl, 0xa248fd3f,0x3e6c,0x4e63,0x9f,0x03,0x7f,0x68,0xec,0xc9,0x1d,0xb9); -#endif /* __ID2D1EffectImpl_INTERFACE_DEFINED__ */ - -/* Begin additional prototypes for all interfaces */ - - -/* End additional prototypes */ - -#ifdef __cplusplus -} -#endif - -#endif /* __d2d1effectauthor_h__ */ +#endif /* _D2D1_EFFECT_AUTHOR_H_ */ diff --git a/mingw-w64-headers/include/d2d1effectauthor.idl b/mingw-w64-headers/include/d2d1effectauthor.idl deleted file mode 100644 index a58ec35b4..000000000 --- a/mingw-w64-headers/include/d2d1effectauthor.idl +++ /dev/null @@ -1,619 +0,0 @@ -/* - * Copyright 2022 Ziqing Hui for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - - import "d2d1_1.idl"; - -typedef HRESULT (__stdcall *PD2D1_PROPERTY_SET_FUNCTION)(IUnknown *effect, - const BYTE *data, UINT32 data_size); - -typedef HRESULT (__stdcall *PD2D1_PROPERTY_GET_FUNCTION)(const IUnknown *effect, - BYTE *data, UINT32 data_size, UINT32 *actual_size); - -typedef enum D2D1_FILTER -{ - D2D1_FILTER_MIN_MAG_MIP_POINT = 0x00, - D2D1_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x01, - D2D1_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x04, - D2D1_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x05, - D2D1_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, - D2D1_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, - D2D1_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, - D2D1_FILTER_MIN_MAG_MIP_LINEAR = 0x15, - D2D1_FILTER_ANISOTROPIC = 0x55, - D2D1_FILTER_FORCE_DWORD = 0xffffffff -} D2D1_FILTER; - -typedef enum D2D1_FEATURE -{ - D2D1_FEATURE_DOUBLES = 0x0, - D2D1_FEATURE_D3D10_X_HARDWARE_OPTIONS = 0x1, - D2D1_FEATURE_FORCE_DWORD = 0xffffffff -} D2D1_FEATURE; - -typedef struct D2D1_PROPERTY_BINDING -{ - const WCHAR *propertyName; - PD2D1_PROPERTY_SET_FUNCTION setFunction; - PD2D1_PROPERTY_GET_FUNCTION getFunction; -} D2D1_PROPERTY_BINDING; - -typedef enum D2D1_CHANNEL_DEPTH -{ - D2D1_CHANNEL_DEPTH_DEFAULT = 0x0, - D2D1_CHANNEL_DEPTH_1 = 0x1, - D2D1_CHANNEL_DEPTH_4 = 0x4, - D2D1_CHANNEL_DEPTH_FORCE_DWORD = 0xffffffff -} D2D1_CHANNEL_DEPTH; - -typedef enum D2D1_CHANGE_TYPE -{ - D2D1_CHANGE_TYPE_NONE = 0x0, - D2D1_CHANGE_TYPE_PROPERTIES = 0x1, - D2D1_CHANGE_TYPE_CONTEXT = 0x2, - D2D1_CHANGE_TYPE_GRAPH = 0x3, - D2D1_CHANGE_TYPE_FORCE_DWORD = 0xffffffff -} D2D1_CHANGE_TYPE; - -typedef enum D2D1_PIXEL_OPTIONS -{ - D2D1_PIXEL_OPTIONS_NONE = 0x0, - D2D1_PIXEL_OPTIONS_TRIVIAL_SAMPLING = 0x1, - D2D1_PIXEL_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_PIXEL_OPTIONS; - -typedef enum D2D1_VERTEX_OPTIONS -{ - D2D1_VERTEX_OPTIONS_NONE = 0x0, - D2D1_VERTEX_OPTIONS_DO_NOT_CLEAR = 0x1, - D2D1_VERTEX_OPTIONS_USE_DEPTH_BUFFER = 0x2, - D2D1_VERTEX_OPTIONS_ASSUME_NO_OVERLAP = 0x4, - D2D1_VERTEX_OPTIONS_FORCE_DWORD = 0xffffffff -} D2D1_VERTEX_OPTIONS; - -typedef enum D2D1_VERTEX_USAGE -{ - D2D1_VERTEX_USAGE_STATIC = 0x0, - D2D1_VERTEX_USAGE_DYNAMIC = 0x1, - D2D1_VERTEX_USAGE_FORCE_DWORD = 0xffffffff -} D2D1_VERTEX_USAGE; - -typedef enum D2D1_BLEND_OPERATION -{ - D2D1_BLEND_OPERATION_ADD = 0x1, - D2D1_BLEND_OPERATION_SUBTRACT = 0x2, - D2D1_BLEND_OPERATION_REV_SUBTRACT = 0x3, - D2D1_BLEND_OPERATION_MIN = 0x4, - D2D1_BLEND_OPERATION_MAX = 0x5, - D2D1_BLEND_OPERATION_FORCE_DWORD = 0xffffffff -} D2D1_BLEND_OPERATION; - -typedef enum D2D1_BLEND -{ - D2D1_BLEND_ZERO = 1, - D2D1_BLEND_ONE = 2, - D2D1_BLEND_SRC_COLOR = 3, - D2D1_BLEND_INV_SRC_COLOR = 4, - D2D1_BLEND_SRC_ALPHA = 5, - D2D1_BLEND_INV_SRC_ALPHA = 6, - D2D1_BLEND_DEST_ALPHA = 7, - D2D1_BLEND_INV_DEST_ALPHA = 8, - D2D1_BLEND_DEST_COLOR = 9, - D2D1_BLEND_INV_DEST_COLOR = 10, - D2D1_BLEND_SRC_ALPHA_SAT = 11, - D2D1_BLEND_BLEND_FACTOR = 14, - D2D1_BLEND_INV_BLEND_FACTOR = 15, - D2D1_BLEND_FORCE_DWORD = 0xffffffff -} D2D1_BLEND; - -typedef struct D2D1_INPUT_DESCRIPTION -{ - D2D1_FILTER filter; - UINT32 levelOfDetailCount; -} D2D1_INPUT_DESCRIPTION; - -typedef struct D2D1_VERTEX_RANGE -{ - UINT32 startVertex; - UINT32 vertexCount; -} D2D1_VERTEX_RANGE; - -typedef struct D2D1_BLEND_DESCRIPTION -{ - D2D1_BLEND sourceBlend; - D2D1_BLEND destinationBlend; - D2D1_BLEND_OPERATION blendOperation; - D2D1_BLEND sourceBlendAlpha; - D2D1_BLEND destinationBlendAlpha; - D2D1_BLEND_OPERATION blendOperationAlpha; - float blendFactor[4]; -} D2D1_BLEND_DESCRIPTION; - -typedef struct D2D1_RESOURCE_TEXTURE_PROPERTIES -{ - const UINT32 *extents; - UINT32 dimensions; - D2D1_BUFFER_PRECISION bufferPrecision; - D2D1_CHANNEL_DEPTH channelDepth; - D2D1_FILTER filter; - const D2D1_EXTEND_MODE *extendModes; -} D2D1_RESOURCE_TEXTURE_PROPERTIES; - -typedef struct D2D1_INPUT_ELEMENT_DESC -{ - const char *semanticName; - UINT32 semanticIndex; - DXGI_FORMAT format; - UINT32 inputSlot; - UINT32 alignedByteOffset; -} D2D1_INPUT_ELEMENT_DESC; - -typedef struct D2D1_VERTEX_BUFFER_PROPERTIES -{ - UINT32 inputCount; - D2D1_VERTEX_USAGE usage; - const BYTE *data; - UINT32 byteWidth; -} D2D1_VERTEX_BUFFER_PROPERTIES; - -typedef struct D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES -{ - const BYTE *shaderBufferWithInputSignature; - UINT32 shaderBufferSize; - const D2D1_INPUT_ELEMENT_DESC *inputElements; - UINT32 elementCount; - UINT32 stride; -} D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES; - -[ - object, - uuid(9b8b1336-00a5-4668-92b7-ced5d8bf9b7b), - local, -] -interface ID2D1VertexBuffer : IUnknown -{ - HRESULT Map( - [out] BYTE **data, - [in] UINT32 size - ); - HRESULT Unmap(); -} - -[ - object, - uuid(688d15c3-02b0-438d-b13a-d1b44c32c39a), - local, -] -interface ID2D1ResourceTexture : IUnknown -{ - HRESULT Update( - [in] const UINT32 *min_extents, - [in] const UINT32 *max_extents, - [in] const UINT32 *strides, - [in] UINT32 dimensions, - [in] const BYTE *data, - [in] UINT32 data_size - ); -} - -[ - object, - uuid(519ae1bd-d19a-420d-b849-364f594776b7), - local, -] -interface ID2D1RenderInfo : IUnknown -{ - HRESULT SetInputDescription( - [in] UINT32 index, - [in] D2D1_INPUT_DESCRIPTION description - ); - HRESULT SetOutputBuffer( - [in] D2D1_BUFFER_PRECISION precision, - [in] D2D1_CHANNEL_DEPTH depth - ); - void SetCached( - [in] BOOL is_cached - ); - void SetInstructionCountHint( - [in] UINT32 count - ); -} - -[ - object, - uuid(693ce632-7f2f-45de-93fe-18d88b37aa21), - local, -] -interface ID2D1DrawInfo : ID2D1RenderInfo -{ - HRESULT SetPixelShaderConstantBuffer( - [in] const BYTE *buffer, - [in] UINT32 size - ); - HRESULT SetResourceTexture( - [in] UINT32 index, - [in] ID2D1ResourceTexture *texture - ); - HRESULT SetVertexShaderConstantBuffer( - [in] const BYTE *buffer, - [in] UINT32 size - ); - HRESULT SetPixelShader( - [in] REFGUID id, - [in] D2D1_PIXEL_OPTIONS options - ); - HRESULT SetVertexProcessing( - [in, optional] ID2D1VertexBuffer *buffer, - [in] D2D1_VERTEX_OPTIONS options, - [in, optional] const D2D1_BLEND_DESCRIPTION *description, - [in, optional] const D2D1_VERTEX_RANGE *range, - [in, optional] const GUID *shader - ); -} - -[ - object, - uuid(5598b14b-9fd7-48b7-9bdb-8f0964eb38bc), - local, -] -interface ID2D1ComputeInfo : ID2D1RenderInfo -{ - HRESULT SetComputeShaderconstantBuffer( - [in] const BYTE *buffer, - [in] UINT32 size - ); - HRESULT SetComputeShader( - [in] REFGUID id - ); - HRESULT SetResourceTexture( - [in] UINT32 index, - [in] ID2D1ResourceTexture *texture - ); -} - -[ - object, - uuid(b2efe1e7-729f-4102-949f-505fa21bf666), - local, -] -interface ID2D1TransformNode : IUnknown -{ - UINT32 GetInputCount(); -} - -[ - object, - uuid(13d29038-c3e6-4034-9081-13b53a417992), - local, -] -interface ID2D1TransformGraph : IUnknown -{ - UINT32 GetInputCount(); - HRESULT SetSingleTransformNode( - [in] ID2D1TransformNode *node - ); - HRESULT AddNode( - [in] ID2D1TransformNode *node - ); - HRESULT RemoveNode( - [in] ID2D1TransformNode *node - ); - HRESULT SetOutputNode( - [in] ID2D1TransformNode *node - ); - HRESULT ConnectNode( - [in] ID2D1TransformNode *from_node, - [in] ID2D1TransformNode *to_node, - [in] UINT32 index - ); - HRESULT ConnectToEffectInput( - [in] UINT32 input_index, - [in] ID2D1TransformNode *node, - [in] UINT32 node_index - ); - void Clear(); - HRESULT SetPassthroughGraph( - [in] UINT32 index - ); -} - -[ - object, - uuid(ef1a287d-342a-4f76-8fdb-da0d6ea9f92b), - local, -] -interface ID2D1Transform : ID2D1TransformNode -{ - HRESULT MapOutputRectToInputRects( - [in] const D2D1_RECT_L *output_rect, - [out] D2D1_RECT_L *input_rects, - [in] UINT32 input_rects_count - ); - HRESULT MapInputRectsToOutputRect( - [in] const D2D1_RECT_L *input_rects, - [in] const D2D1_RECT_L *input_opaque_rects, - [in] UINT32 input_rect_count, - [out] D2D1_RECT_L *output_rect, - [out] D2D1_RECT_L *output_opaque_rect - ); - HRESULT MapInvalidRect( - [in] UINT32 index, - [in] D2D1_RECT_L input_rect, - [out] D2D1_RECT_L *output_rect - ); -} - -[ - object, - uuid(36bfdcb6-9739-435d-a30d-a653beff6a6f), - local, -] -interface ID2D1DrawTransform : ID2D1Transform -{ - HRESULT SetDrawInfo( - [in] ID2D1DrawInfo *info - ); -} - -[ - object, - uuid(0d85573c-01e3-4f7d-bfd9-0d60608bf3c3), - local, -] -interface ID2D1ComputeTransform : ID2D1Transform -{ - HRESULT SetComputeInfo( - [in] ID2D1ComputeInfo *info - ); - HRESULT CalculateThreadgroups( - [in] const D2D1_RECT_L *output_rect, - [out] UINT32 *dimension_x, - [out] UINT32 *dimension_y, - [out] UINT32 *dimension_z - ); -} - -[ - object, - uuid(0359dc30-95e6-4568-9055-27720d130e93), - local, -] -interface ID2D1AnalysisTransform : IUnknown -{ - HRESULT ProcessAnalysisResults( - [in] const BYTE *data, - [in] UINT32 size - ); -} - -[ - object, - uuid(db1800dd-0c34-4cf9-be90-31cc0a5653e1), - local, -] -interface ID2D1SourceTransform : ID2D1Transform -{ - HRESULT SetRenderInfo( - [in] ID2D1RenderInfo *info - ); - HRESULT Draw( - [in] ID2D1Bitmap1 *target, - [in] const D2D1_RECT_L *draw_rect, - [in] D2D1_POINT_2U target_origin - ); -} - -[ - object, - uuid(1a799d8a-69f7-4e4c-9fed-437ccc6684cc), - local, -] -interface ID2D1ConcreteTransform : ID2D1TransformNode -{ - HRESULT SetOutputBuffer( - [in] D2D1_BUFFER_PRECISION precision, - [in] D2D1_CHANNEL_DEPTH depth - ); - void SetCached( - [in] BOOL is_cached - ); -} - -[ - object, - uuid(63ac0b32-ba44-450f-8806-7f4ca1ff2f1b), - local, -] -interface ID2D1BlendTransform : ID2D1ConcreteTransform -{ - void SetDescription( - [in] const D2D1_BLEND_DESCRIPTION *description - ); - void GetDescription( - [out] D2D1_BLEND_DESCRIPTION *description - ); -} - -[ - object, - uuid(4998735c-3a19-473c-9781-656847e3a347), - local, -] -interface ID2D1BorderTransform : ID2D1ConcreteTransform -{ - void SetExtendModeX( - [in] D2D1_EXTEND_MODE mode - ); - void SetExtendModeY( - [in] D2D1_EXTEND_MODE mode - ); - D2D1_EXTEND_MODE GetExtendModeX(); - D2D1_EXTEND_MODE GetExtendModeY(); -} - -[ - object, - uuid(3fe6adea-7643-4f53-bd14-a0ce63f24042), - local, -] -interface ID2D1OffsetTransform : ID2D1TransformNode -{ - void SetOffset( - [in] D2D1_POINT_2L offset - ); - D2D1_POINT_2L GetOffset(); -} - -[ - object, - uuid(90f732e2-5092-4606-a819-8651970baccd), - local, -] -interface ID2D1BoundsAdjustmentTransform : ID2D1TransformNode -{ - void SetOutputBounds( - [in] const D2D1_RECT_L *bounds - ); - void GetOutputBounds( - [out] D2D1_RECT_L *bounds - ); -} - -[ - object, - uuid(3d9f916b-27dc-4ad7-b4f1-64945340f563), - local, -] -interface ID2D1EffectContext : IUnknown -{ - void GetDpi( - [out] float *dpi_x, - [out] float *dpi_y - ); - HRESULT CreateEffect( - [in] REFCLSID clsid, - [out] ID2D1Effect **effect - ); - HRESULT GetMaximumSupportedFeatureLevel( - [in] const D3D_FEATURE_LEVEL *levels, - [in] UINT32 level_count, - [out] D3D_FEATURE_LEVEL *max_level - ); - HRESULT CreateTransformNodeFromEffect( - [in] ID2D1Effect *effect, - [out] ID2D1TransformNode **node - ); - HRESULT CreateBlendTransform( - [in] UINT32 num_inputs, - [in] const D2D1_BLEND_DESCRIPTION *description, - [out] ID2D1BlendTransform **transform - ); - HRESULT CreateBorderTransform( - [in] D2D1_EXTEND_MODE mode_x, - [in] D2D1_EXTEND_MODE mode_y, - [out] ID2D1BorderTransform **transform - ); - HRESULT CreateOffsetTransform( - [in] D2D1_POINT_2L offset, - [out] ID2D1OffsetTransform **transform - ); - HRESULT CreateBoundsAdjustmentTransform( - [in] const D2D1_RECT_L *output_rect, - [out] ID2D1BoundsAdjustmentTransform **transform - ); - HRESULT LoadPixelShader( - [in] REFGUID shader_id, - [in] const BYTE *buffer, - [in] UINT32 buffer_size - ); - HRESULT LoadVertexShader( - [in] REFGUID shader_id, - [in] const BYTE *buffer, - [in] UINT32 buffer_size - ); - HRESULT LoadComputeShader( - [in] REFGUID shader_id, - [in] const BYTE *buffer, - [in] UINT32 buffer_size - ); - BOOL IsShaderLoaded( - [in] REFGUID shader_id - ); - HRESULT CreateResourceTexture( - [in, optional] const GUID *id, - [in] const D2D1_RESOURCE_TEXTURE_PROPERTIES *texture_properties, - [in] const BYTE *data, - [in] const UINT32 *strides, - [in] UINT32 data_size, - [out] ID2D1ResourceTexture **texture - ); - HRESULT FindResourceTexture( - [in] const GUID *id, - [out] ID2D1ResourceTexture **texture - ); - HRESULT CreateVertexBuffer( - [in] const D2D1_VERTEX_BUFFER_PROPERTIES *buffer_properties, - [in, optional] const GUID *id, - [in, optional] const D2D1_CUSTOM_VERTEX_BUFFER_PROPERTIES *custom_buffer_properties, - [out] ID2D1VertexBuffer **buffer - ); - HRESULT FindVertexBuffer( - [in] const GUID *id, - [out] ID2D1VertexBuffer **buffer - ); - HRESULT CreateColorContext( - [in] D2D1_COLOR_SPACE space, - [in] const BYTE *profile, - [in] UINT32 profile_size, - [out] ID2D1ColorContext **color_context - ); - HRESULT CreateColorContextFromFilename( - [in] const WCHAR *filename, - [out] ID2D1ColorContext **color_context - ); - HRESULT CreateColorContextFromWicColorContext( - [in] IWICColorContext *wic_color_context, - [out] ID2D1ColorContext **color_context - ); - HRESULT CheckFeatureSupport( - [in] D2D1_FEATURE feature, - [out] void *data, - [in] UINT32 data_size - ); - BOOL IsBufferPrecisionSupported( - [in] D2D1_BUFFER_PRECISION precision - ); -} - -[ - object, - uuid(a248fd3f-3e6c-4e63-9f03-7f68ecc91db9), - local, -] -interface ID2D1EffectImpl : IUnknown -{ - HRESULT Initialize( - [in] ID2D1EffectContext *context, - [in] ID2D1TransformGraph *graph - ); - HRESULT PrepareForRender( - [in] D2D1_CHANGE_TYPE type - ); - HRESULT SetGraph( - [in] ID2D1TransformGraph *graph - ); -} diff --git a/mingw-w64-headers/include/d2d1effects.h b/mingw-w64-headers/include/d2d1effects.h index d2a032f0c..0608957d1 100644 --- a/mingw-w64-headers/include/d2d1effects.h +++ b/mingw-w64-headers/include/d2d1effects.h @@ -1,43 +1,21 @@ -/*** Autogenerated by WIDL 8.12 from include/d2d1effects.idl - Do not edit ***/ +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the mingw-w64 runtime package. + * No warranty is given; refer to the file DISCLAIMER.PD within this package. + */ -#ifdef _WIN32 -#ifndef __REQUIRED_RPCNDR_H_VERSION__ -#define __REQUIRED_RPCNDR_H_VERSION__ 475 -#endif -#include -#include -#endif +#ifndef _D2D1_EFFECTS_ +#define _D2D1_EFFECTS_ -#ifndef COM_NO_WINDOWS_H -#include -#include -#endif +#include -#ifndef __d2d1effects_h__ -#define __d2d1effects_h__ - -#ifndef __WIDL_INLINE -#if defined(__cplusplus) || defined(_MSC_VER) -#define __WIDL_INLINE inline -#elif defined(__GNUC__) -#define __WIDL_INLINE __inline__ -#endif -#endif - -/* Forward declarations */ - -/* Headers for imported files */ - - -#ifdef __cplusplus -extern "C" { -#endif +#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) DEFINE_GUID(CLSID_D2D12DAffineTransform, 0x6aa97485,0x6354,0x4cfc,0x90,0x8c,0xe4,0xa7,0x4f,0x62,0xc9,0x6c); DEFINE_GUID(CLSID_D2D13DPerspectiveTransform, 0xc2844d0b,0x3d86,0x46e7,0x85,0xba,0x52,0x6c,0x92,0x40,0xf3,0xfb); DEFINE_GUID(CLSID_D2D13DTransform, 0xe8467b04,0xec61,0x4b8a,0xb5,0xde,0xd4,0xd7,0x3d,0xeb,0xea,0x5a); DEFINE_GUID(CLSID_D2D1ArithmeticComposite, 0xfc151437,0x049a,0x4784,0xa2,0x4a,0xf1,0xc4,0xda,0xf2,0x09,0x87); -DEFINE_GUID(CLSID_D2D1Atlas, 0x913e2be4,0xfdcf,0x4fe2,0xa5,0xf0,0x24,0x54,0xf1,0x4f,0xf4,0x08); +DEFINE_GUID(CLSID_D2D1Atlas, 0x913e2be4,0xfdcf,0x4fe2,0xa5,0xf0,0x24,0x54,0xf1,0x4f,0xf4,0x8); DEFINE_GUID(CLSID_D2D1BitmapSource, 0x5fb6c24d,0xc6dd,0x4231,0x94,0x04,0x50,0xf4,0xd5,0xc3,0x25,0x2d); DEFINE_GUID(CLSID_D2D1Blend, 0x81c5b77b,0x13f8,0x4cdd,0xad,0x20,0xc8,0x90,0x54,0x7a,0xc6,0x5d); DEFINE_GUID(CLSID_D2D1Border, 0x2a2d49c0,0x4acf,0x43c7,0x8c,0x6a,0x7c,0x4a,0x27,0x87,0x4d,0x27); @@ -74,62 +52,335 @@ DEFINE_GUID(CLSID_D2D1TableTransfer, 0x5bf818c3,0x5e43,0x48cb,0xb6,0x31 DEFINE_GUID(CLSID_D2D1Tile, 0xb0784138,0x3b76,0x4bc5,0xb1,0x3b,0x0f,0xa2,0xad,0x02,0x65,0x9f); DEFINE_GUID(CLSID_D2D1Turbulence, 0xcf2bb6ae,0x889a,0x4ad7,0xba,0x29,0xa2,0xfd,0x73,0x2c,0x9f,0xc9); DEFINE_GUID(CLSID_D2D1UnPremultiply, 0xfb9ac489,0xad8d,0x41ed,0x99,0x99,0xbb,0x63,0x47,0xd1,0x10,0xf7); -typedef enum D2D1_BORDER_MODE { - D2D1_BORDER_MODE_SOFT = 0x0, - D2D1_BORDER_MODE_HARD = 0x1, - D2D1_BORDER_MODE_FORCE_DWORD = 0xffffffff -} D2D1_BORDER_MODE; + +typedef enum D2D1_SHADOW_PROP { + D2D1_SHADOW_PROP_BLUR_STANDARD_DEVIATION = 0, + D2D1_SHADOW_PROP_COLOR = 1, + D2D1_SHADOW_PROP_OPTIMIZATION = 2, + D2D1_SHADOW_PROP_FORCE_DWORD = 0xffffffff +} D2D1_SHADOW_PROP; + typedef enum D2D1_2DAFFINETRANSFORM_PROP { - D2D1_2DAFFINETRANSFORM_PROP_INTERPOLATION_MODE = 0x0, - D2D1_2DAFFINETRANSFORM_PROP_BORDER_MODE = 0x1, - D2D1_2DAFFINETRANSFORM_PROP_TRANSFORM_MATRIX = 0x2, - D2D1_2DAFFINETRANSFORM_PROP_SHARPNESS = 0x3, + D2D1_2DAFFINETRANSFORM_PROP_INTERPOLATION_MODE = 0, + D2D1_2DAFFINETRANSFORM_PROP_BORDER_MODE = 1, + D2D1_2DAFFINETRANSFORM_PROP_TRANSFORM_MATRIX = 2, + D2D1_2DAFFINETRANSFORM_PROP_SHARPNESS = 3, D2D1_2DAFFINETRANSFORM_PROP_FORCE_DWORD = 0xffffffff } D2D1_2DAFFINETRANSFORM_PROP; -typedef enum D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE { - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0x0, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_LINEAR = 0x1, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_CUBIC = 0x2, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 0x3, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC = 0x4, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = 0x5, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE; -typedef enum D2D1_3DPERSPECTIVETRANSFORM_PROP { - D2D1_3DPERSPECTIVETRANSFORM_PROP_INTERPOLATION_MODE = 0x0, - D2D1_3DPERSPECTIVETRANSFORM_PROP_BORDER_MODE = 0x1, - D2D1_3DPERSPECTIVETRANSFORM_PROP_DEPTH = 0x2, - D2D1_3DPERSPECTIVETRANSFORM_PROP_PERSPECTIVE_ORIGIN = 0x3, - D2D1_3DPERSPECTIVETRANSFORM_PROP_LOCAL_OFFSET = 0x4, - D2D1_3DPERSPECTIVETRANSFORM_PROP_GLOBAL_OFFSET = 0x5, - D2D1_3DPERSPECTIVETRANSFORM_PROP_ROTATION_ORIGIN = 0x6, - D2D1_3DPERSPECTIVETRANSFORM_PROP_ROTATION = 0x7, - D2D1_3DPERSPECTIVETRANSFORM_PROP_FORCE_DWORD = 0xffffffff -} D2D1_3DPERSPECTIVETRANSFORM_PROP; -typedef enum D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE { - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0x0, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_LINEAR = 0x1, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_CUBIC = 0x2, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 0x3, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC = 0x4, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE; + typedef enum D2D1_COMPOSITE_PROP { - D2D1_COMPOSITE_PROP_MODE = 0x0, + D2D1_COMPOSITE_PROP_MODE = 0, D2D1_COMPOSITE_PROP_FORCE_DWORD = 0xffffffff } D2D1_COMPOSITE_PROP; + +typedef enum D2D1_CHANNEL_SELECTOR { + D2D1_CHANNEL_SELECTOR_R = 0, + D2D1_CHANNEL_SELECTOR_G = 1, + D2D1_CHANNEL_SELECTOR_B = 2, + D2D1_CHANNEL_SELECTOR_A = 3, + D2D1_CHANNEL_SELECTOR_FORCE_DWORD = 0xffffffff +} D2D1_CHANNEL_SELECTOR; + +typedef enum D2D1_BORDER_MODE { + D2D1_BORDER_MODE_SOFT = 0, + D2D1_BORDER_MODE_HARD = 1, + D2D1_BORDER_MODE_FORCE_DWORD = 0xffffffff +} D2D1_BORDER_MODE; + +typedef enum D2D1_COLORMATRIX_PROP { + D2D1_COLORMATRIX_PROP_COLOR_MATRIX = 0, + D2D1_COLORMATRIX_PROP_ALPHA_MODE = 1, + D2D1_COLORMATRIX_PROP_CLAMP_OUTPUT = 2, + D2D1_COLORMATRIX_PROP_FORCE_DWORD = 0xffffffff +} D2D1_COLORMATRIX_PROP; + +typedef enum D2D1_COLORMATRIX_ALPHA_MODE { + D2D1_COLORMATRIX_ALPHA_MODE_PREMULTIPLIED = 1, + D2D1_COLORMATRIX_ALPHA_MODE_STRAIGHT = 2, + D2D1_COLORMATRIX_ALPHA_MODE_FORCE_DWORD = 0xffffffff +} D2D1_COLORMATRIX_ALPHA_MODE; + +typedef enum D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE { + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0, + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_LINEAR = 1, + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_CUBIC = 2, + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 3, + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC = 4, + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = 5, + D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff +} D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE; + +typedef enum D2D1_BLEND_PROP { + D2D1_BLEND_PROP_MODE = 0, + D2D1_BLEND_PROP_FORCE_DWORD = 0xffffffff +} D2D1_BLEND_PROP; + +typedef enum D2D1_BLEND_MODE { + D2D1_BLEND_MODE_MULTIPLY = 0, + D2D1_BLEND_MODE_SCREEN = 1, + D2D1_BLEND_MODE_DARKEN = 2, + D2D1_BLEND_MODE_LIGHTEN = 3, + D2D1_BLEND_MODE_DISSOLVE = 4, + D2D1_BLEND_MODE_COLOR_BURN = 5, + D2D1_BLEND_MODE_LINEAR_BURN = 6, + D2D1_BLEND_MODE_DARKER_COLOR = 7, + D2D1_BLEND_MODE_LIGHTER_COLOR = 8, + D2D1_BLEND_MODE_COLOR_DODGE = 9, + D2D1_BLEND_MODE_LINEAR_DODGE = 10, + D2D1_BLEND_MODE_OVERLAY = 11, + D2D1_BLEND_MODE_SOFT_LIGHT = 12, + D2D1_BLEND_MODE_HARD_LIGHT = 13, + D2D1_BLEND_MODE_VIVID_LIGHT = 14, + D2D1_BLEND_MODE_LINEAR_LIGHT = 15, + D2D1_BLEND_MODE_PIN_LIGHT = 16, + D2D1_BLEND_MODE_HARD_MIX = 17, + D2D1_BLEND_MODE_DIFFERENCE = 18, + D2D1_BLEND_MODE_EXCLUSION = 19, + D2D1_BLEND_MODE_HUE = 20, + D2D1_BLEND_MODE_SATURATION = 21, + D2D1_BLEND_MODE_COLOR = 22, + D2D1_BLEND_MODE_LUMINOSITY = 23, + D2D1_BLEND_MODE_SUBTRACT = 24, + D2D1_BLEND_MODE_DIVISION = 25, + D2D1_BLEND_MODE_FORCE_DWORD = 0xffffffff +} D2D1_BLEND_MODE; + +typedef enum D2D1_MORPHOLOGY_PROP { + D2D1_MORPHOLOGY_PROP_MODE = 0, + D2D1_MORPHOLOGY_PROP_WIDTH = 1, + D2D1_MORPHOLOGY_PROP_HEIGHT = 2, + D2D1_MORPHOLOGY_PROP_FORCE_DWORD = 0xffffffff +} D2D1_MORPHOLOGY_PROP; + +typedef enum D2D1_FLOOD_PROP { + D2D1_FLOOD_PROP_COLOR = 0, + D2D1_FLOOD_PROP_FORCE_DWORD = 0xffffffff +} D2D1_FLOOD_PROP; + +typedef enum D2D1_MORPHOLOGY_MODE { + D2D1_MORPHOLOGY_MODE_ERODE = 0, + D2D1_MORPHOLOGY_MODE_DILATE = 1, + D2D1_MORPHOLOGY_MODE_FORCE_DWORD = 0xffffffff +} D2D1_MORPHOLOGY_MODE; + +typedef enum D2D1_TURBULENCE_NOISE { + D2D1_TURBULENCE_NOISE_FRACTAL_SUM = 0, + D2D1_TURBULENCE_NOISE_TURBULENCE = 1, + D2D1_TURBULENCE_NOISE_FORCE_DWORD = 0xffffffff +} D2D1_TURBULENCE_NOISE; + +typedef enum D2D1_DISPLACEMENTMAP_PROP { + D2D1_DISPLACEMENTMAP_PROP_SCALE = 0, + D2D1_DISPLACEMENTMAP_PROP_X_CHANNEL_SELECT = 1, + D2D1_DISPLACEMENTMAP_PROP_Y_CHANNEL_SELECT = 2, + D2D1_DISPLACEMENTMAP_PROP_FORCE_DWORD = 0xffffffff +} D2D1_DISPLACEMENTMAP_PROP; + +typedef enum D2D1_TURBULENCE_PROP { + D2D1_TURBULENCE_PROP_OFFSET = 0, + D2D1_TURBULENCE_PROP_SIZE = 1, + D2D1_TURBULENCE_PROP_BASE_FREQUENCY = 2, + D2D1_TURBULENCE_PROP_NUM_OCTAVES = 3, + D2D1_TURBULENCE_PROP_SEED = 4, + D2D1_TURBULENCE_PROP_NOISE = 5, + D2D1_TURBULENCE_PROP_STITCHABLE = 6, + D2D1_TURBULENCE_PROP_FORCE_DWORD = 0xffffffff +} D2D1_TURBULENCE_PROP; + +typedef enum D2D1_ARITHMETICCOMPOSITE_PROP { + D2D1_ARITHMETICCOMPOSITE_PROP_COEFFICIENTS = 0, + D2D1_ARITHMETICCOMPOSITE_PROP_CLAMP_OUTPUT = 1, + D2D1_ARITHMETICCOMPOSITE_PROP_FORCE_DWORD = 0xffffffff +} D2D1_ARITHMETICCOMPOSITE_PROP; + typedef enum D2D1_CROP_PROP { - D2D1_CROP_PROP_RECT = 0x0, - D2D1_CROP_PROP_BORDER_MODE = 0x1, + D2D1_CROP_PROP_RECT = 0, + D2D1_CROP_PROP_BORDER_MODE = 1, D2D1_CROP_PROP_FORCE_DWORD = 0xffffffff } D2D1_CROP_PROP; -/* Begin additional prototypes for all interfaces */ +typedef enum D2D1_GAUSSIANBLUR_PROP { + D2D1_GAUSSIANBLUR_PROP_STANDARD_DEVIATION = 0, + D2D1_GAUSSIANBLUR_PROP_OPTIMIZATION = 1, + D2D1_GAUSSIANBLUR_PROP_BORDER_MODE = 2, + D2D1_GAUSSIANBLUR_PROP_FORCE_DWORD = 0xffffffff +} D2D1_GAUSSIANBLUR_PROP; -/* End additional prototypes */ +typedef enum D2D1_DIRECTIONALBLUR_PROP { + D2D1_DIRECTIONALBLUR_PROP_STANDARD_DEVIATION = 0, + D2D1_DIRECTIONALBLUR_PROP_ANGLE = 1, + D2D1_DIRECTIONALBLUR_PROP_OPTIMIZATION = 2, + D2D1_DIRECTIONALBLUR_PROP_BORDER_MODE = 3, + D2D1_DIRECTIONALBLUR_PROP_FORCE_DWORD = 0xffffffff +} D2D1_DIRECTIONALBLUR_PROP; + +typedef enum D2D1_SPOTDIFFUSE_PROP { + D2D1_SPOTDIFFUSE_PROP_LIGHT_POSITION = 0, + D2D1_SPOTDIFFUSE_PROP_POINTS_AT = 1, + D2D1_SPOTDIFFUSE_PROP_FOCUS = 2, + D2D1_SPOTDIFFUSE_PROP_LIMITING_CONE_ANGLE = 3, + D2D1_SPOTDIFFUSE_PROP_DIFFUSE_CONSTANT = 4, + D2D1_SPOTDIFFUSE_PROP_SURFACE_SCALE = 5, + D2D1_SPOTDIFFUSE_PROP_COLOR = 6, + D2D1_SPOTDIFFUSE_PROP_KERNEL_UNIT_LENGTH = 7, + D2D1_SPOTDIFFUSE_PROP_SCALE_MODE = 8, + D2D1_SPOTDIFFUSE_PROP_FORCE_DWORD = 0xffffffff +} D2D1_SPOTDIFFUSE_PROP; + +typedef enum D2D1_BORDER_PROP { + D2D1_BORDER_PROP_EDGE_MODE_X = 0, + D2D1_BORDER_PROP_EDGE_MODE_Y = 1, + D2D1_BORDER_PROP_FORCE_DWORD = 0xffffffff +} D2D1_BORDER_PROP; + +typedef enum D2D1_POINTDIFFUSE_PROP { + D2D1_POINTDIFFUSE_PROP_LIGHT_POSITION = 0, + D2D1_POINTDIFFUSE_PROP_DIFFUSE_CONSTANT = 1, + D2D1_POINTDIFFUSE_PROP_SURFACE_SCALE = 2, + D2D1_POINTDIFFUSE_PROP_COLOR = 3, + D2D1_POINTDIFFUSE_PROP_KERNEL_UNIT_LENGTH = 4, + D2D1_POINTDIFFUSE_PROP_SCALE_MODE = 5, + D2D1_POINTDIFFUSE_PROP_FORCE_DWORD = 0xffffffff +} D2D1_POINTDIFFUSE_PROP; + +typedef enum D2D1_TABLETRANSFER_PROP { + D2D1_TABLETRANSFER_PROP_RED_TABLE = 0, + D2D1_TABLETRANSFER_PROP_RED_DISABLE = 1, + D2D1_TABLETRANSFER_PROP_GREEN_TABLE = 2, + D2D1_TABLETRANSFER_PROP_GREEN_DISABLE = 3, + D2D1_TABLETRANSFER_PROP_BLUE_TABLE = 4, + D2D1_TABLETRANSFER_PROP_BLUE_DISABLE = 5, + D2D1_TABLETRANSFER_PROP_ALPHA_TABLE = 6, + D2D1_TABLETRANSFER_PROP_ALPHA_DISABLE = 7, + D2D1_TABLETRANSFER_PROP_CLAMP_OUTPUT = 8, + D2D1_TABLETRANSFER_PROP_FORCE_DWORD = 0xffffffff +} D2D1_TABLETRANSFER_PROP; + +typedef enum D2D1_DISCRETETRANSFER_PROP { + D2D1_DISCRETETRANSFER_PROP_RED_TABLE = 0, + D2D1_DISCRETETRANSFER_PROP_RED_DISABLE = 1, + D2D1_DISCRETETRANSFER_PROP_GREEN_TABLE = 2, + D2D1_DISCRETETRANSFER_PROP_GREEN_DISABLE = 3, + D2D1_DISCRETETRANSFER_PROP_BLUE_TABLE = 4, + D2D1_DISCRETETRANSFER_PROP_BLUE_DISABLE = 5, + D2D1_DISCRETETRANSFER_PROP_ALPHA_TABLE = 6, + D2D1_DISCRETETRANSFER_PROP_ALPHA_DISABLE = 7, + D2D1_DISCRETETRANSFER_PROP_CLAMP_OUTPUT = 8, + D2D1_DISCRETETRANSFER_PROP_FORCE_DWORD = 0xffffffff +} D2D1_DISCRETETRANSFER_PROP; + +typedef enum D2D1_LINEARTRANSFER_PROP { + D2D1_LINEARTRANSFER_PROP_RED_Y_INTERCEPT = 0, + D2D1_LINEARTRANSFER_PROP_RED_SLOPE = 1, + D2D1_LINEARTRANSFER_PROP_RED_DISABLE = 2, + D2D1_LINEARTRANSFER_PROP_GREEN_Y_INTERCEPT = 3, + D2D1_LINEARTRANSFER_PROP_GREEN_SLOPE = 4, + D2D1_LINEARTRANSFER_PROP_GREEN_DISABLE = 5, + D2D1_LINEARTRANSFER_PROP_BLUE_Y_INTERCEPT = 6, + D2D1_LINEARTRANSFER_PROP_BLUE_SLOPE = 7, + D2D1_LINEARTRANSFER_PROP_BLUE_DISABLE = 8, + D2D1_LINEARTRANSFER_PROP_ALPHA_Y_INTERCEPT = 9, + D2D1_LINEARTRANSFER_PROP_ALPHA_SLOPE = 10, + D2D1_LINEARTRANSFER_PROP_ALPHA_DISABLE = 11, + D2D1_LINEARTRANSFER_PROP_CLAMP_OUTPUT = 12, + D2D1_LINEARTRANSFER_PROP_FORCE_DWORD = 0xffffffff +} D2D1_LINEARTRANSFER_PROP; + +typedef enum D2D1_GAMMATRANSFER_PROP { + D2D1_GAMMATRANSFER_PROP_RED_AMPLITUDE = 0, + D2D1_GAMMATRANSFER_PROP_RED_EXPONENT = 1, + D2D1_GAMMATRANSFER_PROP_RED_OFFSET = 2, + D2D1_GAMMATRANSFER_PROP_RED_DISABLE = 3, + D2D1_GAMMATRANSFER_PROP_GREEN_AMPLITUDE = 4, + D2D1_GAMMATRANSFER_PROP_GREEN_EXPONENT = 5, + D2D1_GAMMATRANSFER_PROP_GREEN_OFFSET = 6, + D2D1_GAMMATRANSFER_PROP_GREEN_DISABLE = 7, + D2D1_GAMMATRANSFER_PROP_BLUE_AMPLITUDE = 8, + D2D1_GAMMATRANSFER_PROP_BLUE_EXPONENT = 9, + D2D1_GAMMATRANSFER_PROP_BLUE_OFFSET = 10, + D2D1_GAMMATRANSFER_PROP_BLUE_DISABLE = 11, + D2D1_GAMMATRANSFER_PROP_ALPHA_AMPLITUDE = 12, + D2D1_GAMMATRANSFER_PROP_ALPHA_EXPONENT = 13, + D2D1_GAMMATRANSFER_PROP_ALPHA_OFFSET = 14, + D2D1_GAMMATRANSFER_PROP_ALPHA_DISABLE = 15, + D2D1_GAMMATRANSFER_PROP_CLAMP_OUTPUT = 16, + D2D1_GAMMATRANSFER_PROP_FORCE_DWORD = 0xffffffff +} D2D1_GAMMATRANSFER_PROP; + +typedef enum D2D1_CONVOLVEMATRIX_PROP { + D2D1_CONVOLVEMATRIX_PROP_KERNEL_UNIT_LENGTH = 0, + D2D1_CONVOLVEMATRIX_PROP_SCALE_MODE = 1, + D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_X = 2, + D2D1_CONVOLVEMATRIX_PROP_KERNEL_SIZE_Y = 3, + D2D1_CONVOLVEMATRIX_PROP_KERNEL_MATRIX = 4, + D2D1_CONVOLVEMATRIX_PROP_DIVISOR = 5, + D2D1_CONVOLVEMATRIX_PROP_BIAS = 6, + D2D1_CONVOLVEMATRIX_PROP_KERNEL_OFFSET = 7, + D2D1_CONVOLVEMATRIX_PROP_PRESERVE_ALPHA = 8, + D2D1_CONVOLVEMATRIX_PROP_BORDER_MODE = 9, + D2D1_CONVOLVEMATRIX_PROP_CLAMP_OUTPUT = 10, + D2D1_CONVOLVEMATRIX_PROP_FORCE_DWORD = 0xffffffff +} D2D1_CONVOLVEMATRIX_PROP; + +typedef enum D2D1_BORDER_EDGE_MODE { + D2D1_BORDER_EDGE_MODE_CLAMP = 0, + D2D1_BORDER_EDGE_MODE_WRAP = 1, + D2D1_BORDER_EDGE_MODE_MIRROR = 2, + D2D1_BORDER_EDGE_MODE_FORCE_DWORD = 0xffffffff +} D2D1_BORDER_EDGE_MODE; + +typedef enum D2D1_DISTANTDIFFUSE_PROP { + D2D1_DISTANTDIFFUSE_PROP_AZIMUTH = 0, + D2D1_DISTANTDIFFUSE_PROP_ELEVATION = 1, + D2D1_DISTANTDIFFUSE_PROP_DIFFUSE_CONSTANT = 2, + D2D1_DISTANTDIFFUSE_PROP_SURFACE_SCALE = 3, + D2D1_DISTANTDIFFUSE_PROP_COLOR = 4, + D2D1_DISTANTDIFFUSE_PROP_KERNEL_UNIT_LENGTH = 5, + D2D1_DISTANTDIFFUSE_PROP_SCALE_MODE = 6, + D2D1_DISTANTDIFFUSE_PROP_FORCE_DWORD = 0xffffffff +} D2D1_DISTANTDIFFUSE_PROP; + +typedef enum D2D1_POINTSPECULAR_PROP { + D2D1_POINTSPECULAR_PROP_LIGHT_POSITION = 0, + D2D1_POINTSPECULAR_PROP_SPECULAR_EXPONENT = 1, + D2D1_POINTSPECULAR_PROP_SPECULAR_CONSTANT = 2, + D2D1_POINTSPECULAR_PROP_SURFACE_SCALE = 3, + D2D1_POINTSPECULAR_PROP_COLOR = 4, + D2D1_POINTSPECULAR_PROP_KERNEL_UNIT_LENGTH = 5, + D2D1_POINTSPECULAR_PROP_SCALE_MODE = 6, + D2D1_POINTSPECULAR_PROP_FORCE_DWORD = 0xffffffff +} D2D1_POINTSPECULAR_PROP; + +typedef enum D2D1_SPOTSPECULAR_PROP { + D2D1_SPOTSPECULAR_PROP_LIGHT_POSITION = 0, + D2D1_SPOTSPECULAR_PROP_POINTS_AT = 1, + D2D1_SPOTSPECULAR_PROP_FOCUS = 2, + D2D1_SPOTSPECULAR_PROP_LIMITING_CONE_ANGLE = 3, + D2D1_SPOTSPECULAR_PROP_SPECULAR_EXPONENT = 4, + D2D1_SPOTSPECULAR_PROP_SPECULAR_CONSTANT = 5, + D2D1_SPOTSPECULAR_PROP_SURFACE_SCALE = 6, + D2D1_SPOTSPECULAR_PROP_COLOR = 7, + D2D1_SPOTSPECULAR_PROP_KERNEL_UNIT_LENGTH = 8, + D2D1_SPOTSPECULAR_PROP_SCALE_MODE = 9, + D2D1_SPOTSPECULAR_PROP_FORCE_DWORD = 0xffffffff +} D2D1_SPOTSPECULAR_PROP; + +typedef enum D2D1_DISTANTSPECULAR_PROP { + D2D1_DISTANTSPECULAR_PROP_AZIMUTH = 0, + D2D1_DISTANTSPECULAR_PROP_ELEVATION = 1, + D2D1_DISTANTSPECULAR_PROP_SPECULAR_EXPONENT = 2, + D2D1_DISTANTSPECULAR_PROP_SPECULAR_CONSTANT = 3, + D2D1_DISTANTSPECULAR_PROP_SURFACE_SCALE = 4, + D2D1_DISTANTSPECULAR_PROP_COLOR = 5, + D2D1_DISTANTSPECULAR_PROP_KERNEL_UNIT_LENGTH = 6, + D2D1_DISTANTSPECULAR_PROP_SCALE_MODE = 7, + D2D1_DISTANTSPECULAR_PROP_FORCE_DWORD = 0xffffffff +} D2D1_DISTANTSPECULAR_PROP; + +typedef enum D2D1_TILE_PROP { + D2D1_TILE_PROP_RECT = 0, + D2D1_TILE_PROP_FORCE_DWORD = 0xffffffff +} D2D1_TILE_PROP; -#ifdef __cplusplus -} #endif - -#endif /* __d2d1effects_h__ */ +#endif /* _D2D1_EFFECTS_ */ diff --git a/mingw-w64-headers/include/d2d1effects.idl b/mingw-w64-headers/include/d2d1effects.idl deleted file mode 100644 index 00bf323ec..000000000 --- a/mingw-w64-headers/include/d2d1effects.idl +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright 2021 Ziqing Hui for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -cpp_quote("DEFINE_GUID(CLSID_D2D12DAffineTransform, 0x6aa97485,0x6354,0x4cfc,0x90,0x8c,0xe4,0xa7,0x4f,0x62,0xc9,0x6c);") -cpp_quote("DEFINE_GUID(CLSID_D2D13DPerspectiveTransform, 0xc2844d0b,0x3d86,0x46e7,0x85,0xba,0x52,0x6c,0x92,0x40,0xf3,0xfb);") -cpp_quote("DEFINE_GUID(CLSID_D2D13DTransform, 0xe8467b04,0xec61,0x4b8a,0xb5,0xde,0xd4,0xd7,0x3d,0xeb,0xea,0x5a);") -cpp_quote("DEFINE_GUID(CLSID_D2D1ArithmeticComposite, 0xfc151437,0x049a,0x4784,0xa2,0x4a,0xf1,0xc4,0xda,0xf2,0x09,0x87);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Atlas, 0x913e2be4,0xfdcf,0x4fe2,0xa5,0xf0,0x24,0x54,0xf1,0x4f,0xf4,0x08);") -cpp_quote("DEFINE_GUID(CLSID_D2D1BitmapSource, 0x5fb6c24d,0xc6dd,0x4231,0x94,0x04,0x50,0xf4,0xd5,0xc3,0x25,0x2d);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Blend, 0x81c5b77b,0x13f8,0x4cdd,0xad,0x20,0xc8,0x90,0x54,0x7a,0xc6,0x5d);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Border, 0x2a2d49c0,0x4acf,0x43c7,0x8c,0x6a,0x7c,0x4a,0x27,0x87,0x4d,0x27);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Brightness, 0x8cea8d1e,0x77b0,0x4986,0xb3,0xb9,0x2f,0x0c,0x0e,0xae,0x78,0x87);") -cpp_quote("DEFINE_GUID(CLSID_D2D1ColorManagement, 0x1a28524c,0xfdd6,0x4aa4,0xae,0x8f,0x83,0x7e,0xb8,0x26,0x7b,0x37);") -cpp_quote("DEFINE_GUID(CLSID_D2D1ColorMatrix, 0x921f03d6,0x641c,0x47df,0x85,0x2d,0xb4,0xbb,0x61,0x53,0xae,0x11);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Composite, 0x48fc9f51,0xf6ac,0x48f1,0x8b,0x58,0x3b,0x28,0xac,0x46,0xf7,0x6d);") -cpp_quote("DEFINE_GUID(CLSID_D2D1ConvolveMatrix, 0x407f8c08,0x5533,0x4331,0xa3,0x41,0x23,0xcc,0x38,0x77,0x84,0x3e);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Crop, 0xe23f7110,0x0e9a,0x4324,0xaf,0x47,0x6a,0x2c,0x0c,0x46,0xf3,0x5b);") -cpp_quote("DEFINE_GUID(CLSID_D2D1DirectionalBlur, 0x174319a6,0x58e9,0x49b2,0xbb,0x63,0xca,0xf2,0xc8,0x11,0xa3,0xdb);") -cpp_quote("DEFINE_GUID(CLSID_D2D1DiscreteTransfer, 0x90866fcd,0x488e,0x454b,0xaf,0x06,0xe5,0x04,0x1b,0x66,0xc3,0x6c);") -cpp_quote("DEFINE_GUID(CLSID_D2D1DisplacementMap, 0xedc48364,0x0417,0x4111,0x94,0x50,0x43,0x84,0x5f,0xa9,0xf8,0x90);") -cpp_quote("DEFINE_GUID(CLSID_D2D1DistantDiffuse, 0x3e7efd62,0xa32d,0x46d4,0xa8,0x3c,0x52,0x78,0x88,0x9a,0xc9,0x54);") -cpp_quote("DEFINE_GUID(CLSID_D2D1DistantSpecular, 0x428c1ee5,0x77b8,0x4450,0x8a,0xb5,0x72,0x21,0x9c,0x21,0xab,0xda);") -cpp_quote("DEFINE_GUID(CLSID_D2D1DpiCompensation, 0x6c26c5c7,0x34e0,0x46fc,0x9c,0xfd,0xe5,0x82,0x37,0x6, 0xe2,0x28);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Flood, 0x61c23c20,0xae69,0x4d8e,0x94,0xcf,0x50,0x07,0x8d,0xf6,0x38,0xf2);") -cpp_quote("DEFINE_GUID(CLSID_D2D1GammaTransfer, 0x409444c4,0xc419,0x41a0,0xb0,0xc1,0x8c,0xd0,0xc0,0xa1,0x8e,0x42);") -cpp_quote("DEFINE_GUID(CLSID_D2D1GaussianBlur, 0x1feb6d69,0x2fe6,0x4ac9,0x8c,0x58,0x1d,0x7f,0x93,0xe7,0xa6,0xa5);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Scale, 0x9daf9369,0x3846,0x4d0e,0xa4,0x4e,0xc, 0x60,0x79,0x34,0xa5,0xd7);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Histogram, 0x881db7d0,0xf7ee,0x4d4d,0xa6,0xd2,0x46,0x97,0xac,0xc6,0x6e,0xe8);") -cpp_quote("DEFINE_GUID(CLSID_D2D1HueRotation, 0x0f4458ec,0x4b32,0x491b,0x9e,0x85,0xbd,0x73,0xf4,0x4d,0x3e,0xb6);") -cpp_quote("DEFINE_GUID(CLSID_D2D1LinearTransfer, 0xad47c8fd,0x63ef,0x4acc,0x9b,0x51,0x67,0x97,0x9c,0x03,0x6c,0x06);") -cpp_quote("DEFINE_GUID(CLSID_D2D1LuminanceToAlpha, 0x41251ab7,0x0beb,0x46f8,0x9d,0xa7,0x59,0xe9,0x3f,0xcc,0xe5,0xde);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Morphology, 0xeae6c40d,0x626a,0x4c2d,0xbf,0xcb,0x39,0x10,0x01,0xab,0xe2,0x02);") -cpp_quote("DEFINE_GUID(CLSID_D2D1OpacityMetadata, 0x6c53006a,0x4450,0x4199,0xaa,0x5b,0xad,0x16,0x56,0xfe,0xce,0x5e);") -cpp_quote("DEFINE_GUID(CLSID_D2D1PointDiffuse, 0xb9e303c3,0xc08c,0x4f91,0x8b,0x7b,0x38,0x65,0x6b,0xc4,0x8c,0x20);") -cpp_quote("DEFINE_GUID(CLSID_D2D1PointSpecular, 0x09c3ca26,0x3ae2,0x4f09,0x9e,0xbc,0xed,0x38,0x65,0xd5,0x3f,0x22);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Premultiply, 0x06eab419,0xdeed,0x4018,0x80,0xd2,0x3e,0x1d,0x47,0x1a,0xde,0xb2);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Saturation, 0x5cb2d9cf,0x327d,0x459f,0xa0,0xce,0x40,0xc0,0xb2,0x08,0x6b,0xf7);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Shadow, 0xc67ea361,0x1863,0x4e69,0x89,0xdb,0x69,0x5d,0x3e,0x9a,0x5b,0x6b);") -cpp_quote("DEFINE_GUID(CLSID_D2D1SpotDiffuse, 0x818a1105,0x7932,0x44f4,0xaa,0x86,0x08,0xae,0x7b,0x2f,0x2c,0x93);") -cpp_quote("DEFINE_GUID(CLSID_D2D1SpotSpecular, 0xedae421e,0x7654,0x4a37,0x9d,0xb8,0x71,0xac,0xc1,0xbe,0xb3,0xc1);") -cpp_quote("DEFINE_GUID(CLSID_D2D1TableTransfer, 0x5bf818c3,0x5e43,0x48cb,0xb6,0x31,0x86,0x83,0x96,0xd6,0xa1,0xd4);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Tile, 0xb0784138,0x3b76,0x4bc5,0xb1,0x3b,0x0f,0xa2,0xad,0x02,0x65,0x9f);") -cpp_quote("DEFINE_GUID(CLSID_D2D1Turbulence, 0xcf2bb6ae,0x889a,0x4ad7,0xba,0x29,0xa2,0xfd,0x73,0x2c,0x9f,0xc9);") -cpp_quote("DEFINE_GUID(CLSID_D2D1UnPremultiply, 0xfb9ac489,0xad8d,0x41ed,0x99,0x99,0xbb,0x63,0x47,0xd1,0x10,0xf7);") - -typedef enum D2D1_BORDER_MODE -{ - D2D1_BORDER_MODE_SOFT = 0x0, - D2D1_BORDER_MODE_HARD = 0x1, - D2D1_BORDER_MODE_FORCE_DWORD = 0xffffffff -} D2D1_BORDER_MODE; - -typedef enum D2D1_2DAFFINETRANSFORM_PROP -{ - D2D1_2DAFFINETRANSFORM_PROP_INTERPOLATION_MODE = 0x0, - D2D1_2DAFFINETRANSFORM_PROP_BORDER_MODE = 0x1, - D2D1_2DAFFINETRANSFORM_PROP_TRANSFORM_MATRIX = 0x2, - D2D1_2DAFFINETRANSFORM_PROP_SHARPNESS = 0x3, - D2D1_2DAFFINETRANSFORM_PROP_FORCE_DWORD = 0xffffffff -} D2D1_2DAFFINETRANSFORM_PROP; - -typedef enum D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE -{ - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0x0, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_LINEAR = 0x1, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_CUBIC = 0x2, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 0x3, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC = 0x4, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = 0x5, - D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_2DAFFINETRANSFORM_INTERPOLATION_MODE; - -typedef enum D2D1_3DPERSPECTIVETRANSFORM_PROP -{ - D2D1_3DPERSPECTIVETRANSFORM_PROP_INTERPOLATION_MODE = 0x0, - D2D1_3DPERSPECTIVETRANSFORM_PROP_BORDER_MODE = 0x1, - D2D1_3DPERSPECTIVETRANSFORM_PROP_DEPTH = 0x2, - D2D1_3DPERSPECTIVETRANSFORM_PROP_PERSPECTIVE_ORIGIN = 0x3, - D2D1_3DPERSPECTIVETRANSFORM_PROP_LOCAL_OFFSET = 0x4, - D2D1_3DPERSPECTIVETRANSFORM_PROP_GLOBAL_OFFSET = 0x5, - D2D1_3DPERSPECTIVETRANSFORM_PROP_ROTATION_ORIGIN = 0x6, - D2D1_3DPERSPECTIVETRANSFORM_PROP_ROTATION = 0x7, - D2D1_3DPERSPECTIVETRANSFORM_PROP_FORCE_DWORD = 0xffffffff -} D2D1_3DPERSPECTIVETRANSFORM_PROP; - -typedef enum D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE -{ - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0x0, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_LINEAR = 0x1, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_CUBIC = 0x2, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 0x3, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_ANISOTROPIC = 0x4, - D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_3DPERSPECTIVETRANSFORM_INTERPOLATION_MODE; - -typedef enum D2D1_COMPOSITE_PROP -{ - D2D1_COMPOSITE_PROP_MODE = 0x0, - D2D1_COMPOSITE_PROP_FORCE_DWORD = 0xffffffff -} D2D1_COMPOSITE_PROP; - -typedef enum D2D1_CROP_PROP -{ - D2D1_CROP_PROP_RECT = 0x0, - D2D1_CROP_PROP_BORDER_MODE = 0x1, - D2D1_CROP_PROP_FORCE_DWORD = 0xffffffff -} D2D1_CROP_PROP; diff --git a/mingw-w64-headers/include/d2d1effects_1.idl b/mingw-w64-headers/include/d2d1effects_1.idl deleted file mode 100644 index 03616b770..000000000 --- a/mingw-w64-headers/include/d2d1effects_1.idl +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright 2022 Ziqing Hui for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -import "d2d1effects.idl"; - -cpp_quote("DEFINE_GUID(CLSID_D2D1YCbCr, 0x99503cc1,0x66c7,0x45c9,0xa8,0x75,0x8a,0xd8,0xa7,0x91,0x44,0x01);") - -typedef enum D2D1_YCBCR_PROP -{ - D2D1_YCBCR_PROP_CHROMA_SUBSAMPLING = 0x0, - D2D1_YCBCR_PROP_TRANSFORM_MATRIX = 0x1, - D2D1_YCBCR_PROP_INTERPOLATION_MODE = 0x2, - D2D1_YCBCR_PROP_FORCE_DWORD = 0xffffffff -} D2D1_YCBCR_PROP; - -typedef enum D2D1_YCBCR_CHROMA_SUBSAMPLING -{ - D2D1_YCBCR_CHROMA_SUBSAMPLING_AUTO = 0x0, - D2D1_YCBCR_CHROMA_SUBSAMPLING_420 = 0x1, - D2D1_YCBCR_CHROMA_SUBSAMPLING_422 = 0x2, - D2D1_YCBCR_CHROMA_SUBSAMPLING_444 = 0x3, - D2D1_YCBCR_CHROMA_SUBSAMPLING_440 = 0x4, - D2D1_YCBCR_CHROMA_SUBSAMPLING_FORCE_DWORD = 0xffffffff -} D2D1_YCBCR_CHROMA_SUBSAMPLING; - -typedef enum D2D1_YCBCR_INTERPOLATION_MODE -{ - D2D1_YCBCR_INTERPOLATION_MODE_NEAREST_NEIGHBOR = 0x0, - D2D1_YCBCR_INTERPOLATION_MODE_LINEAR = 0x1, - D2D1_YCBCR_INTERPOLATION_MODE_CUBIC = 0x2, - D2D1_YCBCR_INTERPOLATION_MODE_MULTI_SAMPLE_LINEAR = 0x3, - D2D1_YCBCR_INTERPOLATION_MODE_ANISOTROPIC = 0x4, - D2D1_YCBCR_INTERPOLATION_MODE_HIGH_QUALITY_CUBIC = 0x5, - D2D1_YCBCR_INTERPOLATION_MODE_FORCE_DWORD = 0xffffffff -} D2D1_YCBCR_INTERPOLATION_MODE; diff --git a/mingw-w64-headers/include/d2d1effects_2.idl b/mingw-w64-headers/include/d2d1effects_2.idl deleted file mode 100644 index 9cd93a8d3..000000000 --- a/mingw-w64-headers/include/d2d1effects_2.idl +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright 2022 Ziqing Hui for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -import "d2d1effects_1.idl"; - -cpp_quote("DEFINE_GUID(CLSID_D2D1Grayscale, 0x36dde0eb,0x3725,0x42e0,0x83,0x6d,0x52,0xfb,0x20,0xae,0xe6,0x44);") -cpp_quote("DEFINE_GUID(CLSID_D2D1HighlightsShadows, 0xcadc8384,0x323f,0x4c7e,0xa3,0x61,0x2e,0x2b,0x24,0xdf,0x6e,0xe4);") - -typedef enum D2D1_HIGHLIGHTSANDSHADOWS_PROP -{ - D2D1_HIGHLIGHTSANDSHADOWS_PROP_HIGHLIGHTS = 0x0, - D2D1_HIGHLIGHTSANDSHADOWS_PROP_SHADOWS = 0x1, - D2D1_HIGHLIGHTSANDSHADOWS_PROP_CLARITY = 0x2, - D2D1_HIGHLIGHTSANDSHADOWS_PROP_INPUT_GAMMA = 0x3, - D2D1_HIGHLIGHTSANDSHADOWS_PROP_MASK_BLUR_RADIUS = 0x4, - D2D1_HIGHLIGHTSANDSHADOWS_PROP_FORCE_DWORD = 0xffffffff -} D2D1_HIGHLIGHTSANDSHADOWS_PROP; - -typedef enum D2D1_HIGHLIGHTSANDSHADOWS_INPUT_GAMMA -{ - D2D1_HIGHLIGHTSANDSHADOWS_INPUT_GAMMA_LINEAR = 0x0, - D2D1_HIGHLIGHTSANDSHADOWS_INPUT_GAMMA_SRGB = 0x1, - D2D1_HIGHLIGHTSANDSHADOWS_INPUT_GAMMA_FORCE_DWORD = 0xffffffff -} D2D1_HIGHLIGHTSANDSHADOWS_INPUT_GAMMA; diff --git a/mingw-w64-headers/include/windows.applicationmodel.idl b/mingw-w64-headers/include/windows.applicationmodel.idl deleted file mode 100644 index cea2c9423..000000000 --- a/mingw-w64-headers/include/windows.applicationmodel.idl +++ /dev/null @@ -1,116 +0,0 @@ -/* - * Copyright 2023 Hans Leidekker for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA - */ - -#ifdef __WIDL__ -#pragma winrt ns_prefix -#endif - -import "windows.foundation.idl"; -import "windows.storage.idl"; -import "windows.system.idl"; - -namespace Windows.ApplicationModel { - typedef struct PackageVersion PackageVersion; - - interface IPackage; - interface IPackageId; - interface IPackageIdWithMetadata; - interface IPackageStatics; - - runtimeclass Package; - runtimeclass PackageId; - - declare { - interface Windows.Foundation.Collections.IIterable; - interface Windows.Foundation.Collections.IIterator; - interface Windows.Foundation.Collections.IVectorView; - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0) - ] - struct PackageVersion - { - UINT16 Major; - UINT16 Minor; - UINT16 Build; - UINT16 Revision; - }; - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.ApplicationModel.Package), - uuid(163c792f-bd75-413c-bf23-b1fe7b95d825) - ] - interface IPackage : IInspectable - { - [propget] HRESULT Id([out, retval] Windows.ApplicationModel.PackageId **value); - [propget] HRESULT InstalledLocation([out, retval] Windows.Storage.StorageFolder **value); - [propget] HRESULT IsFramework([out, retval] boolean *value); - [propget] HRESULT Dependencies([out, retval] Windows.Foundation.Collections.IVectorView **value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.ApplicationModel.PackageId), - uuid(1adb665e-37c7-4790-9980-dd7ae74e8bb2) - ] - interface IPackageId : IInspectable - { - [propget] HRESULT Name([out, retval] HSTRING *value); - [propget] HRESULT Version([out, retval] Windows.ApplicationModel.PackageVersion *value); - [propget] HRESULT Architecture([out, retval] Windows.System.ProcessorArchitecture *value); - [propget] HRESULT ResourceId([out, retval] HSTRING *value); - [propget] HRESULT Publisher([out, retval] HSTRING *value); - [propget] HRESULT PublisherId([out, retval] HSTRING *value); - [propget] HRESULT FullName([out, retval] HSTRING *value); - [propget] HRESULT FamilyName([out, retval] HSTRING *value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.ApplicationModel.PackageId), - uuid(40577a7c-0c9e-443d-9074-855f5ce0a08d) - ] - interface IPackageIdWithMetadata : IInspectable - { - [propget] HRESULT ProductId([out, retval] HSTRING *value); - [propget] HRESULT Author([out, retval] HSTRING *value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - marshaling_behavior(agile), - static(Windows.ApplicationModel.IPackageStatics, Windows.Foundation.UniversalApiContract, 1.0), - threading(both) - ] - runtimeclass Package - { - [default] interface Windows.ApplicationModel.IPackage; - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - marshaling_behavior(agile) - ] - runtimeclass PackageId - { - [default] interface Windows.ApplicationModel.IPackageId; - [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.IPackageIdWithMetadata; - } -} diff --git a/mingw-w64-headers/include/windows.foundation.h b/mingw-w64-headers/include/windows.foundation.h index 94cb3e780..91cbdf1e8 100644 --- a/mingw-w64-headers/include/windows.foundation.h +++ b/mingw-w64-headers/include/windows.foundation.h @@ -193,111 +193,6 @@ namespace ABI { #endif /* __cplusplus */ #endif -#ifndef ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics __x_ABI_CWindows_CFoundation_CIUriEscapeStatics; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics ABI::Windows::Foundation::IUriEscapeStatics -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriEscapeStatics; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass ABI::Windows::Foundation::IUriRuntimeClass -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriRuntimeClass; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory ABI::Windows::Foundation::IUriRuntimeClassFactory -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriRuntimeClassFactory; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri ABI::Windows::Foundation::IUriRuntimeClassWithAbsoluteCanonicalUri -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriRuntimeClassWithAbsoluteCanonicalUri; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::IWwwFormUrlDecoderEntry -namespace ABI { - namespace Windows { - namespace Foundation { - interface IWwwFormUrlDecoderEntry; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass -namespace ABI { - namespace Windows { - namespace Foundation { - interface IWwwFormUrlDecoderRuntimeClass; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClassFactory -namespace ABI { - namespace Windows { - namespace Foundation { - interface IWwwFormUrlDecoderRuntimeClassFactory; - } - } -} -#endif /* __cplusplus */ -#endif - #ifndef ____x_ABI_CWindows_CFoundation_CDeferral_FWD_DEFINED__ #define ____x_ABI_CWindows_CFoundation_CDeferral_FWD_DEFINED__ #ifdef __cplusplus @@ -328,51 +223,6 @@ typedef struct __x_ABI_CWindows_CFoundation_CMemoryBuffer __x_ABI_CWindows_CFoun #endif /* defined __cplusplus */ #endif /* defined ____x_ABI_CWindows_CFoundation_CMemoryBuffer_FWD_DEFINED__ */ -#ifndef ____x_ABI_CWindows_CFoundation_CUri_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CUri_FWD_DEFINED__ -#ifdef __cplusplus -namespace ABI { - namespace Windows { - namespace Foundation { - class Uri; - } - } -} -#else -typedef struct __x_ABI_CWindows_CFoundation_CUri __x_ABI_CWindows_CFoundation_CUri; -#endif /* defined __cplusplus */ -#endif /* defined ____x_ABI_CWindows_CFoundation_CUri_FWD_DEFINED__ */ - -#ifndef ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder_FWD_DEFINED__ -#ifdef __cplusplus -namespace ABI { - namespace Windows { - namespace Foundation { - class WwwFormUrlDecoder; - } - } -} -#else -typedef struct __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder; -#endif /* defined __cplusplus */ -#endif /* defined ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoder_FWD_DEFINED__ */ - -#ifndef ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry_FWD_DEFINED__ -#ifdef __cplusplus -namespace ABI { - namespace Windows { - namespace Foundation { - class WwwFormUrlDecoderEntry; - } - } -} -#else -typedef struct __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry; -#endif /* defined __cplusplus */ -#endif /* defined ____x_ABI_CWindows_CFoundation_CWwwFormUrlDecoderEntry_FWD_DEFINED__ */ - #ifndef ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__ #define ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__ typedef interface __FIKeyValuePair_2_HSTRING_IInspectable __FIKeyValuePair_2_HSTRING_IInspectable; @@ -453,22 +303,6 @@ typedef interface __FIIterable_1_IInspectable __FIIterable_1_IInspectable; #endif /* __cplusplus */ #endif -#ifndef ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterable -#endif /* __cplusplus */ -#endif - -#ifndef ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__ -#define ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__ -typedef interface __FIIterable_1_Windows__CFoundation__CUri __FIIterable_1_Windows__CFoundation__CUri; -#ifdef __cplusplus -#define __FIIterable_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterable -#endif /* __cplusplus */ -#endif - #ifndef ____FIIterator_1_HSTRING_FWD_DEFINED__ #define ____FIIterator_1_HSTRING_FWD_DEFINED__ typedef interface __FIIterator_1_HSTRING __FIIterator_1_HSTRING; @@ -485,22 +319,6 @@ typedef interface __FIIterator_1_IInspectable __FIIterator_1_IInspectable; #endif /* __cplusplus */ #endif -#ifndef ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterator -#endif /* __cplusplus */ -#endif - -#ifndef ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__ -#define ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__ -typedef interface __FIIterator_1_Windows__CFoundation__CUri __FIIterator_1_Windows__CFoundation__CUri; -#ifdef __cplusplus -#define __FIIterator_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterator -#endif /* __cplusplus */ -#endif - #ifndef ____FIVectorView_1_HSTRING_FWD_DEFINED__ #define ____FIVectorView_1_HSTRING_FWD_DEFINED__ typedef interface __FIVectorView_1_HSTRING __FIVectorView_1_HSTRING; @@ -517,14 +335,6 @@ typedef interface __FIVectorView_1_IInspectable __FIVectorView_1_IInspectable; #endif /* __cplusplus */ #endif -#ifndef ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IVectorView -#endif /* __cplusplus */ -#endif - #ifndef ____FIVector_1_HSTRING_FWD_DEFINED__ #define ____FIVector_1_HSTRING_FWD_DEFINED__ typedef interface __FIVector_1_HSTRING __FIVector_1_HSTRING; @@ -1011,111 +821,6 @@ namespace ABI { #endif /* __cplusplus */ #endif -#ifndef ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics __x_ABI_CWindows_CFoundation_CIUriEscapeStatics; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics ABI::Windows::Foundation::IUriEscapeStatics -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriEscapeStatics; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass ABI::Windows::Foundation::IUriRuntimeClass -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriRuntimeClass; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory ABI::Windows::Foundation::IUriRuntimeClassFactory -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriRuntimeClassFactory; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri ABI::Windows::Foundation::IUriRuntimeClassWithAbsoluteCanonicalUri -namespace ABI { - namespace Windows { - namespace Foundation { - interface IUriRuntimeClassWithAbsoluteCanonicalUri; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::IWwwFormUrlDecoderEntry -namespace ABI { - namespace Windows { - namespace Foundation { - interface IWwwFormUrlDecoderEntry; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass -namespace ABI { - namespace Windows { - namespace Foundation { - interface IWwwFormUrlDecoderRuntimeClass; - } - } -} -#endif /* __cplusplus */ -#endif - -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory; -#ifdef __cplusplus -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClassFactory -namespace ABI { - namespace Windows { - namespace Foundation { - interface IWwwFormUrlDecoderRuntimeClassFactory; - } - } -} -#endif /* __cplusplus */ -#endif - #ifndef ____FIIterable_1_HSTRING_FWD_DEFINED__ #define ____FIIterable_1_HSTRING_FWD_DEFINED__ typedef interface __FIIterable_1_HSTRING __FIIterable_1_HSTRING; @@ -1132,22 +837,6 @@ typedef interface __FIIterable_1_IInspectable __FIIterable_1_IInspectable; #endif /* __cplusplus */ #endif -#ifndef ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterable -#endif /* __cplusplus */ -#endif - -#ifndef ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__ -#define ____FIIterable_1_Windows__CFoundation__CUri_FWD_DEFINED__ -typedef interface __FIIterable_1_Windows__CFoundation__CUri __FIIterable_1_Windows__CFoundation__CUri; -#ifdef __cplusplus -#define __FIIterable_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterable -#endif /* __cplusplus */ -#endif - #ifndef ____FIIterator_1_HSTRING_FWD_DEFINED__ #define ____FIIterator_1_HSTRING_FWD_DEFINED__ typedef interface __FIIterator_1_HSTRING __FIIterator_1_HSTRING; @@ -1164,22 +853,6 @@ typedef interface __FIIterator_1_IInspectable __FIIterator_1_IInspectable; #endif /* __cplusplus */ #endif -#ifndef ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IIterator -#endif /* __cplusplus */ -#endif - -#ifndef ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__ -#define ____FIIterator_1_Windows__CFoundation__CUri_FWD_DEFINED__ -typedef interface __FIIterator_1_Windows__CFoundation__CUri __FIIterator_1_Windows__CFoundation__CUri; -#ifdef __cplusplus -#define __FIIterator_1_Windows__CFoundation__CUri ABI::Windows::Foundation::Collections::IIterator -#endif /* __cplusplus */ -#endif - #ifndef ____FIVectorView_1_HSTRING_FWD_DEFINED__ #define ____FIVectorView_1_HSTRING_FWD_DEFINED__ typedef interface __FIVectorView_1_HSTRING __FIVectorView_1_HSTRING; @@ -1196,14 +869,6 @@ typedef interface __FIVectorView_1_IInspectable __FIVectorView_1_IInspectable; #endif /* __cplusplus */ #endif -#ifndef ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -#define ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_FWD_DEFINED__ -typedef interface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry; -#ifdef __cplusplus -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry ABI::Windows::Foundation::Collections::IVectorView -#endif /* __cplusplus */ -#endif - #ifndef ____FIVector_1_HSTRING_FWD_DEFINED__ #define ____FIVector_1_HSTRING_FWD_DEFINED__ typedef interface __FIVector_1_HSTRING __FIVector_1_HSTRING; @@ -2746,1146 +2411,6 @@ static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIMemoryBufferReferenc #endif /* ____x_ABI_CWindows_CFoundation_CIMemoryBufferReference_INTERFACE_DEFINED__ */ #endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ -/***************************************************************************** - * IUriEscapeStatics interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriEscapeStatics, 0xc1d432ba, 0xc824, 0x4452, 0xa7,0xfd, 0x51,0x2b,0xc3,0xbb,0xe9,0xa1); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("c1d432ba-c824-4452-a7fd-512bc3bbe9a1") - IUriEscapeStatics : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE UnescapeComponent( - HSTRING to_unescape, - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE EscapeComponent( - HSTRING to_escape, - HSTRING *value) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics, 0xc1d432ba, 0xc824, 0x4452, 0xa7,0xfd, 0x51,0x2b,0xc3,0xbb,0xe9,0xa1) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This, - TrustLevel *trustLevel); - - /*** IUriEscapeStatics methods ***/ - HRESULT (STDMETHODCALLTYPE *UnescapeComponent)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This, - HSTRING to_unescape, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *EscapeComponent)( - __x_ABI_CWindows_CFoundation_CIUriEscapeStatics *This, - HSTRING to_escape, - HSTRING *value); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl; - -interface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IUriEscapeStatics methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_UnescapeComponent(This,to_unescape,value) (This)->lpVtbl->UnescapeComponent(This,to_unescape,value) -#define __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_EscapeComponent(This,to_escape,value) (This)->lpVtbl->EscapeComponent(This,to_escape,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_AddRef(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_Release(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetIids(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IUriEscapeStatics methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_UnescapeComponent(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,HSTRING to_unescape,HSTRING *value) { - return This->lpVtbl->UnescapeComponent(This,to_unescape,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_EscapeComponent(__x_ABI_CWindows_CFoundation_CIUriEscapeStatics* This,HSTRING to_escape,HSTRING *value) { - return This->lpVtbl->EscapeComponent(This,to_escape,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IUriEscapeStatics IID___x_ABI_CWindows_CFoundation_CIUriEscapeStatics -#define IUriEscapeStaticsVtbl __x_ABI_CWindows_CFoundation_CIUriEscapeStaticsVtbl -#define IUriEscapeStatics __x_ABI_CWindows_CFoundation_CIUriEscapeStatics -#define IUriEscapeStatics_QueryInterface __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_QueryInterface -#define IUriEscapeStatics_AddRef __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_AddRef -#define IUriEscapeStatics_Release __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_Release -#define IUriEscapeStatics_GetIids __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetIids -#define IUriEscapeStatics_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetRuntimeClassName -#define IUriEscapeStatics_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_GetTrustLevel -#define IUriEscapeStatics_UnescapeComponent __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_UnescapeComponent -#define IUriEscapeStatics_EscapeComponent __x_ABI_CWindows_CFoundation_CIUriEscapeStatics_EscapeComponent -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIUriEscapeStatics_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/***************************************************************************** - * IUriRuntimeClass interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClass, 0x9e365e57, 0x48b2, 0x4160, 0x95,0x6f, 0xc7,0x38,0x51,0x20,0xbb,0xfc); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("9e365e57-48b2-4160-956f-c7385120bbfc") - IUriRuntimeClass : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE get_AbsoluteUri( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_DisplayUri( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Domain( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Extension( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Fragment( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Host( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Password( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Path( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Query( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_QueryParsed( - ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **decoder) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_RawUri( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_SchemeName( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_UserName( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Port( - INT32 *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Suspicious( - boolean *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE Equals( - ABI::Windows::Foundation::IUriRuntimeClass *uri, - boolean *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE CombineUri( - HSTRING relative_uri, - ABI::Windows::Foundation::IUriRuntimeClass **instance) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass, 0x9e365e57, 0x48b2, 0x4160, 0x95,0x6f, 0xc7,0x38,0x51,0x20,0xbb,0xfc) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - TrustLevel *trustLevel); - - /*** IUriRuntimeClass methods ***/ - HRESULT (STDMETHODCALLTYPE *get_AbsoluteUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_DisplayUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Domain)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Extension)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Fragment)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Host)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Password)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Path)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Query)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_QueryParsed)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **decoder); - - HRESULT (STDMETHODCALLTYPE *get_RawUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_SchemeName)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_UserName)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Port)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - INT32 *value); - - HRESULT (STDMETHODCALLTYPE *get_Suspicious)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - boolean *value); - - HRESULT (STDMETHODCALLTYPE *Equals)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *uri, - boolean *value); - - HRESULT (STDMETHODCALLTYPE *CombineUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *This, - HSTRING relative_uri, - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl; - -interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IUriRuntimeClass methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_AbsoluteUri(This,value) (This)->lpVtbl->get_AbsoluteUri(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_DisplayUri(This,value) (This)->lpVtbl->get_DisplayUri(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Domain(This,value) (This)->lpVtbl->get_Domain(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Extension(This,value) (This)->lpVtbl->get_Extension(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Fragment(This,value) (This)->lpVtbl->get_Fragment(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Host(This,value) (This)->lpVtbl->get_Host(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Password(This,value) (This)->lpVtbl->get_Password(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Path(This,value) (This)->lpVtbl->get_Path(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Query(This,value) (This)->lpVtbl->get_Query(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_QueryParsed(This,decoder) (This)->lpVtbl->get_QueryParsed(This,decoder) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_RawUri(This,value) (This)->lpVtbl->get_RawUri(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_SchemeName(This,value) (This)->lpVtbl->get_SchemeName(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_UserName(This,value) (This)->lpVtbl->get_UserName(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Port(This,value) (This)->lpVtbl->get_Port(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Suspicious(This,value) (This)->lpVtbl->get_Suspicious(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Equals(This,uri,value) (This)->lpVtbl->Equals(This,uri,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_CombineUri(This,relative_uri,instance) (This)->lpVtbl->CombineUri(This,relative_uri,instance) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_AddRef(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Release(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetIids(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IUriRuntimeClass methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_AbsoluteUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_AbsoluteUri(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_DisplayUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_DisplayUri(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Domain(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Domain(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Extension(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Extension(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Fragment(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Fragment(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Host(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Host(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Password(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Password(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Path(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Path(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Query(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_Query(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_QueryParsed(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **decoder) { - return This->lpVtbl->get_QueryParsed(This,decoder); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_RawUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_RawUri(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_SchemeName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_SchemeName(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_UserName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING *value) { - return This->lpVtbl->get_UserName(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Port(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,INT32 *value) { - return This->lpVtbl->get_Port(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Suspicious(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,boolean *value) { - return This->lpVtbl->get_Suspicious(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Equals(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass *uri,boolean *value) { - return This->lpVtbl->Equals(This,uri,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_CombineUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClass* This,HSTRING relative_uri,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance) { - return This->lpVtbl->CombineUri(This,relative_uri,instance); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IUriRuntimeClass IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClass -#define IUriRuntimeClassVtbl __x_ABI_CWindows_CFoundation_CIUriRuntimeClassVtbl -#define IUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass -#define IUriRuntimeClass_QueryInterface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_QueryInterface -#define IUriRuntimeClass_AddRef __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_AddRef -#define IUriRuntimeClass_Release __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Release -#define IUriRuntimeClass_GetIids __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetIids -#define IUriRuntimeClass_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetRuntimeClassName -#define IUriRuntimeClass_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_GetTrustLevel -#define IUriRuntimeClass_get_AbsoluteUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_AbsoluteUri -#define IUriRuntimeClass_get_DisplayUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_DisplayUri -#define IUriRuntimeClass_get_Domain __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Domain -#define IUriRuntimeClass_get_Extension __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Extension -#define IUriRuntimeClass_get_Fragment __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Fragment -#define IUriRuntimeClass_get_Host __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Host -#define IUriRuntimeClass_get_Password __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Password -#define IUriRuntimeClass_get_Path __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Path -#define IUriRuntimeClass_get_Query __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Query -#define IUriRuntimeClass_get_QueryParsed __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_QueryParsed -#define IUriRuntimeClass_get_RawUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_RawUri -#define IUriRuntimeClass_get_SchemeName __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_SchemeName -#define IUriRuntimeClass_get_UserName __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_UserName -#define IUriRuntimeClass_get_Port __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Port -#define IUriRuntimeClass_get_Suspicious __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_get_Suspicious -#define IUriRuntimeClass_Equals __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_Equals -#define IUriRuntimeClass_CombineUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClass_CombineUri -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/***************************************************************************** - * IUriRuntimeClassFactory interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory, 0x44a9796f, 0x723e, 0x4fdf, 0xa2,0x18, 0x03,0x3e,0x75,0xb0,0xc0,0x84); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("44a9796f-723e-4fdf-a218-033e75b0c084") - IUriRuntimeClassFactory : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE CreateUri( - HSTRING uri, - ABI::Windows::Foundation::IUriRuntimeClass **instance) = 0; - - virtual HRESULT STDMETHODCALLTYPE CreateWithRelativeUri( - HSTRING base_uri, - HSTRING relative_uri, - ABI::Windows::Foundation::IUriRuntimeClass **instance) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory, 0x44a9796f, 0x723e, 0x4fdf, 0xa2,0x18, 0x03,0x3e,0x75,0xb0,0xc0,0x84) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This, - TrustLevel *trustLevel); - - /*** IUriRuntimeClassFactory methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This, - HSTRING uri, - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance); - - HRESULT (STDMETHODCALLTYPE *CreateWithRelativeUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory *This, - HSTRING base_uri, - HSTRING relative_uri, - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl; - -interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IUriRuntimeClassFactory methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateUri(This,uri,instance) (This)->lpVtbl->CreateUri(This,uri,instance) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateWithRelativeUri(This,base_uri,relative_uri,instance) (This)->lpVtbl->CreateWithRelativeUri(This,base_uri,relative_uri,instance) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_AddRef(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_Release(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetIids(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IUriRuntimeClassFactory methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,HSTRING uri,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance) { - return This->lpVtbl->CreateUri(This,uri,instance); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateWithRelativeUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory* This,HSTRING base_uri,HSTRING relative_uri,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **instance) { - return This->lpVtbl->CreateWithRelativeUri(This,base_uri,relative_uri,instance); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IUriRuntimeClassFactory IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory -#define IUriRuntimeClassFactoryVtbl __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactoryVtbl -#define IUriRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory -#define IUriRuntimeClassFactory_QueryInterface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_QueryInterface -#define IUriRuntimeClassFactory_AddRef __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_AddRef -#define IUriRuntimeClassFactory_Release __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_Release -#define IUriRuntimeClassFactory_GetIids __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetIids -#define IUriRuntimeClassFactory_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetRuntimeClassName -#define IUriRuntimeClassFactory_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_GetTrustLevel -#define IUriRuntimeClassFactory_CreateUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateUri -#define IUriRuntimeClassFactory_CreateWithRelativeUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_CreateWithRelativeUri -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassFactory_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/***************************************************************************** - * IUriRuntimeClassWithAbsoluteCanonicalUri interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri, 0x758d9661, 0x221c, 0x480f, 0xa3,0x39, 0x50,0x65,0x66,0x73,0xf4,0x6f); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("758d9661-221c-480f-a339-50656673f46f") - IUriRuntimeClassWithAbsoluteCanonicalUri : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE get_AbsoluteCanonicalUri( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_DisplayIri( - HSTRING *value) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri, 0x758d9661, 0x221c, 0x480f, 0xa3,0x39, 0x50,0x65,0x66,0x73,0xf4,0x6f) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This, - TrustLevel *trustLevel); - - /*** IUriRuntimeClassWithAbsoluteCanonicalUri methods ***/ - HRESULT (STDMETHODCALLTYPE *get_AbsoluteCanonicalUri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_DisplayIri)( - __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri *This, - HSTRING *value); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl; - -interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IUriRuntimeClassWithAbsoluteCanonicalUri methods ***/ -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri(This,value) (This)->lpVtbl->get_AbsoluteCanonicalUri(This,value) -#define __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri(This,value) (This)->lpVtbl->get_DisplayIri(This,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_AddRef(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_Release(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetIids(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IUriRuntimeClassWithAbsoluteCanonicalUri methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,HSTRING *value) { - return This->lpVtbl->get_AbsoluteCanonicalUri(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri(__x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri* This,HSTRING *value) { - return This->lpVtbl->get_DisplayIri(This,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IUriRuntimeClassWithAbsoluteCanonicalUri IID___x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri -#define IUriRuntimeClassWithAbsoluteCanonicalUriVtbl __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUriVtbl -#define IUriRuntimeClassWithAbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri -#define IUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_QueryInterface -#define IUriRuntimeClassWithAbsoluteCanonicalUri_AddRef __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_AddRef -#define IUriRuntimeClassWithAbsoluteCanonicalUri_Release __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_Release -#define IUriRuntimeClassWithAbsoluteCanonicalUri_GetIids __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetIids -#define IUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetRuntimeClassName -#define IUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_GetTrustLevel -#define IUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_AbsoluteCanonicalUri -#define IUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri __x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_get_DisplayIri -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIUriRuntimeClassWithAbsoluteCanonicalUri_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/***************************************************************************** - * IWwwFormUrlDecoderEntry interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry, 0x125e7431, 0xf678, 0x4e8e, 0xb6,0x70, 0x20,0xa9,0xb0,0x6c,0x51,0x2d); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("125e7431-f678-4e8e-b670-20a9b06c512d") - IWwwFormUrlDecoderEntry : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE get_Name( - HSTRING *value) = 0; - - virtual HRESULT STDMETHODCALLTYPE get_Value( - HSTRING *value) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry, 0x125e7431, 0xf678, 0x4e8e, 0xb6,0x70, 0x20,0xa9,0xb0,0x6c,0x51,0x2d) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This, - TrustLevel *trustLevel); - - /*** IWwwFormUrlDecoderEntry methods ***/ - HRESULT (STDMETHODCALLTYPE *get_Name)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This, - HSTRING *value); - - HRESULT (STDMETHODCALLTYPE *get_Value)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *This, - HSTRING *value); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl; - -interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IWwwFormUrlDecoderEntry methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Name(This,value) (This)->lpVtbl->get_Name(This,value) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Value(This,value) (This)->lpVtbl->get_Value(This,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_QueryInterface(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_AddRef(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_Release(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetIids(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IWwwFormUrlDecoderEntry methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Name(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,HSTRING *value) { - return This->lpVtbl->get_Name(This,value); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Value(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry* This,HSTRING *value) { - return This->lpVtbl->get_Value(This,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IWwwFormUrlDecoderEntry IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry -#define IWwwFormUrlDecoderEntryVtbl __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntryVtbl -#define IWwwFormUrlDecoderEntry __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry -#define IWwwFormUrlDecoderEntry_QueryInterface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_QueryInterface -#define IWwwFormUrlDecoderEntry_AddRef __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_AddRef -#define IWwwFormUrlDecoderEntry_Release __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_Release -#define IWwwFormUrlDecoderEntry_GetIids __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetIids -#define IWwwFormUrlDecoderEntry_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetRuntimeClassName -#define IWwwFormUrlDecoderEntry_GetTrustLevel __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_GetTrustLevel -#define IWwwFormUrlDecoderEntry_get_Name __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Name -#define IWwwFormUrlDecoderEntry_get_Value __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_get_Value -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/***************************************************************************** - * IWwwFormUrlDecoderRuntimeClass interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass, 0xd45a0451, 0xf225, 0x4542, 0x92,0x96, 0x0e,0x1d,0xf5,0xd2,0x54,0xdf); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("d45a0451-f225-4542-9296-0e1df5d254df") - IWwwFormUrlDecoderRuntimeClass : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE GetFirstValueByName( - HSTRING name, - HSTRING *value) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass, 0xd45a0451, 0xf225, 0x4542, 0x92,0x96, 0x0e,0x1d,0xf5,0xd2,0x54,0xdf) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This, - TrustLevel *trustLevel); - - /*** IWwwFormUrlDecoderRuntimeClass methods ***/ - HRESULT (STDMETHODCALLTYPE *GetFirstValueByName)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass *This, - HSTRING name, - HSTRING *value); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl; - -interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IWwwFormUrlDecoderRuntimeClass methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetFirstValueByName(This,name,value) (This)->lpVtbl->GetFirstValueByName(This,name,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_QueryInterface(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_AddRef(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_Release(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetIids(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IWwwFormUrlDecoderRuntimeClass methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetFirstValueByName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass* This,HSTRING name,HSTRING *value) { - return This->lpVtbl->GetFirstValueByName(This,name,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IWwwFormUrlDecoderRuntimeClass IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass -#define IWwwFormUrlDecoderRuntimeClassVtbl __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassVtbl -#define IWwwFormUrlDecoderRuntimeClass __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass -#define IWwwFormUrlDecoderRuntimeClass_QueryInterface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_QueryInterface -#define IWwwFormUrlDecoderRuntimeClass_AddRef __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_AddRef -#define IWwwFormUrlDecoderRuntimeClass_Release __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_Release -#define IWwwFormUrlDecoderRuntimeClass_GetIids __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetIids -#define IWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetRuntimeClassName -#define IWwwFormUrlDecoderRuntimeClass_GetTrustLevel __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetTrustLevel -#define IWwwFormUrlDecoderRuntimeClass_GetFirstValueByName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_GetFirstValueByName -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/***************************************************************************** - * IWwwFormUrlDecoderRuntimeClassFactory interface - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_INTERFACE_DEFINED__ -#define ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory, 0x5b8c6b3d, 0x24ae, 0x41b5, 0xa1,0xbf, 0xf0,0xc3,0xd5,0x44,0x84,0x5b); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - MIDL_INTERFACE("5b8c6b3d-24ae-41b5-a1bf-f0c3d544845b") - IWwwFormUrlDecoderRuntimeClassFactory : public IInspectable - { - virtual HRESULT STDMETHODCALLTYPE CreateWwwFormUrlDecoder( - HSTRING query, - ABI::Windows::Foundation::IWwwFormUrlDecoderRuntimeClass **instance) = 0; - - }; - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory, 0x5b8c6b3d, 0x24ae, 0x41b5, 0xa1,0xbf, 0xf0,0xc3,0xd5,0x44,0x84,0x5b) -#endif -#else -typedef struct __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This, - TrustLevel *trustLevel); - - /*** IWwwFormUrlDecoderRuntimeClassFactory methods ***/ - HRESULT (STDMETHODCALLTYPE *CreateWwwFormUrlDecoder)( - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory *This, - HSTRING query, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **instance); - - END_INTERFACE -} __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl; - -interface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory { - CONST_VTBL __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IWwwFormUrlDecoderRuntimeClassFactory methods ***/ -#define __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder(This,query,instance) (This)->lpVtbl->CreateWwwFormUrlDecoder(This,query,instance) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_QueryInterface(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_AddRef(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_Release(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetIids(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IWwwFormUrlDecoderRuntimeClassFactory methods ***/ -static __WIDL_INLINE HRESULT __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder(__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory* This,HSTRING query,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClass **instance) { - return This->lpVtbl->CreateWwwFormUrlDecoder(This,query,instance); -} -#endif -#ifdef WIDL_using_Windows_Foundation -#define IID_IWwwFormUrlDecoderRuntimeClassFactory IID___x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory -#define IWwwFormUrlDecoderRuntimeClassFactoryVtbl __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactoryVtbl -#define IWwwFormUrlDecoderRuntimeClassFactory __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory -#define IWwwFormUrlDecoderRuntimeClassFactory_QueryInterface __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_QueryInterface -#define IWwwFormUrlDecoderRuntimeClassFactory_AddRef __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_AddRef -#define IWwwFormUrlDecoderRuntimeClassFactory_Release __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_Release -#define IWwwFormUrlDecoderRuntimeClassFactory_GetIids __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetIids -#define IWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetRuntimeClassName -#define IWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_GetTrustLevel -#define IWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_CreateWwwFormUrlDecoder -#endif /* WIDL_using_Windows_Foundation */ -#endif - -#endif - -#endif /* ____x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderRuntimeClassFactory_INTERFACE_DEFINED__ */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - /* * Class Windows.Foundation.Deferral */ @@ -3918,54 +2443,6 @@ extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_MemoryBuff #endif /* RUNTIMECLASS_Windows_Foundation_MemoryBuffer_DEFINED */ #endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ -/* - * Class Windows.Foundation.Uri - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef RUNTIMECLASS_Windows_Foundation_Uri_DEFINED -#define RUNTIMECLASS_Windows_Foundation_Uri_DEFINED -#if !defined(_MSC_VER) && !defined(__MINGW32__) -static const WCHAR RuntimeClass_Windows_Foundation_Uri[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','U','r','i',0}; -#elif defined(__GNUC__) && !defined(__cplusplus) -const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_Uri[] = L"Windows.Foundation.Uri"; -#else -extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_Uri[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','U','r','i',0}; -#endif -#endif /* RUNTIMECLASS_Windows_Foundation_Uri_DEFINED */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/* - * Class Windows.Foundation.WwwFormUrlDecoder - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoder_DEFINED -#define RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoder_DEFINED -#if !defined(_MSC_VER) && !defined(__MINGW32__) -static const WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoder[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r',0}; -#elif defined(__GNUC__) && !defined(__cplusplus) -const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoder[] = L"Windows.Foundation.WwwFormUrlDecoder"; -#else -extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoder[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r',0}; -#endif -#endif /* RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoder_DEFINED */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - -/* - * Class Windows.Foundation.WwwFormUrlDecoderEntry - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoderEntry_DEFINED -#define RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoderEntry_DEFINED -#if !defined(_MSC_VER) && !defined(__MINGW32__) -static const WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r','E','n','t','r','y',0}; -#elif defined(__GNUC__) && !defined(__cplusplus) -const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry[] = L"Windows.Foundation.WwwFormUrlDecoderEntry"; -#else -extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Foundation_WwwFormUrlDecoderEntry[] = {'W','i','n','d','o','w','s','.','F','o','u','n','d','a','t','i','o','n','.','W','w','w','F','o','r','m','U','r','l','D','e','c','o','d','e','r','E','n','t','r','y',0}; -#endif -#endif /* RUNTIMECLASS_Windows_Foundation_WwwFormUrlDecoderEntry_DEFINED */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ - /***************************************************************************** * IKeyValuePair interface */ @@ -5320,254 +3797,6 @@ static __WIDL_INLINE HRESULT __FIIterable_1_IInspectable_First(__FIIterable_1_II #endif /* ____FIIterable_1_IInspectable_INTERFACE_DEFINED__ */ -/***************************************************************************** - * IIterable interface - */ -#ifndef ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ -#define ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x876be83b, 0x7218, 0x5bfb, 0xa1,0x69, 0x83,0x15,0x2e,0xf7,0xe1,0x46); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - namespace Collections { - template<> - MIDL_INTERFACE("876be83b-7218-5bfb-a169-83152ef7e146") - IIterable : IIterable_impl - { - }; - } - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x876be83b, 0x7218, 0x5bfb, 0xa1,0x69, 0x83,0x15,0x2e,0xf7,0xe1,0x46) -#endif -#else -typedef struct __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - TrustLevel *trustLevel); - - /*** IIterable methods ***/ - HRESULT (STDMETHODCALLTYPE *First)( - __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry **value); - - END_INTERFACE -} __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl; - -interface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry { - CONST_VTBL __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IIterable methods ***/ -#define __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_First(This,value) (This)->lpVtbl->First(This,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IIterable methods ***/ -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_First(__FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry **value) { - return This->lpVtbl->First(This,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation_Collections -#define IID_IIterable_IWwwFormUrlDecoderEntry IID___FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry -#define IIterable_IWwwFormUrlDecoderEntryVtbl __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl -#define IIterable_IWwwFormUrlDecoderEntry __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry -#define IIterable_IWwwFormUrlDecoderEntry_QueryInterface __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface -#define IIterable_IWwwFormUrlDecoderEntry_AddRef __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef -#define IIterable_IWwwFormUrlDecoderEntry_Release __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release -#define IIterable_IWwwFormUrlDecoderEntry_GetIids __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids -#define IIterable_IWwwFormUrlDecoderEntry_GetRuntimeClassName __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName -#define IIterable_IWwwFormUrlDecoderEntry_GetTrustLevel __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel -#define IIterable_IWwwFormUrlDecoderEntry_First __FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_First -#endif /* WIDL_using_Windows_Foundation_Collections */ -#endif - -#endif - -#endif /* ____FIIterable_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * IIterable interface - */ -#ifndef ____FIIterable_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ -#define ____FIIterable_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___FIIterable_1_Windows__CFoundation__CUri, 0xb0d63b78, 0x78ad, 0x5e31, 0xb6,0xd8, 0xe3,0x2a,0x0e,0x16,0xc4,0x47); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - namespace Collections { - template<> - MIDL_INTERFACE("b0d63b78-78ad-5e31-b6d8-e32a0e16c447") - IIterable : IIterable_impl > - { - }; - } - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__FIIterable_1_Windows__CFoundation__CUri, 0xb0d63b78, 0x78ad, 0x5e31, 0xb6,0xd8, 0xe3,0x2a,0x0e,0x16,0xc4,0x47) -#endif -#else -typedef struct __FIIterable_1_Windows__CFoundation__CUriVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __FIIterable_1_Windows__CFoundation__CUri *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __FIIterable_1_Windows__CFoundation__CUri *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __FIIterable_1_Windows__CFoundation__CUri *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __FIIterable_1_Windows__CFoundation__CUri *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __FIIterable_1_Windows__CFoundation__CUri *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __FIIterable_1_Windows__CFoundation__CUri *This, - TrustLevel *trustLevel); - - /*** IIterable methods ***/ - HRESULT (STDMETHODCALLTYPE *First)( - __FIIterable_1_Windows__CFoundation__CUri *This, - __FIIterator_1_Windows__CFoundation__CUri **value); - - END_INTERFACE -} __FIIterable_1_Windows__CFoundation__CUriVtbl; - -interface __FIIterable_1_Windows__CFoundation__CUri { - CONST_VTBL __FIIterable_1_Windows__CFoundation__CUriVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __FIIterable_1_Windows__CFoundation__CUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __FIIterable_1_Windows__CFoundation__CUri_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __FIIterable_1_Windows__CFoundation__CUri_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __FIIterable_1_Windows__CFoundation__CUri_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __FIIterable_1_Windows__CFoundation__CUri_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __FIIterable_1_Windows__CFoundation__CUri_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IIterable methods ***/ -#define __FIIterable_1_Windows__CFoundation__CUri_First(This,value) (This)->lpVtbl->First(This,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_QueryInterface(__FIIterable_1_Windows__CFoundation__CUri* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CUri_AddRef(__FIIterable_1_Windows__CFoundation__CUri* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __FIIterable_1_Windows__CFoundation__CUri_Release(__FIIterable_1_Windows__CFoundation__CUri* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_GetIids(__FIIterable_1_Windows__CFoundation__CUri* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_GetRuntimeClassName(__FIIterable_1_Windows__CFoundation__CUri* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_GetTrustLevel(__FIIterable_1_Windows__CFoundation__CUri* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IIterable methods ***/ -static __WIDL_INLINE HRESULT __FIIterable_1_Windows__CFoundation__CUri_First(__FIIterable_1_Windows__CFoundation__CUri* This,__FIIterator_1_Windows__CFoundation__CUri **value) { - return This->lpVtbl->First(This,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation_Collections -#define IID_IIterable_Uri IID___FIIterable_1_Windows__CFoundation__CUri -#define IIterable_UriVtbl __FIIterable_1_Windows__CFoundation__CUriVtbl -#define IIterable_Uri __FIIterable_1_Windows__CFoundation__CUri -#define IIterable_Uri_QueryInterface __FIIterable_1_Windows__CFoundation__CUri_QueryInterface -#define IIterable_Uri_AddRef __FIIterable_1_Windows__CFoundation__CUri_AddRef -#define IIterable_Uri_Release __FIIterable_1_Windows__CFoundation__CUri_Release -#define IIterable_Uri_GetIids __FIIterable_1_Windows__CFoundation__CUri_GetIids -#define IIterable_Uri_GetRuntimeClassName __FIIterable_1_Windows__CFoundation__CUri_GetRuntimeClassName -#define IIterable_Uri_GetTrustLevel __FIIterable_1_Windows__CFoundation__CUri_GetTrustLevel -#define IIterable_Uri_First __FIIterable_1_Windows__CFoundation__CUri_First -#endif /* WIDL_using_Windows_Foundation_Collections */ -#endif - -#endif - -#endif /* ____FIIterable_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ */ - /***************************************************************************** * IIterator interface */ @@ -5874,312 +4103,6 @@ static __WIDL_INLINE HRESULT __FIIterator_1_IInspectable_GetMany(__FIIterator_1_ #endif /* ____FIIterator_1_IInspectable_INTERFACE_DEFINED__ */ -/***************************************************************************** - * IIterator interface - */ -#ifndef ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ -#define ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x32e54295, 0x373c, 0x50cb, 0x80,0xa1, 0x46,0x8a,0x99,0x0c,0xa7,0x80); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - namespace Collections { - template<> - MIDL_INTERFACE("32e54295-373c-50cb-80a1-468a990ca780") - IIterator : IIterator_impl - { - }; - } - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0x32e54295, 0x373c, 0x50cb, 0x80,0xa1, 0x46,0x8a,0x99,0x0c,0xa7,0x80) -#endif -#else -typedef struct __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - TrustLevel *trustLevel); - - /*** IIterator methods ***/ - HRESULT (STDMETHODCALLTYPE *get_Current)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value); - - HRESULT (STDMETHODCALLTYPE *get_HasCurrent)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - WINBOOL *value); - - HRESULT (STDMETHODCALLTYPE *MoveNext)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - WINBOOL *value); - - HRESULT (STDMETHODCALLTYPE *GetMany)( - __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - UINT32 items_size, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items, - UINT32 *value); - - END_INTERFACE -} __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl; - -interface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry { - CONST_VTBL __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IIterator methods ***/ -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Current(This,value) (This)->lpVtbl->get_Current(This,value) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value) -#define __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IIterator methods ***/ -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Current(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value) { - return This->lpVtbl->get_Current(This,value); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_HasCurrent(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,WINBOOL *value) { - return This->lpVtbl->get_HasCurrent(This,value); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_MoveNext(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,WINBOOL *value) { - return This->lpVtbl->MoveNext(This,value); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(__FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 items_size,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items,UINT32 *value) { - return This->lpVtbl->GetMany(This,items_size,items,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation_Collections -#define IID_IIterator_IWwwFormUrlDecoderEntry IID___FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry -#define IIterator_IWwwFormUrlDecoderEntryVtbl __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl -#define IIterator_IWwwFormUrlDecoderEntry __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry -#define IIterator_IWwwFormUrlDecoderEntry_QueryInterface __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface -#define IIterator_IWwwFormUrlDecoderEntry_AddRef __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef -#define IIterator_IWwwFormUrlDecoderEntry_Release __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release -#define IIterator_IWwwFormUrlDecoderEntry_GetIids __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids -#define IIterator_IWwwFormUrlDecoderEntry_GetRuntimeClassName __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName -#define IIterator_IWwwFormUrlDecoderEntry_GetTrustLevel __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel -#define IIterator_IWwwFormUrlDecoderEntry_get_Current __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Current -#define IIterator_IWwwFormUrlDecoderEntry_get_HasCurrent __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_HasCurrent -#define IIterator_IWwwFormUrlDecoderEntry_MoveNext __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_MoveNext -#define IIterator_IWwwFormUrlDecoderEntry_GetMany __FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany -#endif /* WIDL_using_Windows_Foundation_Collections */ -#endif - -#endif - -#endif /* ____FIIterator_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */ - -/***************************************************************************** - * IIterator interface - */ -#ifndef ____FIIterator_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ -#define ____FIIterator_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___FIIterator_1_Windows__CFoundation__CUri, 0x1c157d0f, 0x5efe, 0x5cec, 0xbb,0xd6, 0x0c,0x6c,0xe9,0xaf,0x07,0xa5); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - namespace Collections { - template<> - MIDL_INTERFACE("1c157d0f-5efe-5cec-bbd6-0c6ce9af07a5") - IIterator : IIterator_impl > - { - }; - } - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__FIIterator_1_Windows__CFoundation__CUri, 0x1c157d0f, 0x5efe, 0x5cec, 0xbb,0xd6, 0x0c,0x6c,0xe9,0xaf,0x07,0xa5) -#endif -#else -typedef struct __FIIterator_1_Windows__CFoundation__CUriVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __FIIterator_1_Windows__CFoundation__CUri *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __FIIterator_1_Windows__CFoundation__CUri *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __FIIterator_1_Windows__CFoundation__CUri *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __FIIterator_1_Windows__CFoundation__CUri *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __FIIterator_1_Windows__CFoundation__CUri *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __FIIterator_1_Windows__CFoundation__CUri *This, - TrustLevel *trustLevel); - - /*** IIterator methods ***/ - HRESULT (STDMETHODCALLTYPE *get_Current)( - __FIIterator_1_Windows__CFoundation__CUri *This, - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **value); - - HRESULT (STDMETHODCALLTYPE *get_HasCurrent)( - __FIIterator_1_Windows__CFoundation__CUri *This, - WINBOOL *value); - - HRESULT (STDMETHODCALLTYPE *MoveNext)( - __FIIterator_1_Windows__CFoundation__CUri *This, - WINBOOL *value); - - HRESULT (STDMETHODCALLTYPE *GetMany)( - __FIIterator_1_Windows__CFoundation__CUri *This, - UINT32 items_size, - __x_ABI_CWindows_CFoundation_CIUriRuntimeClass **items, - UINT32 *value); - - END_INTERFACE -} __FIIterator_1_Windows__CFoundation__CUriVtbl; - -interface __FIIterator_1_Windows__CFoundation__CUri { - CONST_VTBL __FIIterator_1_Windows__CFoundation__CUriVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __FIIterator_1_Windows__CFoundation__CUri_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __FIIterator_1_Windows__CFoundation__CUri_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __FIIterator_1_Windows__CFoundation__CUri_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __FIIterator_1_Windows__CFoundation__CUri_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __FIIterator_1_Windows__CFoundation__CUri_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __FIIterator_1_Windows__CFoundation__CUri_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IIterator methods ***/ -#define __FIIterator_1_Windows__CFoundation__CUri_get_Current(This,value) (This)->lpVtbl->get_Current(This,value) -#define __FIIterator_1_Windows__CFoundation__CUri_get_HasCurrent(This,value) (This)->lpVtbl->get_HasCurrent(This,value) -#define __FIIterator_1_Windows__CFoundation__CUri_MoveNext(This,value) (This)->lpVtbl->MoveNext(This,value) -#define __FIIterator_1_Windows__CFoundation__CUri_GetMany(This,items_size,items,value) (This)->lpVtbl->GetMany(This,items_size,items,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_QueryInterface(__FIIterator_1_Windows__CFoundation__CUri* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CUri_AddRef(__FIIterator_1_Windows__CFoundation__CUri* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __FIIterator_1_Windows__CFoundation__CUri_Release(__FIIterator_1_Windows__CFoundation__CUri* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetIids(__FIIterator_1_Windows__CFoundation__CUri* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetRuntimeClassName(__FIIterator_1_Windows__CFoundation__CUri* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetTrustLevel(__FIIterator_1_Windows__CFoundation__CUri* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IIterator methods ***/ -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_get_Current(__FIIterator_1_Windows__CFoundation__CUri* This,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **value) { - return This->lpVtbl->get_Current(This,value); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_get_HasCurrent(__FIIterator_1_Windows__CFoundation__CUri* This,WINBOOL *value) { - return This->lpVtbl->get_HasCurrent(This,value); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_MoveNext(__FIIterator_1_Windows__CFoundation__CUri* This,WINBOOL *value) { - return This->lpVtbl->MoveNext(This,value); -} -static __WIDL_INLINE HRESULT __FIIterator_1_Windows__CFoundation__CUri_GetMany(__FIIterator_1_Windows__CFoundation__CUri* This,UINT32 items_size,__x_ABI_CWindows_CFoundation_CIUriRuntimeClass **items,UINT32 *value) { - return This->lpVtbl->GetMany(This,items_size,items,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation_Collections -#define IID_IIterator_Uri IID___FIIterator_1_Windows__CFoundation__CUri -#define IIterator_UriVtbl __FIIterator_1_Windows__CFoundation__CUriVtbl -#define IIterator_Uri __FIIterator_1_Windows__CFoundation__CUri -#define IIterator_Uri_QueryInterface __FIIterator_1_Windows__CFoundation__CUri_QueryInterface -#define IIterator_Uri_AddRef __FIIterator_1_Windows__CFoundation__CUri_AddRef -#define IIterator_Uri_Release __FIIterator_1_Windows__CFoundation__CUri_Release -#define IIterator_Uri_GetIids __FIIterator_1_Windows__CFoundation__CUri_GetIids -#define IIterator_Uri_GetRuntimeClassName __FIIterator_1_Windows__CFoundation__CUri_GetRuntimeClassName -#define IIterator_Uri_GetTrustLevel __FIIterator_1_Windows__CFoundation__CUri_GetTrustLevel -#define IIterator_Uri_get_Current __FIIterator_1_Windows__CFoundation__CUri_get_Current -#define IIterator_Uri_get_HasCurrent __FIIterator_1_Windows__CFoundation__CUri_get_HasCurrent -#define IIterator_Uri_MoveNext __FIIterator_1_Windows__CFoundation__CUri_MoveNext -#define IIterator_Uri_GetMany __FIIterator_1_Windows__CFoundation__CUri_GetMany -#endif /* WIDL_using_Windows_Foundation_Collections */ -#endif - -#endif - -#endif /* ____FIIterator_1_Windows__CFoundation__CUri_INTERFACE_DEFINED__ */ - /***************************************************************************** * IVectorView interface */ @@ -6494,163 +4417,6 @@ static __WIDL_INLINE HRESULT __FIVectorView_1_IInspectable_GetMany(__FIVectorVie #endif /* ____FIVectorView_1_IInspectable_INTERFACE_DEFINED__ */ -/***************************************************************************** - * IVectorView interface - */ -#ifndef ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ -#define ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ - -DEFINE_GUID(IID___FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0xb1f00d3b, 0x1f06, 0x5117, 0x93,0xea, 0x2a,0x0d,0x79,0x11,0x67,0x01); -#if defined(__cplusplus) && !defined(CINTERFACE) -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace Foundation { - namespace Collections { - template<> - MIDL_INTERFACE("b1f00d3b-1f06-5117-93ea-2a0d79116701") - IVectorView : IVectorView_impl - { - }; - } - } - } -} -extern "C" { -#ifdef __CRT_UUID_DECL -__CRT_UUID_DECL(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry, 0xb1f00d3b, 0x1f06, 0x5117, 0x93,0xea, 0x2a,0x0d,0x79,0x11,0x67,0x01) -#endif -#else -typedef struct __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl { - BEGIN_INTERFACE - - /*** IUnknown methods ***/ - HRESULT (STDMETHODCALLTYPE *QueryInterface)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - REFIID riid, - void **ppvObject); - - ULONG (STDMETHODCALLTYPE *AddRef)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This); - - ULONG (STDMETHODCALLTYPE *Release)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This); - - /*** IInspectable methods ***/ - HRESULT (STDMETHODCALLTYPE *GetIids)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - ULONG *iidCount, - IID **iids); - - HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - HSTRING *className); - - HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - TrustLevel *trustLevel); - - /*** IVectorView methods ***/ - HRESULT (STDMETHODCALLTYPE *GetAt)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - UINT32 index, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value); - - HRESULT (STDMETHODCALLTYPE *get_Size)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - UINT32 *value); - - HRESULT (STDMETHODCALLTYPE *IndexOf)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *element, - UINT32 *index, - BOOLEAN *value); - - HRESULT (STDMETHODCALLTYPE *GetMany)( - __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry *This, - UINT32 start_index, - UINT32 items_size, - __x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items, - UINT32 *value); - - END_INTERFACE -} __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl; - -interface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry { - CONST_VTBL __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl* lpVtbl; -}; - -#ifdef COBJMACROS -#ifndef WIDL_C_INLINE_WRAPPERS -/*** IUnknown methods ***/ -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(This) (This)->lpVtbl->AddRef(This) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(This) (This)->lpVtbl->Release(This) -/*** IInspectable methods ***/ -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) -/*** IVectorView methods ***/ -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetAt(This,index,value) (This)->lpVtbl->GetAt(This,index,value) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Size(This,value) (This)->lpVtbl->get_Size(This,value) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_IndexOf(This,element,index,value) (This)->lpVtbl->IndexOf(This,element,index,value) -#define __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(This,start_index,items_size,items,value) (This)->lpVtbl->GetMany(This,start_index,items_size,items,value) -#else -/*** IUnknown methods ***/ -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,REFIID riid,void **ppvObject) { - return This->lpVtbl->QueryInterface(This,riid,ppvObject); -} -static __WIDL_INLINE ULONG __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->AddRef(This); -} -static __WIDL_INLINE ULONG __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This) { - return This->lpVtbl->Release(This); -} -/*** IInspectable methods ***/ -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,ULONG *iidCount,IID **iids) { - return This->lpVtbl->GetIids(This,iidCount,iids); -} -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,HSTRING *className) { - return This->lpVtbl->GetRuntimeClassName(This,className); -} -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,TrustLevel *trustLevel) { - return This->lpVtbl->GetTrustLevel(This,trustLevel); -} -/*** IVectorView methods ***/ -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetAt(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 index,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **value) { - return This->lpVtbl->GetAt(This,index,value); -} -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Size(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 *value) { - return This->lpVtbl->get_Size(This,value); -} -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_IndexOf(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry *element,UINT32 *index,BOOLEAN *value) { - return This->lpVtbl->IndexOf(This,element,index,value); -} -static __WIDL_INLINE HRESULT __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany(__FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry* This,UINT32 start_index,UINT32 items_size,__x_ABI_CWindows_CFoundation_CIWwwFormUrlDecoderEntry **items,UINT32 *value) { - return This->lpVtbl->GetMany(This,start_index,items_size,items,value); -} -#endif -#ifdef WIDL_using_Windows_Foundation_Collections -#define IID_IVectorView_IWwwFormUrlDecoderEntry IID___FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry -#define IVectorView_IWwwFormUrlDecoderEntryVtbl __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntryVtbl -#define IVectorView_IWwwFormUrlDecoderEntry __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry -#define IVectorView_IWwwFormUrlDecoderEntry_QueryInterface __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_QueryInterface -#define IVectorView_IWwwFormUrlDecoderEntry_AddRef __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_AddRef -#define IVectorView_IWwwFormUrlDecoderEntry_Release __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_Release -#define IVectorView_IWwwFormUrlDecoderEntry_GetIids __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetIids -#define IVectorView_IWwwFormUrlDecoderEntry_GetRuntimeClassName __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetRuntimeClassName -#define IVectorView_IWwwFormUrlDecoderEntry_GetTrustLevel __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetTrustLevel -#define IVectorView_IWwwFormUrlDecoderEntry_GetAt __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetAt -#define IVectorView_IWwwFormUrlDecoderEntry_get_Size __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_get_Size -#define IVectorView_IWwwFormUrlDecoderEntry_IndexOf __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_IndexOf -#define IVectorView_IWwwFormUrlDecoderEntry_GetMany __FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_GetMany -#endif /* WIDL_using_Windows_Foundation_Collections */ -#endif - -#endif - -#endif /* ____FIVectorView_1_Windows__CFoundation__CIWwwFormUrlDecoderEntry_INTERFACE_DEFINED__ */ - /***************************************************************************** * IVector interface */ diff --git a/mingw-w64-headers/include/windows.foundation.idl b/mingw-w64-headers/include/windows.foundation.idl index 11679367e..9be302515 100644 --- a/mingw-w64-headers/include/windows.foundation.idl +++ b/mingw-w64-headers/include/windows.foundation.idl @@ -68,32 +68,16 @@ namespace Windows.Foundation { interface IMemoryBufferFactory; interface IMemoryBufferReference; interface IStringable; - interface IUriEscapeStatics; - interface IUriRuntimeClass; - interface IUriRuntimeClassFactory; - interface IUriRuntimeClassWithAbsoluteCanonicalUri; - interface IWwwFormUrlDecoderEntry; - interface IWwwFormUrlDecoderRuntimeClass; - interface IWwwFormUrlDecoderRuntimeClassFactory; - runtimeclass Deferral; runtimeclass MemoryBuffer; - runtimeclass Uri; - runtimeclass WwwFormUrlDecoder; - runtimeclass WwwFormUrlDecoderEntry; declare { interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterable; - interface Windows.Foundation.Collections.IIterable; - interface Windows.Foundation.Collections.IIterable; interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IIterator; - interface Windows.Foundation.Collections.IIterator; - interface Windows.Foundation.Collections.IIterator; interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVectorView; - interface Windows.Foundation.Collections.IVectorView; interface Windows.Foundation.Collections.IVector; interface Windows.Foundation.Collections.IVector; interface Windows.Foundation.Collections.IMapView *>; @@ -287,97 +271,6 @@ namespace Windows.Foundation { [eventremove] HRESULT Closed([in] EventRegistrationToken cookie); } - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.Foundation.Uri), - uuid(c1d432ba-c824-4452-a7fd-512bc3bbe9a1) - ] - interface IUriEscapeStatics : IInspectable - { - HRESULT UnescapeComponent([in] HSTRING to_unescape, [out, retval] HSTRING *value); - HRESULT EscapeComponent([in] HSTRING to_escape, [out, retval] HSTRING *value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.Foundation.Uri), - uuid(9e365e57-48b2-4160-956f-c7385120bbfc) - ] - interface IUriRuntimeClass : IInspectable - { - [propget] HRESULT AbsoluteUri([out, retval] HSTRING *value); - [propget] HRESULT DisplayUri([out, retval] HSTRING *value); - [propget] HRESULT Domain([out, retval] HSTRING *value); - [propget] HRESULT Extension([out, retval] HSTRING *value); - [propget] HRESULT Fragment([out, retval] HSTRING *value); - [propget] HRESULT Host([out, retval] HSTRING *value); - [propget] HRESULT Password([out, retval] HSTRING *value); - [propget] HRESULT Path([out, retval] HSTRING *value); - [propget] HRESULT Query([out, retval] HSTRING *value); - [propget] HRESULT QueryParsed([out, retval] Windows.Foundation.WwwFormUrlDecoder **decoder); - [propget] HRESULT RawUri([out, retval] HSTRING *value); - [propget] HRESULT SchemeName([out, retval] HSTRING *value); - [propget] HRESULT UserName([out, retval] HSTRING *value); - [propget] HRESULT Port([out, retval] INT32 *value); - [propget] HRESULT Suspicious([out, retval] boolean *value); - HRESULT Equals([in] Windows.Foundation.Uri *uri, [out, retval] boolean *value); - HRESULT CombineUri([in] HSTRING relative_uri, [out, retval] Windows.Foundation.Uri **instance); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.Foundation.Uri), - uuid(44a9796f-723e-4fdf-a218-033e75b0c084) - ] - interface IUriRuntimeClassFactory : IInspectable - { - HRESULT CreateUri([in] HSTRING uri, [out, retval] Windows.Foundation.Uri **instance); - HRESULT CreateWithRelativeUri([in] HSTRING base_uri, [in] HSTRING relative_uri, [out, retval] Windows.Foundation.Uri **instance); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.Foundation.Uri), - uuid(758d9661-221c-480f-a339-50656673f46f) - ] - interface IUriRuntimeClassWithAbsoluteCanonicalUri : IInspectable - { - [propget] HRESULT AbsoluteCanonicalUri([out, retval] HSTRING *value); - [propget] HRESULT DisplayIri([out, retval] HSTRING *value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - uuid(125e7431-f678-4e8e-b670-20a9b06c512d) - ] - interface IWwwFormUrlDecoderEntry : IInspectable - { - [propget] HRESULT Name([out, retval] HSTRING *value); - [propget] HRESULT Value([out, retval] HSTRING *value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.Foundation.WwwFormUrlDecoder), - uuid(d45a0451-f225-4542-9296-0e1df5d254df) - ] - interface IWwwFormUrlDecoderRuntimeClass : IInspectable - requires Windows.Foundation.Collections.IIterable, - Windows.Foundation.Collections.IVectorView - { - HRESULT GetFirstValueByName([in] HSTRING name, [out, retval] HSTRING *value); - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - exclusiveto(Windows.Foundation.WwwFormUrlDecoder), - uuid(5b8c6b3d-24ae-41b5-a1bf-f0c3d544845b) - ] - interface IWwwFormUrlDecoderRuntimeClassFactory : IInspectable - { - HRESULT CreateWwwFormUrlDecoder([in] HSTRING query, [out, retval] Windows.Foundation.WwwFormUrlDecoder **instance); - } - [ activatable(Windows.Foundation.IDeferralFactory, Windows.Foundation.FoundationContract, 1.0), contract(Windows.Foundation.FoundationContract, 1.0), @@ -400,41 +293,4 @@ namespace Windows.Foundation { [default] interface Windows.Foundation.IMemoryBuffer; interface Windows.Foundation.IClosable; } - - [ - activatable(Windows.Foundation.IUriRuntimeClassFactory, Windows.Foundation.UniversalApiContract, 1.0), - contract(Windows.Foundation.UniversalApiContract, 1.0), - marshaling_behavior(agile), - static(Windows.Foundation.IUriEscapeStatics, Windows.Foundation.UniversalApiContract, 1.0), - threading(both) - ] - runtimeclass Uri - { - [default] interface Windows.Foundation.IUriRuntimeClass; - interface Windows.Foundation.IUriRuntimeClassWithAbsoluteCanonicalUri; - [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Foundation.IStringable; - } - - [ - activatable(Windows.Foundation.IWwwFormUrlDecoderRuntimeClassFactory, Windows.Foundation.UniversalApiContract, 1.0), - contract(Windows.Foundation.UniversalApiContract, 1.0), - marshaling_behavior(agile), - threading(both) - ] - runtimeclass WwwFormUrlDecoder - { - [default] interface Windows.Foundation.IWwwFormUrlDecoderRuntimeClass; - interface Windows.Foundation.Collections.IVectorView; - interface Windows.Foundation.Collections.IIterable; - } - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - marshaling_behavior(agile), - threading(both) - ] - runtimeclass WwwFormUrlDecoderEntry - { - [default] interface Windows.Foundation.IWwwFormUrlDecoderEntry; - } } diff --git a/mingw-w64-headers/include/windows.storage.h b/mingw-w64-headers/include/windows.storage.h index d7d5228bd..84c90d81f 100644 --- a/mingw-w64-headers/include/windows.storage.h +++ b/mingw-w64-headers/include/windows.storage.h @@ -26,27 +26,34 @@ /* Forward declarations */ -#ifndef ____x_ABI_CWindows_CStorage_CStorageFolder_FWD_DEFINED__ -#define ____x_ABI_CWindows_CStorage_CStorageFolder_FWD_DEFINED__ +#ifndef ____x_ABI_CWindows_CStorage_CIStorageItem_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIStorageItem_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIStorageItem __x_ABI_CWindows_CStorage_CIStorageItem; #ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIStorageItem ABI::Windows::Storage::IStorageItem namespace ABI { namespace Windows { namespace Storage { - class StorageFolder; + interface IStorageItem; } } } -#else -typedef struct __x_ABI_CWindows_CStorage_CStorageFolder __x_ABI_CWindows_CStorage_CStorageFolder; -#endif /* defined __cplusplus */ -#endif /* defined ____x_ABI_CWindows_CStorage_CStorageFolder_FWD_DEFINED__ */ - -/* Headers for imported files */ - -#include +#endif /* __cplusplus */ +#endif +#ifndef ____x_ABI_CWindows_CStorage_CIKnownFoldersStatics_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIKnownFoldersStatics_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIKnownFoldersStatics __x_ABI_CWindows_CStorage_CIKnownFoldersStatics; #ifdef __cplusplus -extern "C" { +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics ABI::Windows::Storage::IKnownFoldersStatics +namespace ABI { + namespace Windows { + namespace Storage { + interface IKnownFoldersStatics; + } + } +} +#endif /* __cplusplus */ #endif #ifndef ____x_ABI_CWindows_CStorage_CIStorageFolder_FWD_DEFINED__ @@ -64,39 +71,2233 @@ namespace ABI { #endif /* __cplusplus */ #endif -#ifndef ____x_ABI_CWindows_CStorage_CIStorageFolderStatics_FWD_DEFINED__ -#define ____x_ABI_CWindows_CStorage_CIStorageFolderStatics_FWD_DEFINED__ -typedef interface __x_ABI_CWindows_CStorage_CIStorageFolderStatics __x_ABI_CWindows_CStorage_CIStorageFolderStatics; +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataContainer_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataContainer_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationDataContainer __x_ABI_CWindows_CStorage_CIApplicationDataContainer; #ifdef __cplusplus -#define __x_ABI_CWindows_CStorage_CIStorageFolderStatics ABI::Windows::Storage::IStorageFolderStatics +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer ABI::Windows::Storage::IApplicationDataContainer namespace ABI { namespace Windows { namespace Storage { - interface IStorageFolderStatics; + interface IApplicationDataContainer; } } } #endif /* __cplusplus */ #endif -/* - * Class Windows.Storage.StorageFolder - */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifndef RUNTIMECLASS_Windows_Storage_StorageFolder_DEFINED -#define RUNTIMECLASS_Windows_Storage_StorageFolder_DEFINED -#if !defined(_MSC_VER) && !defined(__MINGW32__) -static const WCHAR RuntimeClass_Windows_Storage_StorageFolder[] = {'W','i','n','d','o','w','s','.','S','t','o','r','a','g','e','.','S','t','o','r','a','g','e','F','o','l','d','e','r',0}; -#elif defined(__GNUC__) && !defined(__cplusplus) -const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Storage_StorageFolder[] = L"Windows.Storage.StorageFolder"; -#else -extern const DECLSPEC_SELECTANY WCHAR RuntimeClass_Windows_Storage_StorageFolder[] = {'W','i','n','d','o','w','s','.','S','t','o','r','a','g','e','.','S','t','o','r','a','g','e','F','o','l','d','e','r',0}; +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationData_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationData_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationData __x_ABI_CWindows_CStorage_CIApplicationData; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationData ABI::Windows::Storage::IApplicationData +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationData; + } + } +} +#endif /* __cplusplus */ #endif -#endif /* RUNTIMECLASS_Windows_Storage_StorageFolder_DEFINED */ -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ + +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationData2_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationData2_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationData2 __x_ABI_CWindows_CStorage_CIApplicationData2; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationData2 ABI::Windows::Storage::IApplicationData2 +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationData2; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationDataStatics __x_ABI_CWindows_CStorage_CIApplicationDataStatics; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics ABI::Windows::Storage::IApplicationDataStatics +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationDataStatics; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler ABI::Windows::Storage::IApplicationDataSetVersionHandler +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationDataSetVersionHandler; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CISetVersionRequest_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CISetVersionRequest_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CISetVersionRequest __x_ABI_CWindows_CStorage_CISetVersionRequest; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CISetVersionRequest ABI::Windows::Storage::ISetVersionRequest +namespace ABI { + namespace Windows { + namespace Storage { + interface ISetVersionRequest; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CISetVersionDeferral_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CISetVersionDeferral_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CISetVersionDeferral __x_ABI_CWindows_CStorage_CISetVersionDeferral; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral ABI::Windows::Storage::ISetVersionDeferral +namespace ABI { + namespace Windows { + namespace Storage { + interface ISetVersionDeferral; + } + } +} +#endif /* __cplusplus */ +#endif + +/* Headers for imported files */ + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__ +#define ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CFoundation_CIAsyncAction __x_ABI_CWindows_CFoundation_CIAsyncAction; +#ifdef __cplusplus +#define __x_ABI_CWindows_CFoundation_CIAsyncAction ABI::Windows::Foundation::IAsyncAction +namespace ABI { + namespace Windows { + namespace Foundation { + interface IAsyncAction; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__ +#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet; +#ifdef __cplusplus +#define __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet ABI::Windows::Foundation::Collections::IPropertySet +namespace ABI { + namespace Windows { + namespace Foundation { + namespace Collections { + interface IPropertySet; + } + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIStorageItem_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIStorageItem_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIStorageItem __x_ABI_CWindows_CStorage_CIStorageItem; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIStorageItem ABI::Windows::Storage::IStorageItem +namespace ABI { + namespace Windows { + namespace Storage { + interface IStorageItem; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIStorageFolder_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIStorageFolder_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIStorageFolder __x_ABI_CWindows_CStorage_CIStorageFolder; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIStorageFolder ABI::Windows::Storage::IStorageFolder +namespace ABI { + namespace Windows { + namespace Storage { + interface IStorageFolder; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationData_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationData_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationData __x_ABI_CWindows_CStorage_CIApplicationData; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationData ABI::Windows::Storage::IApplicationData +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationData; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationDataStatics __x_ABI_CWindows_CStorage_CIApplicationDataStatics; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics ABI::Windows::Storage::IApplicationDataStatics +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationDataStatics; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler ABI::Windows::Storage::IApplicationDataSetVersionHandler +namespace ABI { + namespace Windows { + namespace Storage { + interface IApplicationDataSetVersionHandler; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CApplicationDataContainer_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CApplicationDataContainer_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CApplicationDataContainer __x_ABI_CWindows_CStorage_CApplicationDataContainer; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CApplicationDataContainer ABI::Windows::Storage::ApplicationDataContainer +namespace ABI { + namespace Windows { + namespace Storage { + interface ApplicationDataContainer; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CISetVersionRequest_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CISetVersionRequest_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CISetVersionRequest __x_ABI_CWindows_CStorage_CISetVersionRequest; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CISetVersionRequest ABI::Windows::Storage::ISetVersionRequest +namespace ABI { + namespace Windows { + namespace Storage { + interface ISetVersionRequest; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef ____x_ABI_CWindows_CStorage_CISetVersionDeferral_FWD_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CISetVersionDeferral_FWD_DEFINED__ +typedef interface __x_ABI_CWindows_CStorage_CISetVersionDeferral __x_ABI_CWindows_CStorage_CISetVersionDeferral; +#ifdef __cplusplus +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral ABI::Windows::Storage::ISetVersionDeferral +namespace ABI { + namespace Windows { + namespace Storage { + interface ISetVersionDeferral; + } + } +} +#endif /* __cplusplus */ +#endif + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CStorageDeleteOption __x_ABI_CWindows_CStorage_CStorageDeleteOption; +#endif /* __cplusplus */ + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CNameCollisionOption __x_ABI_CWindows_CStorage_CNameCollisionOption; +#endif /* __cplusplus */ + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CStorageItemTypes __x_ABI_CWindows_CStorage_CStorageItemTypes; +#endif /* __cplusplus */ + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CApplicationDataLocality __x_ABI_CWindows_CStorage_CApplicationDataLocality; +#endif /* __cplusplus */ + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CApplicationDataCreateDisposition __x_ABI_CWindows_CStorage_CApplicationDataCreateDisposition; +#endif /* __cplusplus */ + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CFileAttributes __x_ABI_CWindows_CStorage_CFileAttributes; +#endif /* __cplusplus */ + +#ifndef __cplusplus +typedef enum __x_ABI_CWindows_CStorage_CCreationCollisionOption __x_ABI_CWindows_CStorage_CCreationCollisionOption; +#endif /* __cplusplus */ + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum NameCollisionOption { + NameCollisionOption_GenerateUniqueName = 0, + NameCollisionOption_ReplaceExisting = 1, + NameCollisionOption_FailIfExists = 2 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CNameCollisionOption { + NameCollisionOption_GenerateUniqueName = 0, + NameCollisionOption_ReplaceExisting = 1, + NameCollisionOption_FailIfExists = 2 +}; +#ifdef WIDL_using_Windows_Storage +#define NameCollisionOption __x_ABI_CWindows_CStorage_CNameCollisionOption +#endif /* WIDL_using_Windows_Storage */ +#endif + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum StorageDeleteOption { + StorageDeleteOption_Default = 0, + StorageDeleteOption_PermanentDelete = 1 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CStorageDeleteOption { + StorageDeleteOption_Default = 0, + StorageDeleteOption_PermanentDelete = 1 +}; +#ifdef WIDL_using_Windows_Storage +#define StorageDeleteOption __x_ABI_CWindows_CStorage_CStorageDeleteOption +#endif /* WIDL_using_Windows_Storage */ +#endif + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum StorageItemTypes { + StorageItemTypes_None = 0, + StorageItemTypes_File = 1, + StorageItemTypes_Folder = 2 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CStorageItemTypes { + StorageItemTypes_None = 0, + StorageItemTypes_File = 1, + StorageItemTypes_Folder = 2 +}; +#ifdef WIDL_using_Windows_Storage +#define StorageItemTypes __x_ABI_CWindows_CStorage_CStorageItemTypes +#endif /* WIDL_using_Windows_Storage */ +#endif + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum ApplicationDataCreateDisposition { + ApplicationDataCreateDisposition_Always = 0, + ApplicationDataCreateDisposition_Existing = 1 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CApplicationDataCreateDisposition { + ApplicationDataCreateDisposition_Always = 0, + ApplicationDataCreateDisposition_Existing = 1 +}; +#ifdef WIDL_using_Windows_Storage +#define ApplicationDataCreateDisposition __x_ABI_CWindows_CStorage_CApplicationDataCreateDisposition +#endif /* WIDL_using_Windows_Storage */ +#endif + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum ApplicationDataLocality { + ApplicationDataLocality_Local = 0, + ApplicationDataLocality_Roaming = 1, + ApplicationDataLocality_Temporary = 2 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CApplicationDataLocality { + ApplicationDataLocality_Local = 0, + ApplicationDataLocality_Roaming = 1, + ApplicationDataLocality_Temporary = 2 +}; +#ifdef WIDL_using_Windows_Storage +#define ApplicationDataLocality __x_ABI_CWindows_CStorage_CApplicationDataLocality +#endif /* WIDL_using_Windows_Storage */ +#endif + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum FileAttributes { + FileAttributes_Normal = 0, + FileAttributes_ReadOnly = 1, + FileAttributes_Directory = 2, + FileAttributes_Archive = 3, + FileAttributes_Temporary = 4 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CFileAttributes { + FileAttributes_Normal = 0, + FileAttributes_ReadOnly = 1, + FileAttributes_Directory = 2, + FileAttributes_Archive = 3, + FileAttributes_Temporary = 4 +}; +#ifdef WIDL_using_Windows_Storage +#define FileAttributes __x_ABI_CWindows_CStorage_CFileAttributes +#endif /* WIDL_using_Windows_Storage */ +#endif + +#ifdef __cplusplus +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + enum CreationCollisionOption { + CreationCollisionOption_GenerateUniqueName = 0, + CreationCollisionOption_ReplaceExisting = 1, + CreationCollisionOption_FailIfExists = 2, + CreationCollisionOption_OpenIfExists = 3 + }; + } + } +} +extern "C" { +#else +enum __x_ABI_CWindows_CStorage_CCreationCollisionOption { + CreationCollisionOption_GenerateUniqueName = 0, + CreationCollisionOption_ReplaceExisting = 1, + CreationCollisionOption_FailIfExists = 2, + CreationCollisionOption_OpenIfExists = 3 +}; +#ifdef WIDL_using_Windows_Storage +#define CreationCollisionOption __x_ABI_CWindows_CStorage_CCreationCollisionOption +#endif /* WIDL_using_Windows_Storage */ +#endif + +/***************************************************************************** + * IStorageItem interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIStorageItem_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIStorageItem_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIStorageItem, 0x4207a996, 0xca2f, 0x42f7, 0xbd,0xe8, 0x8b,0x10,0x45,0x7a,0x7f,0x30); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("4207a996-ca2f-42f7-bde8-8b10457a7f30") + IStorageItem : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE RenameAsyncOverloadDefaultOptions( + HSTRING desiredName, + IInspectable **action) = 0; + + virtual HRESULT STDMETHODCALLTYPE RenameAsync( + HSTRING desiredName, + enum NameCollisionOption option, + IInspectable **action) = 0; + + virtual HRESULT STDMETHODCALLTYPE DeleteAsyncOverloadDefaultOptions( + IInspectable **action) = 0; + + virtual HRESULT STDMETHODCALLTYPE DeleteAsync( + enum StorageDeleteOption option, + IInspectable **action) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetBasicPropertiesAsync( + IInspectable **action) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_Name( + HSTRING *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_Path( + HSTRING *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_Attributes( + enum FileAttributes *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_DateCreated( + struct DateTime *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE IsOfType( + enum StorageItemTypes itemType, + boolean *value) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIStorageItem, 0x4207a996, 0xca2f, 0x42f7, 0xbd,0xe8, 0x8b,0x10,0x45,0x7a,0x7f,0x30) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIStorageItemVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIStorageItem *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIStorageItem *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + TrustLevel *trustLevel); + + /*** IStorageItem methods ***/ + HRESULT (STDMETHODCALLTYPE *RenameAsyncOverloadDefaultOptions)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + HSTRING desiredName, + IInspectable **action); + + HRESULT (STDMETHODCALLTYPE *RenameAsync)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + HSTRING desiredName, + enum __x_ABI_CWindows_CStorage_CNameCollisionOption option, + IInspectable **action); + + HRESULT (STDMETHODCALLTYPE *DeleteAsyncOverloadDefaultOptions)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + IInspectable **action); + + HRESULT (STDMETHODCALLTYPE *DeleteAsync)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + enum __x_ABI_CWindows_CStorage_CStorageDeleteOption option, + IInspectable **action); + + HRESULT (STDMETHODCALLTYPE *GetBasicPropertiesAsync)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + IInspectable **action); + + HRESULT (STDMETHODCALLTYPE *get_Name)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + HSTRING *value); + + HRESULT (STDMETHODCALLTYPE *get_Path)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + HSTRING *value); + + HRESULT (STDMETHODCALLTYPE *get_Attributes)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + enum __x_ABI_CWindows_CStorage_CFileAttributes *value); + + HRESULT (STDMETHODCALLTYPE *get_DateCreated)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + struct __x_ABI_CWindows_CFoundation_CDateTime *value); + + HRESULT (STDMETHODCALLTYPE *IsOfType)( + __x_ABI_CWindows_CStorage_CIStorageItem *This, + enum __x_ABI_CWindows_CStorage_CStorageItemTypes itemType, + boolean *value); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIStorageItemVtbl; + +interface __x_ABI_CWindows_CStorage_CIStorageItem { + CONST_VTBL __x_ABI_CWindows_CStorage_CIStorageItemVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIStorageItem_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIStorageItem_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIStorageItem_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIStorageItem_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIStorageItem_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIStorageItem_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IStorageItem methods ***/ +#define __x_ABI_CWindows_CStorage_CIStorageItem_RenameAsyncOverloadDefaultOptions(This,desiredName,action) (This)->lpVtbl->RenameAsyncOverloadDefaultOptions(This,desiredName,action) +#define __x_ABI_CWindows_CStorage_CIStorageItem_RenameAsync(This,desiredName,option,action) (This)->lpVtbl->RenameAsync(This,desiredName,option,action) +#define __x_ABI_CWindows_CStorage_CIStorageItem_DeleteAsyncOverloadDefaultOptions(This,action) (This)->lpVtbl->DeleteAsyncOverloadDefaultOptions(This,action) +#define __x_ABI_CWindows_CStorage_CIStorageItem_DeleteAsync(This,option,action) (This)->lpVtbl->DeleteAsync(This,option,action) +#define __x_ABI_CWindows_CStorage_CIStorageItem_GetBasicPropertiesAsync(This,action) (This)->lpVtbl->GetBasicPropertiesAsync(This,action) +#define __x_ABI_CWindows_CStorage_CIStorageItem_get_Name(This,value) (This)->lpVtbl->get_Name(This,value) +#define __x_ABI_CWindows_CStorage_CIStorageItem_get_Path(This,value) (This)->lpVtbl->get_Path(This,value) +#define __x_ABI_CWindows_CStorage_CIStorageItem_get_Attributes(This,value) (This)->lpVtbl->get_Attributes(This,value) +#define __x_ABI_CWindows_CStorage_CIStorageItem_get_DateCreated(This,value) (This)->lpVtbl->get_DateCreated(This,value) +#define __x_ABI_CWindows_CStorage_CIStorageItem_IsOfType(This,itemType,value) (This)->lpVtbl->IsOfType(This,itemType,value) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_QueryInterface(__x_ABI_CWindows_CStorage_CIStorageItem* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIStorageItem_AddRef(__x_ABI_CWindows_CStorage_CIStorageItem* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIStorageItem_Release(__x_ABI_CWindows_CStorage_CIStorageItem* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_GetIids(__x_ABI_CWindows_CStorage_CIStorageItem* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIStorageItem* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_GetTrustLevel(__x_ABI_CWindows_CStorage_CIStorageItem* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IStorageItem methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_RenameAsyncOverloadDefaultOptions(__x_ABI_CWindows_CStorage_CIStorageItem* This,HSTRING desiredName,IInspectable **action) { + return This->lpVtbl->RenameAsyncOverloadDefaultOptions(This,desiredName,action); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_RenameAsync(__x_ABI_CWindows_CStorage_CIStorageItem* This,HSTRING desiredName,enum __x_ABI_CWindows_CStorage_CNameCollisionOption option,IInspectable **action) { + return This->lpVtbl->RenameAsync(This,desiredName,option,action); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_DeleteAsyncOverloadDefaultOptions(__x_ABI_CWindows_CStorage_CIStorageItem* This,IInspectable **action) { + return This->lpVtbl->DeleteAsyncOverloadDefaultOptions(This,action); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_DeleteAsync(__x_ABI_CWindows_CStorage_CIStorageItem* This,enum __x_ABI_CWindows_CStorage_CStorageDeleteOption option,IInspectable **action) { + return This->lpVtbl->DeleteAsync(This,option,action); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_GetBasicPropertiesAsync(__x_ABI_CWindows_CStorage_CIStorageItem* This,IInspectable **action) { + return This->lpVtbl->GetBasicPropertiesAsync(This,action); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_get_Name(__x_ABI_CWindows_CStorage_CIStorageItem* This,HSTRING *value) { + return This->lpVtbl->get_Name(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_get_Path(__x_ABI_CWindows_CStorage_CIStorageItem* This,HSTRING *value) { + return This->lpVtbl->get_Path(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_get_Attributes(__x_ABI_CWindows_CStorage_CIStorageItem* This,enum __x_ABI_CWindows_CStorage_CFileAttributes *value) { + return This->lpVtbl->get_Attributes(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_get_DateCreated(__x_ABI_CWindows_CStorage_CIStorageItem* This,struct __x_ABI_CWindows_CFoundation_CDateTime *value) { + return This->lpVtbl->get_DateCreated(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageItem_IsOfType(__x_ABI_CWindows_CStorage_CIStorageItem* This,enum __x_ABI_CWindows_CStorage_CStorageItemTypes itemType,boolean *value) { + return This->lpVtbl->IsOfType(This,itemType,value); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IStorageItem IID___x_ABI_CWindows_CStorage_CIStorageItem +#define IStorageItemVtbl __x_ABI_CWindows_CStorage_CIStorageItemVtbl +#define IStorageItem __x_ABI_CWindows_CStorage_CIStorageItem +#define IStorageItem_QueryInterface __x_ABI_CWindows_CStorage_CIStorageItem_QueryInterface +#define IStorageItem_AddRef __x_ABI_CWindows_CStorage_CIStorageItem_AddRef +#define IStorageItem_Release __x_ABI_CWindows_CStorage_CIStorageItem_Release +#define IStorageItem_GetIids __x_ABI_CWindows_CStorage_CIStorageItem_GetIids +#define IStorageItem_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIStorageItem_GetRuntimeClassName +#define IStorageItem_GetTrustLevel __x_ABI_CWindows_CStorage_CIStorageItem_GetTrustLevel +#define IStorageItem_RenameAsyncOverloadDefaultOptions __x_ABI_CWindows_CStorage_CIStorageItem_RenameAsyncOverloadDefaultOptions +#define IStorageItem_RenameAsync __x_ABI_CWindows_CStorage_CIStorageItem_RenameAsync +#define IStorageItem_DeleteAsyncOverloadDefaultOptions __x_ABI_CWindows_CStorage_CIStorageItem_DeleteAsyncOverloadDefaultOptions +#define IStorageItem_DeleteAsync __x_ABI_CWindows_CStorage_CIStorageItem_DeleteAsync +#define IStorageItem_GetBasicPropertiesAsync __x_ABI_CWindows_CStorage_CIStorageItem_GetBasicPropertiesAsync +#define IStorageItem_get_Name __x_ABI_CWindows_CStorage_CIStorageItem_get_Name +#define IStorageItem_get_Path __x_ABI_CWindows_CStorage_CIStorageItem_get_Path +#define IStorageItem_get_Attributes __x_ABI_CWindows_CStorage_CIStorageItem_get_Attributes +#define IStorageItem_get_DateCreated __x_ABI_CWindows_CStorage_CIStorageItem_get_DateCreated +#define IStorageItem_IsOfType __x_ABI_CWindows_CStorage_CIStorageItem_IsOfType +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIStorageItem_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IKnownFoldersStatics interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIKnownFoldersStatics_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIKnownFoldersStatics_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIKnownFoldersStatics, 0x5a2a7520, 0x4802, 0x452d, 0x9a,0xd9, 0x43,0x51,0xad,0xa7,0xec,0x35); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("5a2a7520-4802-452d-9ad9-4351ada7ec35") + IKnownFoldersStatics : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE get_MusicLibrary( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_PicturesLibrary( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_VideosLibrary( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_DocumentsLibrary( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_HomeGroup( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_RemovableDevices( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_MediaServerDevices( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics, 0x5a2a7520, 0x4802, 0x452d, 0x9a,0xd9, 0x43,0x51,0xad,0xa7,0xec,0x35) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIKnownFoldersStaticsVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + TrustLevel *trustLevel); + + /*** IKnownFoldersStatics methods ***/ + HRESULT (STDMETHODCALLTYPE *get_MusicLibrary)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_PicturesLibrary)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_VideosLibrary)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_DocumentsLibrary)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_HomeGroup)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_RemovableDevices)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_MediaServerDevices)( + __x_ABI_CWindows_CStorage_CIKnownFoldersStatics *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIKnownFoldersStaticsVtbl; + +interface __x_ABI_CWindows_CStorage_CIKnownFoldersStatics { + CONST_VTBL __x_ABI_CWindows_CStorage_CIKnownFoldersStaticsVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IKnownFoldersStatics methods ***/ +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_MusicLibrary(This,value) (This)->lpVtbl->get_MusicLibrary(This,value) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_PicturesLibrary(This,value) (This)->lpVtbl->get_PicturesLibrary(This,value) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_VideosLibrary(This,value) (This)->lpVtbl->get_VideosLibrary(This,value) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_DocumentsLibrary(This,value) (This)->lpVtbl->get_DocumentsLibrary(This,value) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_HomeGroup(This,value) (This)->lpVtbl->get_HomeGroup(This,value) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_RemovableDevices(This,value) (This)->lpVtbl->get_RemovableDevices(This,value) +#define __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_MediaServerDevices(This,value) (This)->lpVtbl->get_MediaServerDevices(This,value) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_QueryInterface(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_AddRef(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_Release(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetIids(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetTrustLevel(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IKnownFoldersStatics methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_MusicLibrary(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_MusicLibrary(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_PicturesLibrary(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_PicturesLibrary(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_VideosLibrary(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_VideosLibrary(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_DocumentsLibrary(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_DocumentsLibrary(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_HomeGroup(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_HomeGroup(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_RemovableDevices(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_RemovableDevices(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_MediaServerDevices(__x_ABI_CWindows_CStorage_CIKnownFoldersStatics* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_MediaServerDevices(This,value); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IKnownFoldersStatics IID___x_ABI_CWindows_CStorage_CIKnownFoldersStatics +#define IKnownFoldersStaticsVtbl __x_ABI_CWindows_CStorage_CIKnownFoldersStaticsVtbl +#define IKnownFoldersStatics __x_ABI_CWindows_CStorage_CIKnownFoldersStatics +#define IKnownFoldersStatics_QueryInterface __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_QueryInterface +#define IKnownFoldersStatics_AddRef __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_AddRef +#define IKnownFoldersStatics_Release __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_Release +#define IKnownFoldersStatics_GetIids __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetIids +#define IKnownFoldersStatics_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetRuntimeClassName +#define IKnownFoldersStatics_GetTrustLevel __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_GetTrustLevel +#define IKnownFoldersStatics_get_MusicLibrary __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_MusicLibrary +#define IKnownFoldersStatics_get_PicturesLibrary __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_PicturesLibrary +#define IKnownFoldersStatics_get_VideosLibrary __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_VideosLibrary +#define IKnownFoldersStatics_get_DocumentsLibrary __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_DocumentsLibrary +#define IKnownFoldersStatics_get_HomeGroup __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_HomeGroup +#define IKnownFoldersStatics_get_RemovableDevices __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_RemovableDevices +#define IKnownFoldersStatics_get_MediaServerDevices __x_ABI_CWindows_CStorage_CIKnownFoldersStatics_get_MediaServerDevices +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIKnownFoldersStatics_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IStorageFolder interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIStorageFolder_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIStorageFolder_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIStorageFolder, 0x72d1cb78, 0xb3ef, 0x4f75, 0xa8,0x0b, 0x6f,0xd9,0xda,0xe2,0x94,0x4b); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("72d1cb78-b3ef-4f75-a80b-6fd9dae2944b") + IStorageFolder : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE CreateFileAsyncOverloadDefaultOptions( + HSTRING desiredName, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateFileAsync( + HSTRING desiredName, + enum CreationCollisionOption options, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateFolderAsyncOverloadDefaultOptions( + HSTRING desiredName, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateFolderAsync( + HSTRING desiredName, + enum CreationCollisionOption options, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetFileAsync( + HSTRING name, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetFolderAsync( + HSTRING name, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetItemAsync( + HSTRING name, + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetFilesAsyncOverloadDefaultOptionsStartAndCount( + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetFoldersAsyncOverloadDefaultOptionsStartAndCount( + IInspectable **operation) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetItemsAsyncOverloadDefaultStartAndCount( + IInspectable **operation) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIStorageFolder, 0x72d1cb78, 0xb3ef, 0x4f75, 0xa8,0x0b, 0x6f,0xd9,0xda,0xe2,0x94,0x4b) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIStorageFolderVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + TrustLevel *trustLevel); + + /*** IStorageFolder methods ***/ + HRESULT (STDMETHODCALLTYPE *CreateFileAsyncOverloadDefaultOptions)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING desiredName, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *CreateFileAsync)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING desiredName, + enum __x_ABI_CWindows_CStorage_CCreationCollisionOption options, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *CreateFolderAsyncOverloadDefaultOptions)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING desiredName, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *CreateFolderAsync)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING desiredName, + enum __x_ABI_CWindows_CStorage_CCreationCollisionOption options, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *GetFileAsync)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING name, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *GetFolderAsync)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING name, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *GetItemAsync)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + HSTRING name, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *GetFilesAsyncOverloadDefaultOptionsStartAndCount)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *GetFoldersAsyncOverloadDefaultOptionsStartAndCount)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + IInspectable **operation); + + HRESULT (STDMETHODCALLTYPE *GetItemsAsyncOverloadDefaultStartAndCount)( + __x_ABI_CWindows_CStorage_CIStorageFolder *This, + IInspectable **operation); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIStorageFolderVtbl; + +interface __x_ABI_CWindows_CStorage_CIStorageFolder { + CONST_VTBL __x_ABI_CWindows_CStorage_CIStorageFolderVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIStorageFolder_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IStorageFolder methods ***/ +#define __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFileAsyncOverloadDefaultOptions(This,desiredName,operation) (This)->lpVtbl->CreateFileAsyncOverloadDefaultOptions(This,desiredName,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFileAsync(This,desiredName,options,operation) (This)->lpVtbl->CreateFileAsync(This,desiredName,options,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFolderAsyncOverloadDefaultOptions(This,desiredName,operation) (This)->lpVtbl->CreateFolderAsyncOverloadDefaultOptions(This,desiredName,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFolderAsync(This,desiredName,options,operation) (This)->lpVtbl->CreateFolderAsync(This,desiredName,options,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetFileAsync(This,name,operation) (This)->lpVtbl->GetFileAsync(This,name,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetFolderAsync(This,name,operation) (This)->lpVtbl->GetFolderAsync(This,name,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetItemAsync(This,name,operation) (This)->lpVtbl->GetItemAsync(This,name,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetFilesAsyncOverloadDefaultOptionsStartAndCount(This,operation) (This)->lpVtbl->GetFilesAsyncOverloadDefaultOptionsStartAndCount(This,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetFoldersAsyncOverloadDefaultOptionsStartAndCount(This,operation) (This)->lpVtbl->GetFoldersAsyncOverloadDefaultOptionsStartAndCount(This,operation) +#define __x_ABI_CWindows_CStorage_CIStorageFolder_GetItemsAsyncOverloadDefaultStartAndCount(This,operation) (This)->lpVtbl->GetItemsAsyncOverloadDefaultStartAndCount(This,operation) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_QueryInterface(__x_ABI_CWindows_CStorage_CIStorageFolder* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIStorageFolder_AddRef(__x_ABI_CWindows_CStorage_CIStorageFolder* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIStorageFolder_Release(__x_ABI_CWindows_CStorage_CIStorageFolder* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetIids(__x_ABI_CWindows_CStorage_CIStorageFolder* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetTrustLevel(__x_ABI_CWindows_CStorage_CIStorageFolder* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IStorageFolder methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFileAsyncOverloadDefaultOptions(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING desiredName,IInspectable **operation) { + return This->lpVtbl->CreateFileAsyncOverloadDefaultOptions(This,desiredName,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFileAsync(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING desiredName,enum __x_ABI_CWindows_CStorage_CCreationCollisionOption options,IInspectable **operation) { + return This->lpVtbl->CreateFileAsync(This,desiredName,options,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFolderAsyncOverloadDefaultOptions(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING desiredName,IInspectable **operation) { + return This->lpVtbl->CreateFolderAsyncOverloadDefaultOptions(This,desiredName,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFolderAsync(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING desiredName,enum __x_ABI_CWindows_CStorage_CCreationCollisionOption options,IInspectable **operation) { + return This->lpVtbl->CreateFolderAsync(This,desiredName,options,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetFileAsync(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING name,IInspectable **operation) { + return This->lpVtbl->GetFileAsync(This,name,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetFolderAsync(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING name,IInspectable **operation) { + return This->lpVtbl->GetFolderAsync(This,name,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetItemAsync(__x_ABI_CWindows_CStorage_CIStorageFolder* This,HSTRING name,IInspectable **operation) { + return This->lpVtbl->GetItemAsync(This,name,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetFilesAsyncOverloadDefaultOptionsStartAndCount(__x_ABI_CWindows_CStorage_CIStorageFolder* This,IInspectable **operation) { + return This->lpVtbl->GetFilesAsyncOverloadDefaultOptionsStartAndCount(This,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetFoldersAsyncOverloadDefaultOptionsStartAndCount(__x_ABI_CWindows_CStorage_CIStorageFolder* This,IInspectable **operation) { + return This->lpVtbl->GetFoldersAsyncOverloadDefaultOptionsStartAndCount(This,operation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIStorageFolder_GetItemsAsyncOverloadDefaultStartAndCount(__x_ABI_CWindows_CStorage_CIStorageFolder* This,IInspectable **operation) { + return This->lpVtbl->GetItemsAsyncOverloadDefaultStartAndCount(This,operation); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IStorageFolder IID___x_ABI_CWindows_CStorage_CIStorageFolder +#define IStorageFolderVtbl __x_ABI_CWindows_CStorage_CIStorageFolderVtbl +#define IStorageFolder __x_ABI_CWindows_CStorage_CIStorageFolder +#define IStorageFolder_QueryInterface __x_ABI_CWindows_CStorage_CIStorageFolder_QueryInterface +#define IStorageFolder_AddRef __x_ABI_CWindows_CStorage_CIStorageFolder_AddRef +#define IStorageFolder_Release __x_ABI_CWindows_CStorage_CIStorageFolder_Release +#define IStorageFolder_GetIids __x_ABI_CWindows_CStorage_CIStorageFolder_GetIids +#define IStorageFolder_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIStorageFolder_GetRuntimeClassName +#define IStorageFolder_GetTrustLevel __x_ABI_CWindows_CStorage_CIStorageFolder_GetTrustLevel +#define IStorageFolder_CreateFileAsyncOverloadDefaultOptions __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFileAsyncOverloadDefaultOptions +#define IStorageFolder_CreateFileAsync __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFileAsync +#define IStorageFolder_CreateFolderAsyncOverloadDefaultOptions __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFolderAsyncOverloadDefaultOptions +#define IStorageFolder_CreateFolderAsync __x_ABI_CWindows_CStorage_CIStorageFolder_CreateFolderAsync +#define IStorageFolder_GetFileAsync __x_ABI_CWindows_CStorage_CIStorageFolder_GetFileAsync +#define IStorageFolder_GetFolderAsync __x_ABI_CWindows_CStorage_CIStorageFolder_GetFolderAsync +#define IStorageFolder_GetItemAsync __x_ABI_CWindows_CStorage_CIStorageFolder_GetItemAsync +#define IStorageFolder_GetFilesAsyncOverloadDefaultOptionsStartAndCount __x_ABI_CWindows_CStorage_CIStorageFolder_GetFilesAsyncOverloadDefaultOptionsStartAndCount +#define IStorageFolder_GetFoldersAsyncOverloadDefaultOptionsStartAndCount __x_ABI_CWindows_CStorage_CIStorageFolder_GetFoldersAsyncOverloadDefaultOptionsStartAndCount +#define IStorageFolder_GetItemsAsyncOverloadDefaultStartAndCount __x_ABI_CWindows_CStorage_CIStorageFolder_GetItemsAsyncOverloadDefaultStartAndCount +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIStorageFolder_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IApplicationDataContainer interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataContainer_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataContainer_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIApplicationDataContainer, 0xc5aefd1e, 0xf467, 0x40ba, 0x85,0x66, 0xab,0x64,0x0a,0x44,0x1e,0x1d); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("c5aefd1e-f467-40ba-8566-ab640a441e1d") + IApplicationDataContainer : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE get_Name( + HSTRING *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_Locality( + enum ApplicationDataLocality *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_Values( + IInspectable **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_Containers( + IInspectable **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE CreateContainer( + HSTRING name, + enum ApplicationDataCreateDisposition disposition, + ABI::Windows::Storage::IApplicationDataContainer **container) = 0; + + virtual HRESULT STDMETHODCALLTYPE DeleteContainer( + HSTRING name) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIApplicationDataContainer, 0xc5aefd1e, 0xf467, 0x40ba, 0x85,0x66, 0xab,0x64,0x0a,0x44,0x1e,0x1d) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIApplicationDataContainerVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + TrustLevel *trustLevel); + + /*** IApplicationDataContainer methods ***/ + HRESULT (STDMETHODCALLTYPE *get_Name)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + HSTRING *value); + + HRESULT (STDMETHODCALLTYPE *get_Locality)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + enum __x_ABI_CWindows_CStorage_CApplicationDataLocality *value); + + HRESULT (STDMETHODCALLTYPE *get_Values)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + IInspectable **value); + + HRESULT (STDMETHODCALLTYPE *get_Containers)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + IInspectable **value); + + HRESULT (STDMETHODCALLTYPE *CreateContainer)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + HSTRING name, + enum __x_ABI_CWindows_CStorage_CApplicationDataCreateDisposition disposition, + __x_ABI_CWindows_CStorage_CIApplicationDataContainer **container); + + HRESULT (STDMETHODCALLTYPE *DeleteContainer)( + __x_ABI_CWindows_CStorage_CIApplicationDataContainer *This, + HSTRING name); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIApplicationDataContainerVtbl; + +interface __x_ABI_CWindows_CStorage_CIApplicationDataContainer { + CONST_VTBL __x_ABI_CWindows_CStorage_CIApplicationDataContainerVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IApplicationDataContainer methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Name(This,value) (This)->lpVtbl->get_Name(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Locality(This,value) (This)->lpVtbl->get_Locality(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Values(This,value) (This)->lpVtbl->get_Values(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Containers(This,value) (This)->lpVtbl->get_Containers(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_CreateContainer(This,name,disposition,container) (This)->lpVtbl->CreateContainer(This,name,disposition,container) +#define __x_ABI_CWindows_CStorage_CIApplicationDataContainer_DeleteContainer(This,name) (This)->lpVtbl->DeleteContainer(This,name) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_QueryInterface(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationDataContainer_AddRef(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationDataContainer_Release(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetIids(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetTrustLevel(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IApplicationDataContainer methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Name(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,HSTRING *value) { + return This->lpVtbl->get_Name(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Locality(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,enum __x_ABI_CWindows_CStorage_CApplicationDataLocality *value) { + return This->lpVtbl->get_Locality(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Values(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,IInspectable **value) { + return This->lpVtbl->get_Values(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Containers(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,IInspectable **value) { + return This->lpVtbl->get_Containers(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_CreateContainer(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,HSTRING name,enum __x_ABI_CWindows_CStorage_CApplicationDataCreateDisposition disposition,__x_ABI_CWindows_CStorage_CIApplicationDataContainer **container) { + return This->lpVtbl->CreateContainer(This,name,disposition,container); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataContainer_DeleteContainer(__x_ABI_CWindows_CStorage_CIApplicationDataContainer* This,HSTRING name) { + return This->lpVtbl->DeleteContainer(This,name); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IApplicationDataContainer IID___x_ABI_CWindows_CStorage_CIApplicationDataContainer +#define IApplicationDataContainerVtbl __x_ABI_CWindows_CStorage_CIApplicationDataContainerVtbl +#define IApplicationDataContainer __x_ABI_CWindows_CStorage_CIApplicationDataContainer +#define IApplicationDataContainer_QueryInterface __x_ABI_CWindows_CStorage_CIApplicationDataContainer_QueryInterface +#define IApplicationDataContainer_AddRef __x_ABI_CWindows_CStorage_CIApplicationDataContainer_AddRef +#define IApplicationDataContainer_Release __x_ABI_CWindows_CStorage_CIApplicationDataContainer_Release +#define IApplicationDataContainer_GetIids __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetIids +#define IApplicationDataContainer_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetRuntimeClassName +#define IApplicationDataContainer_GetTrustLevel __x_ABI_CWindows_CStorage_CIApplicationDataContainer_GetTrustLevel +#define IApplicationDataContainer_get_Name __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Name +#define IApplicationDataContainer_get_Locality __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Locality +#define IApplicationDataContainer_get_Values __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Values +#define IApplicationDataContainer_get_Containers __x_ABI_CWindows_CStorage_CIApplicationDataContainer_get_Containers +#define IApplicationDataContainer_CreateContainer __x_ABI_CWindows_CStorage_CIApplicationDataContainer_CreateContainer +#define IApplicationDataContainer_DeleteContainer __x_ABI_CWindows_CStorage_CIApplicationDataContainer_DeleteContainer +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIApplicationDataContainer_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IApplicationData interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationData_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationData_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIApplicationData, 0xc3da6fb7, 0xb744, 0x4b45, 0xb0,0xb8, 0x22,0x3a,0x09,0x38,0xd0,0xdc); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("c3da6fb7-b744-4b45-b0b8-223a0938d0dc") + IApplicationData : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE get_Version( + int *value) = 0; + + virtual HRESULT STDMETHODCALLTYPE SetVersionAsync( + int desiredVersion, + ABI::Windows::Storage::IApplicationDataSetVersionHandler *handler, + IInspectable **setVersionOperation) = 0; + + virtual HRESULT STDMETHODCALLTYPE ClearAllAsync( + IInspectable **clearOperation) = 0; + + virtual HRESULT STDMETHODCALLTYPE ClearAsync( + enum ApplicationDataLocality locality, + IInspectable **clearOperation) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_LocalSettings( + ABI::Windows::Storage::IApplicationDataContainer **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_RoamingSettings( + ABI::Windows::Storage::IApplicationDataContainer **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_LocalFolder( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_RoamingFolder( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_TemporaryFolder( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + virtual HRESULT STDMETHODCALLTYPE DataChanged( + EventRegistrationToken token) = 0; + + virtual HRESULT STDMETHODCALLTYPE SignalDataChanged( + ) = 0; + + virtual HRESULT STDMETHODCALLTYPE RoamingStorageQuota( + UINT64 *value) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIApplicationData, 0xc3da6fb7, 0xb744, 0x4b45, 0xb0,0xb8, 0x22,0x3a,0x09,0x38,0xd0,0xdc) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIApplicationDataVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIApplicationData *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIApplicationData *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + TrustLevel *trustLevel); + + /*** IApplicationData methods ***/ + HRESULT (STDMETHODCALLTYPE *get_Version)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + int *value); + + HRESULT (STDMETHODCALLTYPE *SetVersionAsync)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + int desiredVersion, + __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler *handler, + IInspectable **setVersionOperation); + + HRESULT (STDMETHODCALLTYPE *ClearAllAsync)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + IInspectable **clearOperation); + + HRESULT (STDMETHODCALLTYPE *ClearAsync)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + enum __x_ABI_CWindows_CStorage_CApplicationDataLocality locality, + IInspectable **clearOperation); + + HRESULT (STDMETHODCALLTYPE *get_LocalSettings)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + __x_ABI_CWindows_CStorage_CIApplicationDataContainer **value); + + HRESULT (STDMETHODCALLTYPE *get_RoamingSettings)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + __x_ABI_CWindows_CStorage_CIApplicationDataContainer **value); + + HRESULT (STDMETHODCALLTYPE *get_LocalFolder)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_RoamingFolder)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *get_TemporaryFolder)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + HRESULT (STDMETHODCALLTYPE *DataChanged)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + EventRegistrationToken token); + + HRESULT (STDMETHODCALLTYPE *SignalDataChanged)( + __x_ABI_CWindows_CStorage_CIApplicationData *This); + + HRESULT (STDMETHODCALLTYPE *RoamingStorageQuota)( + __x_ABI_CWindows_CStorage_CIApplicationData *This, + UINT64 *value); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIApplicationDataVtbl; + +interface __x_ABI_CWindows_CStorage_CIApplicationData { + CONST_VTBL __x_ABI_CWindows_CStorage_CIApplicationDataVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationData_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIApplicationData_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIApplicationData_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationData_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIApplicationData_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIApplicationData_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IApplicationData methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationData_get_Version(This,value) (This)->lpVtbl->get_Version(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationData_SetVersionAsync(This,desiredVersion,handler,setVersionOperation) (This)->lpVtbl->SetVersionAsync(This,desiredVersion,handler,setVersionOperation) +#define __x_ABI_CWindows_CStorage_CIApplicationData_ClearAllAsync(This,clearOperation) (This)->lpVtbl->ClearAllAsync(This,clearOperation) +#define __x_ABI_CWindows_CStorage_CIApplicationData_ClearAsync(This,locality,clearOperation) (This)->lpVtbl->ClearAsync(This,locality,clearOperation) +#define __x_ABI_CWindows_CStorage_CIApplicationData_get_LocalSettings(This,value) (This)->lpVtbl->get_LocalSettings(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationData_get_RoamingSettings(This,value) (This)->lpVtbl->get_RoamingSettings(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationData_get_LocalFolder(This,value) (This)->lpVtbl->get_LocalFolder(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationData_get_RoamingFolder(This,value) (This)->lpVtbl->get_RoamingFolder(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationData_get_TemporaryFolder(This,value) (This)->lpVtbl->get_TemporaryFolder(This,value) +#define __x_ABI_CWindows_CStorage_CIApplicationData_DataChanged(This,token) (This)->lpVtbl->DataChanged(This,token) +#define __x_ABI_CWindows_CStorage_CIApplicationData_SignalDataChanged(This) (This)->lpVtbl->SignalDataChanged(This) +#define __x_ABI_CWindows_CStorage_CIApplicationData_RoamingStorageQuota(This,value) (This)->lpVtbl->RoamingStorageQuota(This,value) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_QueryInterface(__x_ABI_CWindows_CStorage_CIApplicationData* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationData_AddRef(__x_ABI_CWindows_CStorage_CIApplicationData* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationData_Release(__x_ABI_CWindows_CStorage_CIApplicationData* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_GetIids(__x_ABI_CWindows_CStorage_CIApplicationData* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIApplicationData* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_GetTrustLevel(__x_ABI_CWindows_CStorage_CIApplicationData* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IApplicationData methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_get_Version(__x_ABI_CWindows_CStorage_CIApplicationData* This,int *value) { + return This->lpVtbl->get_Version(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_SetVersionAsync(__x_ABI_CWindows_CStorage_CIApplicationData* This,int desiredVersion,__x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler *handler,IInspectable **setVersionOperation) { + return This->lpVtbl->SetVersionAsync(This,desiredVersion,handler,setVersionOperation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_ClearAllAsync(__x_ABI_CWindows_CStorage_CIApplicationData* This,IInspectable **clearOperation) { + return This->lpVtbl->ClearAllAsync(This,clearOperation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_ClearAsync(__x_ABI_CWindows_CStorage_CIApplicationData* This,enum __x_ABI_CWindows_CStorage_CApplicationDataLocality locality,IInspectable **clearOperation) { + return This->lpVtbl->ClearAsync(This,locality,clearOperation); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_get_LocalSettings(__x_ABI_CWindows_CStorage_CIApplicationData* This,__x_ABI_CWindows_CStorage_CIApplicationDataContainer **value) { + return This->lpVtbl->get_LocalSettings(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_get_RoamingSettings(__x_ABI_CWindows_CStorage_CIApplicationData* This,__x_ABI_CWindows_CStorage_CIApplicationDataContainer **value) { + return This->lpVtbl->get_RoamingSettings(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_get_LocalFolder(__x_ABI_CWindows_CStorage_CIApplicationData* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_LocalFolder(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_get_RoamingFolder(__x_ABI_CWindows_CStorage_CIApplicationData* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_RoamingFolder(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_get_TemporaryFolder(__x_ABI_CWindows_CStorage_CIApplicationData* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_TemporaryFolder(This,value); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_DataChanged(__x_ABI_CWindows_CStorage_CIApplicationData* This,EventRegistrationToken token) { + return This->lpVtbl->DataChanged(This,token); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_SignalDataChanged(__x_ABI_CWindows_CStorage_CIApplicationData* This) { + return This->lpVtbl->SignalDataChanged(This); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData_RoamingStorageQuota(__x_ABI_CWindows_CStorage_CIApplicationData* This,UINT64 *value) { + return This->lpVtbl->RoamingStorageQuota(This,value); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IApplicationData IID___x_ABI_CWindows_CStorage_CIApplicationData +#define IApplicationDataVtbl __x_ABI_CWindows_CStorage_CIApplicationDataVtbl +#define IApplicationData __x_ABI_CWindows_CStorage_CIApplicationData +#define IApplicationData_QueryInterface __x_ABI_CWindows_CStorage_CIApplicationData_QueryInterface +#define IApplicationData_AddRef __x_ABI_CWindows_CStorage_CIApplicationData_AddRef +#define IApplicationData_Release __x_ABI_CWindows_CStorage_CIApplicationData_Release +#define IApplicationData_GetIids __x_ABI_CWindows_CStorage_CIApplicationData_GetIids +#define IApplicationData_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIApplicationData_GetRuntimeClassName +#define IApplicationData_GetTrustLevel __x_ABI_CWindows_CStorage_CIApplicationData_GetTrustLevel +#define IApplicationData_get_Version __x_ABI_CWindows_CStorage_CIApplicationData_get_Version +#define IApplicationData_SetVersionAsync __x_ABI_CWindows_CStorage_CIApplicationData_SetVersionAsync +#define IApplicationData_ClearAllAsync __x_ABI_CWindows_CStorage_CIApplicationData_ClearAllAsync +#define IApplicationData_ClearAsync __x_ABI_CWindows_CStorage_CIApplicationData_ClearAsync +#define IApplicationData_get_LocalSettings __x_ABI_CWindows_CStorage_CIApplicationData_get_LocalSettings +#define IApplicationData_get_RoamingSettings __x_ABI_CWindows_CStorage_CIApplicationData_get_RoamingSettings +#define IApplicationData_get_LocalFolder __x_ABI_CWindows_CStorage_CIApplicationData_get_LocalFolder +#define IApplicationData_get_RoamingFolder __x_ABI_CWindows_CStorage_CIApplicationData_get_RoamingFolder +#define IApplicationData_get_TemporaryFolder __x_ABI_CWindows_CStorage_CIApplicationData_get_TemporaryFolder +#define IApplicationData_DataChanged __x_ABI_CWindows_CStorage_CIApplicationData_DataChanged +#define IApplicationData_SignalDataChanged __x_ABI_CWindows_CStorage_CIApplicationData_SignalDataChanged +#define IApplicationData_RoamingStorageQuota __x_ABI_CWindows_CStorage_CIApplicationData_RoamingStorageQuota +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIApplicationData_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IApplicationData2 interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationData2_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationData2_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIApplicationData2, 0x9e65cd69, 0x0ba3, 0x4e32, 0xbe,0x29, 0xb0,0x2d,0xe6,0x60,0x76,0x38); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("9e65cd69-0ba3-4e32-be29-b02de6607638") + IApplicationData2 : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE get_LocalCacheFolder( + ABI::Windows::Storage::IStorageFolder **value) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIApplicationData2, 0x9e65cd69, 0x0ba3, 0x4e32, 0xbe,0x29, 0xb0,0x2d,0xe6,0x60,0x76,0x38) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIApplicationData2Vtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This, + TrustLevel *trustLevel); + + /*** IApplicationData2 methods ***/ + HRESULT (STDMETHODCALLTYPE *get_LocalCacheFolder)( + __x_ABI_CWindows_CStorage_CIApplicationData2 *This, + __x_ABI_CWindows_CStorage_CIStorageFolder **value); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIApplicationData2Vtbl; + +interface __x_ABI_CWindows_CStorage_CIApplicationData2 { + CONST_VTBL __x_ABI_CWindows_CStorage_CIApplicationData2Vtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationData2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIApplicationData2_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIApplicationData2_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationData2_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIApplicationData2_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIApplicationData2_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IApplicationData2 methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationData2_get_LocalCacheFolder(This,value) (This)->lpVtbl->get_LocalCacheFolder(This,value) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData2_QueryInterface(__x_ABI_CWindows_CStorage_CIApplicationData2* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationData2_AddRef(__x_ABI_CWindows_CStorage_CIApplicationData2* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationData2_Release(__x_ABI_CWindows_CStorage_CIApplicationData2* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData2_GetIids(__x_ABI_CWindows_CStorage_CIApplicationData2* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData2_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIApplicationData2* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData2_GetTrustLevel(__x_ABI_CWindows_CStorage_CIApplicationData2* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IApplicationData2 methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationData2_get_LocalCacheFolder(__x_ABI_CWindows_CStorage_CIApplicationData2* This,__x_ABI_CWindows_CStorage_CIStorageFolder **value) { + return This->lpVtbl->get_LocalCacheFolder(This,value); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IApplicationData2 IID___x_ABI_CWindows_CStorage_CIApplicationData2 +#define IApplicationData2Vtbl __x_ABI_CWindows_CStorage_CIApplicationData2Vtbl +#define IApplicationData2 __x_ABI_CWindows_CStorage_CIApplicationData2 +#define IApplicationData2_QueryInterface __x_ABI_CWindows_CStorage_CIApplicationData2_QueryInterface +#define IApplicationData2_AddRef __x_ABI_CWindows_CStorage_CIApplicationData2_AddRef +#define IApplicationData2_Release __x_ABI_CWindows_CStorage_CIApplicationData2_Release +#define IApplicationData2_GetIids __x_ABI_CWindows_CStorage_CIApplicationData2_GetIids +#define IApplicationData2_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIApplicationData2_GetRuntimeClassName +#define IApplicationData2_GetTrustLevel __x_ABI_CWindows_CStorage_CIApplicationData2_GetTrustLevel +#define IApplicationData2_get_LocalCacheFolder __x_ABI_CWindows_CStorage_CIApplicationData2_get_LocalCacheFolder +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIApplicationData2_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IApplicationDataStatics interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIApplicationDataStatics, 0x5612147b, 0xe843, 0x45e3, 0x94,0xd8, 0x06,0x16,0x9e,0x3c,0x8e,0x17); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("5612147b-e843-45e3-94d8-06169e3c8e17") + IApplicationDataStatics : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE get_Current( + ABI::Windows::Storage::IApplicationData **data) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIApplicationDataStatics, 0x5612147b, 0xe843, 0x45e3, 0x94,0xd8, 0x06,0x16,0x9e,0x3c,0x8e,0x17) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIApplicationDataStaticsVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This, + TrustLevel *trustLevel); + + /*** IApplicationDataStatics methods ***/ + HRESULT (STDMETHODCALLTYPE *get_Current)( + __x_ABI_CWindows_CStorage_CIApplicationDataStatics *This, + __x_ABI_CWindows_CStorage_CIApplicationData **data); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIApplicationDataStaticsVtbl; + +interface __x_ABI_CWindows_CStorage_CIApplicationDataStatics { + CONST_VTBL __x_ABI_CWindows_CStorage_CIApplicationDataStaticsVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** IApplicationDataStatics methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataStatics_get_Current(This,data) (This)->lpVtbl->get_Current(This,data) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataStatics_QueryInterface(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationDataStatics_AddRef(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationDataStatics_Release(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetIids(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetTrustLevel(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** IApplicationDataStatics methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataStatics_get_Current(__x_ABI_CWindows_CStorage_CIApplicationDataStatics* This,__x_ABI_CWindows_CStorage_CIApplicationData **data) { + return This->lpVtbl->get_Current(This,data); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IApplicationDataStatics IID___x_ABI_CWindows_CStorage_CIApplicationDataStatics +#define IApplicationDataStaticsVtbl __x_ABI_CWindows_CStorage_CIApplicationDataStaticsVtbl +#define IApplicationDataStatics __x_ABI_CWindows_CStorage_CIApplicationDataStatics +#define IApplicationDataStatics_QueryInterface __x_ABI_CWindows_CStorage_CIApplicationDataStatics_QueryInterface +#define IApplicationDataStatics_AddRef __x_ABI_CWindows_CStorage_CIApplicationDataStatics_AddRef +#define IApplicationDataStatics_Release __x_ABI_CWindows_CStorage_CIApplicationDataStatics_Release +#define IApplicationDataStatics_GetIids __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetIids +#define IApplicationDataStatics_GetRuntimeClassName __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetRuntimeClassName +#define IApplicationDataStatics_GetTrustLevel __x_ABI_CWindows_CStorage_CIApplicationDataStatics_GetTrustLevel +#define IApplicationDataStatics_get_Current __x_ABI_CWindows_CStorage_CIApplicationDataStatics_get_Current +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIApplicationDataStatics_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * IApplicationDataSetVersionHandler interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler, 0xa05791e6, 0xcc9f, 0x4687, 0xac,0xab, 0xa3,0x64,0xfd,0x78,0x54,0x63); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("a05791e6-cc9f-4687-acab-a364fd785463") + IApplicationDataSetVersionHandler : public IUnknown + { + virtual HRESULT STDMETHODCALLTYPE Invoke( + ABI::Windows::Storage::ISetVersionRequest *setVersionRequest) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler, 0xa05791e6, 0xcc9f, 0x4687, 0xac,0xab, 0xa3,0x64,0xfd,0x78,0x54,0x63) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandlerVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler *This); + + /*** IApplicationDataSetVersionHandler methods ***/ + HRESULT (STDMETHODCALLTYPE *Invoke)( + __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler *This, + __x_ABI_CWindows_CStorage_CISetVersionRequest *setVersionRequest); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandlerVtbl; + +interface __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler { + CONST_VTBL __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandlerVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_Release(This) (This)->lpVtbl->Release(This) +/*** IApplicationDataSetVersionHandler methods ***/ +#define __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_Invoke(This,setVersionRequest) (This)->lpVtbl->Invoke(This,setVersionRequest) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_QueryInterface(__x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_AddRef(__x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_Release(__x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler* This) { + return This->lpVtbl->Release(This); +} +/*** IApplicationDataSetVersionHandler methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_Invoke(__x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler* This,__x_ABI_CWindows_CStorage_CISetVersionRequest *setVersionRequest) { + return This->lpVtbl->Invoke(This,setVersionRequest); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_IApplicationDataSetVersionHandler IID___x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler +#define IApplicationDataSetVersionHandlerVtbl __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandlerVtbl +#define IApplicationDataSetVersionHandler __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler +#define IApplicationDataSetVersionHandler_QueryInterface __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_QueryInterface +#define IApplicationDataSetVersionHandler_AddRef __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_AddRef +#define IApplicationDataSetVersionHandler_Release __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_Release +#define IApplicationDataSetVersionHandler_Invoke __x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_Invoke +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CIApplicationDataSetVersionHandler_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISetVersionRequest interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CISetVersionRequest_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CISetVersionRequest_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CISetVersionRequest, 0xb9c76b9b, 0x1056, 0x4e69, 0x83,0x30, 0x16,0x26,0x19,0x95,0x6f,0x9b); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("b9c76b9b-1056-4e69-8330-162619956f9b") + ISetVersionRequest : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE get_CurrentVersion( + UINT32 *currentVersion) = 0; + + virtual HRESULT STDMETHODCALLTYPE get_DesiredVersion( + UINT32 *desiredVersion) = 0; + + virtual HRESULT STDMETHODCALLTYPE GetDeferral( + ABI::Windows::Storage::ISetVersionDeferral **deferral) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CISetVersionRequest, 0xb9c76b9b, 0x1056, 0x4e69, 0x83,0x30, 0x16,0x26,0x19,0x95,0x6f,0x9b) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CISetVersionRequestVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + TrustLevel *trustLevel); + + /*** ISetVersionRequest methods ***/ + HRESULT (STDMETHODCALLTYPE *get_CurrentVersion)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + UINT32 *currentVersion); + + HRESULT (STDMETHODCALLTYPE *get_DesiredVersion)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + UINT32 *desiredVersion); + + HRESULT (STDMETHODCALLTYPE *GetDeferral)( + __x_ABI_CWindows_CStorage_CISetVersionRequest *This, + __x_ABI_CWindows_CStorage_CISetVersionDeferral **deferral); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CISetVersionRequestVtbl; + +interface __x_ABI_CWindows_CStorage_CISetVersionRequest { + CONST_VTBL __x_ABI_CWindows_CStorage_CISetVersionRequestVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** ISetVersionRequest methods ***/ +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_get_CurrentVersion(This,currentVersion) (This)->lpVtbl->get_CurrentVersion(This,currentVersion) +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_get_DesiredVersion(This,desiredVersion) (This)->lpVtbl->get_DesiredVersion(This,desiredVersion) +#define __x_ABI_CWindows_CStorage_CISetVersionRequest_GetDeferral(This,deferral) (This)->lpVtbl->GetDeferral(This,deferral) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_QueryInterface(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CISetVersionRequest_AddRef(__x_ABI_CWindows_CStorage_CISetVersionRequest* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CISetVersionRequest_Release(__x_ABI_CWindows_CStorage_CISetVersionRequest* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_GetIids(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_GetTrustLevel(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** ISetVersionRequest methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_get_CurrentVersion(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,UINT32 *currentVersion) { + return This->lpVtbl->get_CurrentVersion(This,currentVersion); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_get_DesiredVersion(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,UINT32 *desiredVersion) { + return This->lpVtbl->get_DesiredVersion(This,desiredVersion); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionRequest_GetDeferral(__x_ABI_CWindows_CStorage_CISetVersionRequest* This,__x_ABI_CWindows_CStorage_CISetVersionDeferral **deferral) { + return This->lpVtbl->GetDeferral(This,deferral); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_ISetVersionRequest IID___x_ABI_CWindows_CStorage_CISetVersionRequest +#define ISetVersionRequestVtbl __x_ABI_CWindows_CStorage_CISetVersionRequestVtbl +#define ISetVersionRequest __x_ABI_CWindows_CStorage_CISetVersionRequest +#define ISetVersionRequest_QueryInterface __x_ABI_CWindows_CStorage_CISetVersionRequest_QueryInterface +#define ISetVersionRequest_AddRef __x_ABI_CWindows_CStorage_CISetVersionRequest_AddRef +#define ISetVersionRequest_Release __x_ABI_CWindows_CStorage_CISetVersionRequest_Release +#define ISetVersionRequest_GetIids __x_ABI_CWindows_CStorage_CISetVersionRequest_GetIids +#define ISetVersionRequest_GetRuntimeClassName __x_ABI_CWindows_CStorage_CISetVersionRequest_GetRuntimeClassName +#define ISetVersionRequest_GetTrustLevel __x_ABI_CWindows_CStorage_CISetVersionRequest_GetTrustLevel +#define ISetVersionRequest_get_CurrentVersion __x_ABI_CWindows_CStorage_CISetVersionRequest_get_CurrentVersion +#define ISetVersionRequest_get_DesiredVersion __x_ABI_CWindows_CStorage_CISetVersionRequest_get_DesiredVersion +#define ISetVersionRequest_GetDeferral __x_ABI_CWindows_CStorage_CISetVersionRequest_GetDeferral +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CISetVersionRequest_INTERFACE_DEFINED__ */ + +/***************************************************************************** + * ISetVersionDeferral interface + */ +#ifndef ____x_ABI_CWindows_CStorage_CISetVersionDeferral_INTERFACE_DEFINED__ +#define ____x_ABI_CWindows_CStorage_CISetVersionDeferral_INTERFACE_DEFINED__ + +DEFINE_GUID(IID___x_ABI_CWindows_CStorage_CISetVersionDeferral, 0x033508a2, 0x781a, 0x437a, 0xb0,0x78, 0x3f,0x32,0xba,0xdc,0xfe,0x47); +#if defined(__cplusplus) && !defined(CINTERFACE) +} /* extern "C" */ +namespace ABI { + namespace Windows { + namespace Storage { + MIDL_INTERFACE("033508a2-781a-437a-b078-3f32badcfe47") + ISetVersionDeferral : public IInspectable + { + virtual HRESULT STDMETHODCALLTYPE Complete( + ) = 0; + + }; + } + } +} +extern "C" { +#ifdef __CRT_UUID_DECL +__CRT_UUID_DECL(__x_ABI_CWindows_CStorage_CISetVersionDeferral, 0x033508a2, 0x781a, 0x437a, 0xb0,0x78, 0x3f,0x32,0xba,0xdc,0xfe,0x47) +#endif +#else +typedef struct __x_ABI_CWindows_CStorage_CISetVersionDeferralVtbl { + BEGIN_INTERFACE + + /*** IUnknown methods ***/ + HRESULT (STDMETHODCALLTYPE *QueryInterface)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This, + REFIID riid, + void **ppvObject); + + ULONG (STDMETHODCALLTYPE *AddRef)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This); + + ULONG (STDMETHODCALLTYPE *Release)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This); + + /*** IInspectable methods ***/ + HRESULT (STDMETHODCALLTYPE *GetIids)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This, + ULONG *iidCount, + IID **iids); + + HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This, + HSTRING *className); + + HRESULT (STDMETHODCALLTYPE *GetTrustLevel)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This, + TrustLevel *trustLevel); + + /*** ISetVersionDeferral methods ***/ + HRESULT (STDMETHODCALLTYPE *Complete)( + __x_ABI_CWindows_CStorage_CISetVersionDeferral *This); + + END_INTERFACE +} __x_ABI_CWindows_CStorage_CISetVersionDeferralVtbl; + +interface __x_ABI_CWindows_CStorage_CISetVersionDeferral { + CONST_VTBL __x_ABI_CWindows_CStorage_CISetVersionDeferralVtbl* lpVtbl; +}; + +#ifdef COBJMACROS +#ifndef WIDL_C_INLINE_WRAPPERS +/*** IUnknown methods ***/ +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject) +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_AddRef(This) (This)->lpVtbl->AddRef(This) +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_Release(This) (This)->lpVtbl->Release(This) +/*** IInspectable methods ***/ +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids) +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className) +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel) +/*** ISetVersionDeferral methods ***/ +#define __x_ABI_CWindows_CStorage_CISetVersionDeferral_Complete(This) (This)->lpVtbl->Complete(This) +#else +/*** IUnknown methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionDeferral_QueryInterface(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This,REFIID riid,void **ppvObject) { + return This->lpVtbl->QueryInterface(This,riid,ppvObject); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CISetVersionDeferral_AddRef(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This) { + return This->lpVtbl->AddRef(This); +} +static __WIDL_INLINE ULONG __x_ABI_CWindows_CStorage_CISetVersionDeferral_Release(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This) { + return This->lpVtbl->Release(This); +} +/*** IInspectable methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetIids(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This,ULONG *iidCount,IID **iids) { + return This->lpVtbl->GetIids(This,iidCount,iids); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetRuntimeClassName(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This,HSTRING *className) { + return This->lpVtbl->GetRuntimeClassName(This,className); +} +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetTrustLevel(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This,TrustLevel *trustLevel) { + return This->lpVtbl->GetTrustLevel(This,trustLevel); +} +/*** ISetVersionDeferral methods ***/ +static __WIDL_INLINE HRESULT __x_ABI_CWindows_CStorage_CISetVersionDeferral_Complete(__x_ABI_CWindows_CStorage_CISetVersionDeferral* This) { + return This->lpVtbl->Complete(This); +} +#endif +#ifdef WIDL_using_Windows_Storage +#define IID_ISetVersionDeferral IID___x_ABI_CWindows_CStorage_CISetVersionDeferral +#define ISetVersionDeferralVtbl __x_ABI_CWindows_CStorage_CISetVersionDeferralVtbl +#define ISetVersionDeferral __x_ABI_CWindows_CStorage_CISetVersionDeferral +#define ISetVersionDeferral_QueryInterface __x_ABI_CWindows_CStorage_CISetVersionDeferral_QueryInterface +#define ISetVersionDeferral_AddRef __x_ABI_CWindows_CStorage_CISetVersionDeferral_AddRef +#define ISetVersionDeferral_Release __x_ABI_CWindows_CStorage_CISetVersionDeferral_Release +#define ISetVersionDeferral_GetIids __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetIids +#define ISetVersionDeferral_GetRuntimeClassName __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetRuntimeClassName +#define ISetVersionDeferral_GetTrustLevel __x_ABI_CWindows_CStorage_CISetVersionDeferral_GetTrustLevel +#define ISetVersionDeferral_Complete __x_ABI_CWindows_CStorage_CISetVersionDeferral_Complete +#endif /* WIDL_using_Windows_Storage */ +#endif + +#endif + +#endif /* ____x_ABI_CWindows_CStorage_CISetVersionDeferral_INTERFACE_DEFINED__ */ /* Begin additional prototypes for all interfaces */ +ULONG __RPC_USER HSTRING_UserSize (ULONG *, ULONG, HSTRING *); +unsigned char * __RPC_USER HSTRING_UserMarshal (ULONG *, unsigned char *, HSTRING *); +unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, HSTRING *); +void __RPC_USER HSTRING_UserFree (ULONG *, HSTRING *); /* End additional prototypes */ diff --git a/mingw-w64-headers/include/windows.storage.idl b/mingw-w64-headers/include/windows.storage.idl index de918ddc1..b247ceda4 100644 --- a/mingw-w64-headers/include/windows.storage.idl +++ b/mingw-w64-headers/include/windows.storage.idl @@ -1,39 +1,185 @@ -/* - * Copyright 2023 Hans Leidekker for CodeWeavers - * - * This library is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation; either - * version 2.1 of the License, or (at your option) any later version. - * - * This library is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this library; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA +/** + * This file has no copyright assigned and is placed in the Public Domain. + * This file is part of the mingw-w64 runtime package. + * No warranty is given; refer to the file DISCLAIMER.PD within this package. */ #ifdef __WIDL__ #pragma winrt ns_prefix #endif +import "inspectable.idl"; +import "eventtoken.idl"; import "windows.foundation.idl"; -namespace Windows.Storage { - interface IStorageFolder; - interface IStorageFolderStatics; +namespace Windows { + namespace Foundation { + interface IAsyncAction; + //struct EventRegistrationToken; - runtimeclass StorageFolder; - - [ - contract(Windows.Foundation.UniversalApiContract, 1.0), - static(Windows.Storage.IStorageFolderStatics, Windows.Foundation.UniversalApiContract, 1.0) - ] - runtimeclass StorageFolder - { - [default] interface Windows.Storage.IStorageFolder; + namespace Collections { + interface IPropertySet; } + } + namespace Storage { + interface IStorageItem; + interface IStorageFolder; + interface IApplicationData; + interface IApplicationDataStatics; + interface IApplicationDataSetVersionHandler; + interface ApplicationDataContainer; + // delegate ApplicationDataSetVersionHandler; + interface ISetVersionRequest; + interface ISetVersionDeferral; + typedef enum StorageDeleteOption StorageDeleteOption; + typedef enum NameCollisionOption NameCollisionOption; + typedef enum StorageItemTypes StorageItemTypes; + typedef enum ApplicationDataLocality ApplicationDataLocality; + typedef enum ApplicationDataCreateDisposition ApplicationDataCreateDisposition; + typedef enum FileAttributes FileAttributes; + typedef enum CreationCollisionOption CreationCollisionOption; + } +} + +namespace Windows { + namespace Storage { + enum NameCollisionOption { + GenerateUniqueName, + ReplaceExisting, + FailIfExists + }; + + enum StorageDeleteOption { + Default, + PermanentDelete + }; + + enum StorageItemTypes { + None, + File, + Folder + }; + + enum ApplicationDataCreateDisposition { + Always, + Existing + }; + + enum ApplicationDataLocality { + Local, + Roaming, + Temporary + }; + + enum FileAttributes { + Normal, + ReadOnly, + Directory, + Archive, + Temporary + }; + + enum CreationCollisionOption { + GenerateUniqueName, + ReplaceExisting, + FailIfExists, + OpenIfExists + }; + + [uuid(4207A996-CA2F-42F7-BDE8-8B10457A7F30)] + interface IStorageItem : IInspectable + { + HRESULT RenameAsyncOverloadDefaultOptions(HSTRING desiredName, /*IAsyncAction*/ IInspectable** action); + HRESULT RenameAsync(HSTRING desiredName, NameCollisionOption option, /*IAsyncAction*/ IInspectable** action); + HRESULT DeleteAsyncOverloadDefaultOptions(/*IAsyncAction*/ IInspectable** action); + HRESULT DeleteAsync(StorageDeleteOption option, /*IAsyncAction*/ IInspectable** action); + HRESULT GetBasicPropertiesAsync(/*IAsyncOperation*/ IInspectable** action); + [propget] HRESULT Name(HSTRING *value); + [propget] HRESULT Path(HSTRING *value); + [propget] HRESULT Attributes(FileAttributes* value); + [propget] HRESULT DateCreated(Windows.Foundation.DateTime* value); + HRESULT IsOfType(StorageItemTypes itemType, boolean* value); + } + + [uuid(5A2A7520-4802-452D-9AD9-4351ADA7EC35)] + interface IKnownFoldersStatics : IInspectable + { + [propget] HRESULT MusicLibrary(IStorageFolder** value); + [propget] HRESULT PicturesLibrary(IStorageFolder** value); + [propget] HRESULT VideosLibrary(IStorageFolder** value); + [propget] HRESULT DocumentsLibrary(IStorageFolder** value); + [propget] HRESULT HomeGroup(IStorageFolder** value); + [propget] HRESULT RemovableDevices(IStorageFolder** value); + [propget] HRESULT MediaServerDevices(IStorageFolder** value); + } + + [uuid(72D1CB78-B3EF-4F75-A80B-6FD9DAE2944B)] + interface IStorageFolder : IInspectable + { + HRESULT CreateFileAsyncOverloadDefaultOptions(HSTRING desiredName, /*IAsyncOperation*/IInspectable** operation); + HRESULT CreateFileAsync(HSTRING desiredName, CreationCollisionOption options, /*IAsyncOperation*/IInspectable** operation); + HRESULT CreateFolderAsyncOverloadDefaultOptions(HSTRING desiredName, /*IAsyncOperation*/IInspectable** operation); + HRESULT CreateFolderAsync(HSTRING desiredName, CreationCollisionOption options, /*IAsyncOperation*/IInspectable** operation); + HRESULT GetFileAsync(HSTRING name, /*IAsyncOperation*/IInspectable** operation); + HRESULT GetFolderAsync(HSTRING name, /*IAsyncOperation*/IInspectable** operation); + HRESULT GetItemAsync(HSTRING name, /*IAsyncOperation*/IInspectable** operation); + HRESULT GetFilesAsyncOverloadDefaultOptionsStartAndCount(/*IAsyncOperation*>*/IInspectable** operation); + HRESULT GetFoldersAsyncOverloadDefaultOptionsStartAndCount(/*IAsyncOperation*>*/IInspectable** operation); + HRESULT GetItemsAsyncOverloadDefaultStartAndCount(/*IAsyncOperation*>*/IInspectable** operation); + } + + [uuid(C5AEFD1E-F467-40BA-8566-AB640A441E1D)] + interface IApplicationDataContainer : IInspectable { + [propget] HRESULT Name(HSTRING* value); + [propget] HRESULT Locality(ApplicationDataLocality* value); + [propget] HRESULT Values(/*IPropertySet*/IInspectable** value); + [propget] HRESULT Containers(/*IMapView*/IInspectable** value); + HRESULT CreateContainer(HSTRING name, ApplicationDataCreateDisposition disposition, IApplicationDataContainer** container); + HRESULT DeleteContainer([in] HSTRING name); + } + + [uuid(C3DA6FB7-B744-4B45-B0B8-223A0938D0DC)] + interface IApplicationData : IInspectable { + [propget] HRESULT Version(int* value); + HRESULT SetVersionAsync(int desiredVersion, IApplicationDataSetVersionHandler* handler, /*IAsyncAction*/ IInspectable** setVersionOperation); + HRESULT ClearAllAsync(/*IAsyncAction*/ IInspectable** clearOperation); + HRESULT ClearAsync(ApplicationDataLocality locality, /*IAsyncAction*/ IInspectable** clearOperation); + [propget] HRESULT LocalSettings(IApplicationDataContainer** value); + [propget] HRESULT RoamingSettings(IApplicationDataContainer** value); + [propget] HRESULT LocalFolder(IStorageFolder** value); + [propget] HRESULT RoamingFolder(IStorageFolder** value); + [propget] HRESULT TemporaryFolder(IStorageFolder** value); + // [eventadd] HRESULT DataChanged(/*TypedEventHandler*/IInspectable* handler, EventRegistrationToken* token); + /* [eventremove] */ HRESULT DataChanged(Windows.Foundation.EventRegistrationToken token); + HRESULT SignalDataChanged(); + HRESULT RoamingStorageQuota(UINT64* value); + } + + [uuid(9E65CD69-0BA3-4E32-BE29-B02DE6607638)] + interface IApplicationData2 : IInspectable { + [propget] HRESULT LocalCacheFolder(IStorageFolder** value); + } + + [uuid(5612147B-E843-45E3-94D8-06169E3C8E17)] + interface IApplicationDataStatics : IInspectable { + [propget] HRESULT Current(IApplicationData** data); + } + + [uuid(A05791E6-CC9F-4687-ACAB-A364FD785463)] + interface IApplicationDataSetVersionHandler : IUnknown { + HRESULT Invoke(ISetVersionRequest* setVersionRequest); + } + + [uuid(B9C76B9B-1056-4E69-8330-162619956F9B)] + interface ISetVersionRequest : IInspectable { + [propget] HRESULT CurrentVersion(UINT32* currentVersion); + [propget] HRESULT DesiredVersion(UINT32* desiredVersion); + HRESULT GetDeferral(ISetVersionDeferral** deferral); + } + + [uuid(033508A2-781A-437A-B078-3F32BADCFE47)] + interface ISetVersionDeferral : IInspectable { + HRESULT Complete(); + } + } } diff --git a/mingw-w64-headers/include/windows.system.h b/mingw-w64-headers/include/windows.system.h index 5c1ca47a8..ae9fbe150 100644 --- a/mingw-w64-headers/include/windows.system.h +++ b/mingw-w64-headers/include/windows.system.h @@ -291,10 +291,6 @@ extern "C" { typedef enum __x_ABI_CWindows_CSystem_CDispatcherQueuePriority __x_ABI_CWindows_CSystem_CDispatcherQueuePriority; #endif /* __cplusplus */ -#ifndef __cplusplus -typedef enum __x_ABI_CWindows_CSystem_CProcessorArchitecture __x_ABI_CWindows_CSystem_CProcessorArchitecture; -#endif /* __cplusplus */ - #ifndef ____x_ABI_CWindows_CSystem_CIDispatcherQueue_FWD_DEFINED__ #define ____x_ABI_CWindows_CSystem_CIDispatcherQueue_FWD_DEFINED__ typedef interface __x_ABI_CWindows_CSystem_CIDispatcherQueue __x_ABI_CWindows_CSystem_CIDispatcherQueue; @@ -487,49 +483,6 @@ enum __x_ABI_CWindows_CSystem_CDispatcherQueuePriority { #endif #endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x50000 */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 -#ifdef __cplusplus -} /* extern "C" */ -namespace ABI { - namespace Windows { - namespace System { - enum ProcessorArchitecture { - ProcessorArchitecture_X86 = 0, - ProcessorArchitecture_Arm = 5, - ProcessorArchitecture_X64 = 9, - ProcessorArchitecture_Neutral = 11, -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 - ProcessorArchitecture_Arm64 = 12, -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 - ProcessorArchitecture_X86OnArm64 = 14, -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */ - ProcessorArchitecture_Unknown = 65535 - }; - } - } -} -extern "C" { -#else -enum __x_ABI_CWindows_CSystem_CProcessorArchitecture { - ProcessorArchitecture_X86 = 0, - ProcessorArchitecture_Arm = 5, - ProcessorArchitecture_X64 = 9, - ProcessorArchitecture_Neutral = 11, -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 - ProcessorArchitecture_Arm64 = 12, -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */ -#if WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 - ProcessorArchitecture_X86OnArm64 = 14, -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x80000 */ - ProcessorArchitecture_Unknown = 65535 -}; -#ifdef WIDL_using_Windows_System -#define ProcessorArchitecture __x_ABI_CWindows_CSystem_CProcessorArchitecture -#endif /* WIDL_using_Windows_System */ -#endif - -#endif /* WINDOWS_FOUNDATION_UNIVERSALAPICONTRACT_VERSION >= 0x10000 */ /***************************************************************************** * IDispatcherQueueHandler interface */ diff --git a/mingw-w64-headers/include/windows.system.idl b/mingw-w64-headers/include/windows.system.idl index 84e7e2bae..5ba5c3f86 100644 --- a/mingw-w64-headers/include/windows.system.idl +++ b/mingw-w64-headers/include/windows.system.idl @@ -29,7 +29,6 @@ import "windows.foundation.idl"; namespace Windows.System { typedef enum DispatcherQueuePriority DispatcherQueuePriority; - typedef enum ProcessorArchitecture ProcessorArchitecture; interface IDispatcherQueue; interface IDispatcherQueue2; @@ -67,22 +66,6 @@ namespace Windows.System High = 10, }; - [ - contract(Windows.Foundation.UniversalApiContract, 1.0) - ] - enum ProcessorArchitecture - { - X86 = 0, - Arm = 5, - X64 = 9, - Neutral = 11, - [contract(Windows.Foundation.UniversalApiContract, 8.0)] - Arm64 = 12, - [contract(Windows.Foundation.UniversalApiContract, 8.0)] - X86OnArm64 = 14, - Unknown = 65535 - }; - [ contract(Windows.Foundation.UniversalApiContract, 5.0), uuid(dfa2dc9c-1a2d-4917-98f2-939af1d6e0c8) diff --git a/mingw-w64-headers/tlb/oleacc.dll.tlb b/mingw-w64-headers/tlb/oleacc.dll.tlb index 19ee7ba3b..9166397e2 100644 Binary files a/mingw-w64-headers/tlb/oleacc.dll.tlb and b/mingw-w64-headers/tlb/oleacc.dll.tlb differ diff --git a/mingw-w64-headers/tlb/stdole2.tlb b/mingw-w64-headers/tlb/stdole2.tlb index ff2fe2229..98002e815 100644 Binary files a/mingw-w64-headers/tlb/stdole2.tlb and b/mingw-w64-headers/tlb/stdole2.tlb differ