----------------------------------------
-- Microsoft DirectX Ada binding lib --
-- File : D2D1.ads --
-- Translator:Dongfeng.Gu,2018/10/31 --
-- Mail: [email protected] --
-- Progress:100% --
----------------------------------------
with win32; use win32;
with win32.Winerror;
with win32.winnt; use win32.winnt;
with win32.windef; use win32.windef;
with win32.Wingdi; use win32.Wingdi;
with win32.Objbase; use win32.Objbase;
with win32.rpcdce; use win32.rpcdce;
with Interfaces.C;
with audiodefs; use audiodefs;
with D2DBaseTypes; use D2DBaseTypes;
with DXGIFormat; use DXGIFormat;
with DXGI; use DXGI;
with DWrite; use DWrite;
with wincodec; use wincodec;
package D2D1 is
subtype UINT32 is win32.UINT;
subtype LPUINT32 is win32.PUINT;
type LPCWCHAR is access constant win32.WCHAR;
type LPCFloat is access constant FLOAT;
type ID2D1Geometry;
type LPID2D1Geometry is access all ID2D1Geometry;
type LPLPID2D1Geometry is access all LPID2D1Geometry;
subtype LPD2D1Geometry is LPID2D1Geometry;
subtype LPLPD2D1Geometry is LPLPID2D1Geometry;
type ID2D1Brush;
type LPID2D1Brush is access all ID2D1Brush;
type LPLPID2D1Brush is access all LPID2D1Brush;
subtype LPD2D1Brush is LPID2D1Brush;
subtype LPLPD2D1Brush is LPLPID2D1Brush;
type ID2D1Resource;
type LPID2D1Resource is access all ID2D1Resource;
type LPLPID2D1Resource is access all LPID2D1Resource;
subtype LPD2D1Resource is LPID2D1Resource;
subtype LPLPD2D1Resource is LPLPID2D1Resource;
type ID2D1Factory;
type LPID2D1Factory is access all ID2D1Factory;
type LPLPID2D1Factory is access all LPID2D1Factory;
subtype LPD2D1Factory is LPID2D1Factory;
subtype LPLPD2D1Factory is LPLPID2D1Factory;
type ID2D1Bitmap;
type LPID2D1Bitmap is access all ID2D1Bitmap;
type LPLPID2D1Bitmap is access all LPID2D1Bitmap;
subtype LPD2D1Bitmap is LPID2D1Bitmap;
subtype LPLPD2D1Bitmap is LPLPID2D1Bitmap;
type ID2D1RenderTarget;
type LPID2D1RenderTarget is access all ID2D1RenderTarget;
type LPLPID2D1RenderTarget is access all LPID2D1RenderTarget;
subtype LPD2D1RenderTarget is LPID2D1RenderTarget;
subtype LPLPD2D1RenderTarget is LPLPID2D1RenderTarget;
type ID2D1GradientStopCollection;
type LPID2D1GradientStopCollection is access all ID2D1GradientStopCollection;
type LPLPID2D1GradientStopCollection is access all LPID2D1GradientStopCollection;
subtype LPD2D1GradientStopCollection is LPID2D1GradientStopCollection;
subtype LPLPD2D1GradientStopCollection is LPLPID2D1GradientStopCollection;
type ID2D1BitmapBrush;
type LPID2D1BitmapBrush is access all ID2D1BitmapBrush;
type LPLPID2D1BitmapBrush is access all LPID2D1BitmapBrush;
subtype LPD2D1BitmapBrush is LPID2D1BitmapBrush;
subtype LPLPD2D1BitmapBrush is LPLPID2D1BitmapBrush;
type ID2D1SolidColorBrush;
type LPID2D1SolidColorBrush is access all ID2D1SolidColorBrush;
type LPLPID2D1SolidColorBrush is access all LPID2D1SolidColorBrush;
subtype LPD2D1SolidColorBrush is LPID2D1SolidColorBrush;
subtype LPLPD2D1SolidColorBrush is LPLPID2D1SolidColorBrush;
type ID2D1LinearGradientBrush;
type LPID2D1LinearGradientBrush is access all ID2D1LinearGradientBrush;
type LPLPID2D1LinearGradientBrush is access all LPID2D1LinearGradientBrush;
subtype LPD2D1LinearGradientBrush is LPID2D1LinearGradientBrush;
subtype LPLPD2D1LinearGradientBrush is LPLPID2D1LinearGradientBrush;
type ID2D1RadialGradientBrush;
type LPID2D1RadialGradientBrush is access all ID2D1RadialGradientBrush;
type LPLPID2D1RadialGradientBrush is access all LPID2D1RadialGradientBrush;
subtype LPD2D1RadialGradientBrush is LPID2D1RadialGradientBrush;
subtype LPLPD2D1RadialGradientBrush is LPLPID2D1RadialGradientBrush;
type ID2D1StrokeStyle;
type LPID2D1StrokeStyle is access all ID2D1StrokeStyle;
type LPLPID2D1StrokeStyle is access all LPID2D1StrokeStyle;
subtype LPD2D1StrokeStyle is LPID2D1StrokeStyle;
subtype LPLPD2D1StrokeStyle is LPLPID2D1StrokeStyle;
type ID2D1SimplifiedGeometrySink;
type LPID2D1SimplifiedGeometrySink is access all ID2D1SimplifiedGeometrySink;
type LPLPID2D1SimplifiedGeometrySink is access all LPID2D1SimplifiedGeometrySink;
subtype LPD2D1SimplifiedGeometrySink is LPID2D1SimplifiedGeometrySink;
subtype LPLPD2D1SimplifiedGeometrySink is LPLPID2D1SimplifiedGeometrySink;
type ID2D1TessellationSink;
type LPID2D1TessellationSink is access all ID2D1TessellationSink;
type LPLPID2D1TessellationSink is access all LPID2D1TessellationSink;
subtype LPD2D1TessellationSink is LPID2D1TessellationSink;
subtype LPLPD2D1TessellationSink is LPLPID2D1TessellationSink;
type ID2D1RectangleGeometry;
type LPID2D1RectangleGeometry is access all ID2D1RectangleGeometry;
type LPLPID2D1RectangleGeometry is access all LPID2D1RectangleGeometry;
subtype LPD2D1RectangleGeometry is LPID2D1RectangleGeometry;
subtype LPLPD2D1RectangleGeometry is LPLPID2D1RectangleGeometry;
type ID2D1RoundedRectangleGeometry;
type LPID2D1RoundedRectangleGeometry is access all ID2D1RoundedRectangleGeometry;
type LPLPID2D1RoundedRectangleGeometry is access all LPID2D1RoundedRectangleGeometry;
subtype LPD2D1RoundedRectangleGeometry is LPID2D1RoundedRectangleGeometry;
subtype LPLPD2D1RoundedRectangleGeometry is LPLPID2D1RoundedRectangleGeometry;
type ID2D1EllipseGeometry;
type LPID2D1EllipseGeometry is access all ID2D1EllipseGeometry;
type LPLPID2D1EllipseGeometry is access all LPID2D1EllipseGeometry;
subtype LPD2D1EllipseGeometry is LPID2D1EllipseGeometry;
subtype LPLPD2D1EllipseGeometry is LPLPID2D1EllipseGeometry;
type ID2D1GeometryGroup;
type LPID2D1GeometryGroup is access all ID2D1GeometryGroup;
type LPLPID2D1GeometryGroup is access all LPID2D1GeometryGroup;
subtype LPD2D1GeometryGroup is LPID2D1GeometryGroup;
subtype LPLPD2D1GeometryGroup is LPLPID2D1GeometryGroup;
type ID2D1TransformedGeometry;
type LPID2D1TransformedGeometry is access all ID2D1TransformedGeometry;
type LPLPID2D1TransformedGeometry is access all LPID2D1TransformedGeometry;
subtype LPD2D1TransformedGeometry is LPID2D1TransformedGeometry;
subtype LPLPD2D1TransformedGeometry is LPLPID2D1TransformedGeometry;
type ID2D1GeometrySink;
type LPID2D1GeometrySink is access all ID2D1GeometrySink;
type LPLPID2D1GeometrySink is access all LPID2D1GeometrySink;
subtype LPD2D1GeometrySink is LPID2D1GeometrySink;
subtype LPLPD2D1GeometrySink is LPLPID2D1GeometrySink;
type ID2D1PathGeometry;
type LPID2D1PathGeometry is access all ID2D1PathGeometry;
type LPLPID2D1PathGeometry is access all LPID2D1PathGeometry;
subtype LPD2D1PathGeometry is LPID2D1PathGeometry;
subtype LPLPD2D1PathGeometry is LPLPID2D1PathGeometry;
type ID2D1Mesh;
type LPID2D1Mesh is access all ID2D1Mesh;
type LPLPID2D1Mesh is access all LPID2D1Mesh;
subtype LPD2D1Mesh is LPID2D1Mesh;
subtype LPLPD2D1Mesh is LPLPID2D1Mesh;
type ID2D1Layer;
type LPID2D1Layer is access all ID2D1Layer;
type LPLPID2D1Layer is access all LPID2D1Layer;
subtype LPD2D1Layer is LPID2D1Layer;
subtype LPLPD2D1Layer is LPLPID2D1Layer;
type ID2D1DrawingStateBlock;
type LPID2D1DrawingStateBlock is access all ID2D1DrawingStateBlock;
type LPLPID2D1DrawingStateBlock is access all LPID2D1DrawingStateBlock;
subtype LPD2D1DrawingStateBlock is LPID2D1DrawingStateBlock;
subtype LPLPD2D1DrawingStateBlock is LPLPID2D1DrawingStateBlock;
type ID2D1BitmapRenderTarget;
type LPID2D1BitmapRenderTarget is access all ID2D1BitmapRenderTarget;
type LPLPID2D1BitmapRenderTarget is access all LPID2D1BitmapRenderTarget;
subtype LPD2D1BitmapRenderTarget is LPID2D1BitmapRenderTarget;
subtype LPLPD2D1BitmapRenderTarget is LPLPID2D1BitmapRenderTarget;
type ID2D1HwndRenderTarget;
type LPID2D1HwndRenderTarget is access all ID2D1HwndRenderTarget;
type LPLPID2D1HwndRenderTarget is access all LPID2D1HwndRenderTarget;
subtype LPD2D1HwndRenderTarget is LPID2D1HwndRenderTarget;
subtype LPLPD2D1HwndRenderTarget is LPLPID2D1HwndRenderTarget;
type ID2D1GdiInteropRenderTarget;
type LPID2D1GdiInteropRenderTarget is access all ID2D1GdiInteropRenderTarget;
type LPLPID2D1GdiInteropRenderTarget is access all LPID2D1GdiInteropRenderTarget;
subtype LPD2D1GdiInteropRenderTarget is LPID2D1GdiInteropRenderTarget;
subtype LPLPD2D1GdiInteropRenderTarget is LPLPID2D1GdiInteropRenderTarget;
type ID2D1DCRenderTarget;
type LPID2D1DCRenderTarget is access all ID2D1DCRenderTarget;
type LPLPID2D1DCRenderTarget is access all LPID2D1DCRenderTarget;
subtype LPD2D1DCRenderTarget is LPID2D1DCRenderTarget;
subtype LPLPD2D1DCRenderTarget is LPLPID2D1DCRenderTarget;
D2D1_INVALID_TAG : constant := ULONGLONG'Last;
D2D1_DEFAULT_FLATTENING_TOLERANCE : constant := (0.25);
type D2D1_ALPHA_MODE is (D2D1_ALPHA_MODE_UNKNOWN,
D2D1_ALPHA_MODE_PREMULTIPLIED,
D2D1_ALPHA_MODE_STRAIGHT,
D2D1_ALPHA_MODE_IGNORE,
D2D1_ALPHA_MODE_FORCE_DWORD);
for D2D1_ALPHA_MODE use (D2D1_ALPHA_MODE_UNKNOWN=>0,
D2D1_ALPHA_MODE_PREMULTIPLIED=>1,
D2D1_ALPHA_MODE_STRAIGHT=>2,
D2D1_ALPHA_MODE_IGNORE=>3,
D2D1_ALPHA_MODE_FORCE_DWORD=>16#ffffffff#);
type D2D1_GAMMA is (D2D1_GAMMA_2_2,
D2D1_GAMMA_1_0,
D2D1_GAMMA_FORCE_DWORD);
for D2D1_GAMMA use (D2D1_GAMMA_2_2=>0,
D2D1_GAMMA_1_0=>1,
D2D1_GAMMA_FORCE_DWORD=>16#ffffffff#);
type D2D1_OPACITY_MASK_CONTENT is (D2D1_OPACITY_MASK_CONTENT_GRAPHICS,
D2D1_OPACITY_MASK_CONTENT_TEXT_NATURAL,
D2D1_OPACITY_MASK_CONTENT_TEXT_GDI_COMPATIBLE,
D2D1_OPACITY_MASK_CONTENT_FORCE_DWORD);
for D2D1_OPACITY_MASK_CONTENT use (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=>16#ffffffff#);
type D2D1_EXTEND_MODE is (D2D1_EXTEND_MODE_CLAMP,
D2D1_EXTEND_MODE_WRAP,
D2D1_EXTEND_MODE_MIRROR,
D2D1_EXTEND_MODE_FORCE_DWORD);
for D2D1_EXTEND_MODE use (D2D1_EXTEND_MODE_CLAMP=>0,
D2D1_EXTEND_MODE_WRAP=>1,
D2D1_EXTEND_MODE_MIRROR=>2,
D2D1_EXTEND_MODE_FORCE_DWORD=>16#ffffffff#);
type D2D1_ANTIALIAS_MODE is (D2D1_ANTIALIAS_MODE_PER_PRIMITIVE,
D2D1_ANTIALIAS_MODE_ALIASED,
D2D1_ANTIALIAS_MODE_FORCE_DWORD);
for D2D1_ANTIALIAS_MODE use (D2D1_ANTIALIAS_MODE_PER_PRIMITIVE=>0,
D2D1_ANTIALIAS_MODE_ALIASED=>1,
D2D1_ANTIALIAS_MODE_FORCE_DWORD=>16#ffffffff#);
type D2D1_TEXT_ANTIALIAS_MODE is (D2D1_TEXT_ANTIALIAS_MODE_DEFAULT,
D2D1_TEXT_ANTIALIAS_MODE_CLEARTYPE,
D2D1_TEXT_ANTIALIAS_MODE_GRAYSCALE,
D2D1_TEXT_ANTIALIAS_MODE_ALIASED,
D2D1_TEXT_ANTIALIAS_MODE_FORCE_DWORD);
for D2D1_TEXT_ANTIALIAS_MODE use (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=>16#ffffffff#);
type D2D1_BITMAP_INTERPOLATION_MODE is (D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR,
D2D1_BITMAP_INTERPOLATION_MODE_LINEAR,
D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD);
for D2D1_BITMAP_INTERPOLATION_MODE use (D2D1_BITMAP_INTERPOLATION_MODE_NEAREST_NEIGHBOR=>0,
D2D1_BITMAP_INTERPOLATION_MODE_LINEAR=>1,
D2D1_BITMAP_INTERPOLATION_MODE_FORCE_DWORD=>16#ffffffff#);
type D2D1_DRAW_TEXT_OPTIONS is (D2D1_DRAW_TEXT_OPTIONS_NONE,
D2D1_DRAW_TEXT_OPTIONS_NO_SNAP,
D2D1_DRAW_TEXT_OPTIONS_CLIP,
D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD);
for D2D1_DRAW_TEXT_OPTIONS use (D2D1_DRAW_TEXT_OPTIONS_NONE=>16#00000000#,
D2D1_DRAW_TEXT_OPTIONS_NO_SNAP=>16#00000001#,
D2D1_DRAW_TEXT_OPTIONS_CLIP=>16#00000002#,
D2D1_DRAW_TEXT_OPTIONS_FORCE_DWORD=>16#ffffffff#);
type D2D1_PIXEL_FORMAT is record
format: DXGI_FORMAT;
alphaMode: D2D1_ALPHA_MODE;
end record;
type LPD2D1_PIXEL_FORMAT is access all D2D1_PIXEL_FORMAT;
type LPCD2D1_PIXEL_FORMAT is access constant D2D1_PIXEL_FORMAT;
subtype D2D1_POINT_2U is D2D_POINT_2U;
subtype D2D1_POINT_2F is D2D_POINT_2F;
subtype D2D1_RECT_F is D2D_RECT_F;
subtype D2D1_RECT_U is D2D_RECT_U;
subtype D2D1_SIZE_F is D2D_SIZE_F;
subtype D2D1_SIZE_U is D2D_SIZE_U;
subtype D2D1_COLOR_F is D2D_COLOR_F;
subtype D2D1_MATRIX_3X2_F is D2D_MATRIX_3X2_F;
subtype D2D1_TAG is win32.UINT64;
type LPD2D1_TAG is access all D2D1_TAG;
type LPD2D1_MATRIX_3X2_F is access all D2D1_MATRIX_3X2_F;
type LPCD2D1_MATRIX_3X2_F is access constant D2D1_MATRIX_3X2_F;
type LPD2D1_COLOR_F is access all D2D1_COLOR_F;
type LPCD2D1_COLOR_F is access constant D2D1_COLOR_F;
type LPD2D1_RECT_F is access all D2D1_RECT_F;
type LPCD2D1_RECT_F is access constant D2D1_RECT_F;
type LPD2D1_POINT_2F is access all D2D1_POINT_2F;
type LPCD2D1_POINT_2F is access constant D2D1_POINT_2F;
type LPCD2D1_SIZE_F is access constant D2D1_SIZE_F;
type LPCD2D1_SIZE_U is access constant D2D1_SIZE_U;
type D2D1_BITMAP_PROPERTIES is record
pixelFormat: D2D1_PIXEL_FORMAT;
dpiX: FLOAT;
dpiY: FLOAT;
end record;
type LPD2D1_BITMAP_PROPERTIES is access all D2D1_BITMAP_PROPERTIES;
type LPCD2D1_BITMAP_PROPERTIES is access constant D2D1_BITMAP_PROPERTIES;
type D2D1_GRADIENT_STOP is record
position: FLOAT;
color: D2D1_COLOR_F;
end record;
type LPD2D1_GRADIENT_STOP is access all D2D1_GRADIENT_STOP;
type LPCD2D1_GRADIENT_STOP is access constant D2D1_GRADIENT_STOP;
type D2D1_BRUSH_PROPERTIES is record
opacity: FLOAT;
transform: D2D1_MATRIX_3X2_F;
end record;
type LPD2D1_BRUSH_PROPERTIES is access all D2D1_BRUSH_PROPERTIES;
type LPCD2D1_BRUSH_PROPERTIES is access constant D2D1_BRUSH_PROPERTIES;
type D2D1_BITMAP_BRUSH_PROPERTIES is record
extendModeX: D2D1_EXTEND_MODE;
extendModeY: D2D1_EXTEND_MODE;
interpolationMode: D2D1_BITMAP_INTERPOLATION_MODE;
end record;
type LPD2D1_BITMAP_BRUSH_PROPERTIES is access all D2D1_BITMAP_BRUSH_PROPERTIES;
type LPCD2D1_BITMAP_BRUSH_PROPERTIES is access constant D2D1_BITMAP_BRUSH_PROPERTIES;
type D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES is record
startPoint: D2D1_POINT_2F;
endPoint: D2D1_POINT_2F;
end record;
type LPD2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES is access all D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;
type LPCD2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES is access constant D2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;
type D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES is record
center: D2D1_POINT_2F;
gradientOriginOffset: D2D1_POINT_2F;
radiusX: FLOAT;
radiusY: FLOAT;
end record;
type LPD2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES is access all D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;
type LPCD2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES is access constant D2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;
type D2D1_ARC_SIZE is (D2D1_ARC_SIZE_SMALL,
D2D1_ARC_SIZE_LARGE,
D2D1_ARC_SIZE_FORCE_DWORD);
for D2D1_ARC_SIZE use (D2D1_ARC_SIZE_SMALL=>0,
D2D1_ARC_SIZE_LARGE=>1,
D2D1_ARC_SIZE_FORCE_DWORD=>16#ffffffff#);
type D2D1_CAP_STYLE is (D2D1_CAP_STYLE_FLAT,
D2D1_CAP_STYLE_SQUARE,
D2D1_CAP_STYLE_ROUND,
D2D1_CAP_STYLE_TRIANGLE,
D2D1_CAP_STYLE_FORCE_DWORD);
for D2D1_CAP_STYLE use (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=>16#ffffffff#);
type D2D1_DASH_STYLE is (D2D1_DASH_STYLE_SOLID,
D2D1_DASH_STYLE_DASH,
D2D1_DASH_STYLE_DOT,
D2D1_DASH_STYLE_DASH_DOT,
D2D1_DASH_STYLE_DASH_DOT_DOT,
D2D1_DASH_STYLE_CUSTOM,
D2D1_DASH_STYLE_FORCE_DWORD);
for D2D1_DASH_STYLE use (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=>16#ffffffff#);
type D2D1_LINE_JOIN is (D2D1_LINE_JOIN_MITER,
D2D1_LINE_JOIN_BEVEL,
D2D1_LINE_JOIN_ROUND,
D2D1_LINE_JOIN_MITER_OR_BEVEL,
D2D1_LINE_JOIN_FORCE_DWORD);
for D2D1_LINE_JOIN use (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=>16#ffffffff#);
type D2D1_COMBINE_MODE is (D2D1_COMBINE_MODE_UNION,
D2D1_COMBINE_MODE_INTERSECT,
D2D1_COMBINE_MODE_XOR,
D2D1_COMBINE_MODE_EXCLUDE,
D2D1_COMBINE_MODE_FORCE_DWORD);
for D2D1_COMBINE_MODE use (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=>16#ffffffff#);
type D2D1_GEOMETRY_RELATION is (D2D1_GEOMETRY_RELATION_UNKNOWN,
D2D1_GEOMETRY_RELATION_DISJOINT,
D2D1_GEOMETRY_RELATION_IS_CONTAINED,
D2D1_GEOMETRY_RELATION_CONTAINS,
D2D1_GEOMETRY_RELATION_OVERLAP,
D2D1_GEOMETRY_RELATION_FORCE_DWORD);
for D2D1_GEOMETRY_RELATION use (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=>16#ffffffff#);
type LPD2D1_GEOMETRY_RELATION is access all D2D1_GEOMETRY_RELATION;
type D2D1_GEOMETRY_SIMPLIFICATION_OPTION is (D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES,
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES,
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD);
for D2D1_GEOMETRY_SIMPLIFICATION_OPTION use (D2D1_GEOMETRY_SIMPLIFICATION_OPTION_CUBICS_AND_LINES=>0,
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_LINES=>1,
D2D1_GEOMETRY_SIMPLIFICATION_OPTION_FORCE_DWORD=>16#ffffffff#);
type D2D1_FIGURE_BEGIN is (D2D1_FIGURE_BEGIN_FILLED,
D2D1_FIGURE_BEGIN_HOLLOW,
D2D1_FIGURE_BEGIN_FORCE_DWORD);
for D2D1_FIGURE_BEGIN use (D2D1_FIGURE_BEGIN_FILLED=>0,
D2D1_FIGURE_BEGIN_HOLLOW=>1,
D2D1_FIGURE_BEGIN_FORCE_DWORD=>16#ffffffff#);
type D2D1_FIGURE_END is (D2D1_FIGURE_END_OPEN,
D2D1_FIGURE_END_CLOSED,
D2D1_FIGURE_END_FORCE_DWORD);
for D2D1_FIGURE_END use (D2D1_FIGURE_END_OPEN=>0,
D2D1_FIGURE_END_CLOSED=>1,
D2D1_FIGURE_END_FORCE_DWORD=>16#ffffffff#);
type D2D1_BEZIER_SEGMENT is record
point1: D2D1_POINT_2F;
point2: D2D1_POINT_2F;
point3: D2D1_POINT_2F;
end record;
type LPD2D1_BEZIER_SEGMENT is access all D2D1_BEZIER_SEGMENT;
type LPCD2D1_BEZIER_SEGMENT is access constant D2D1_BEZIER_SEGMENT;
type D2D1_TRIANGLE is record
point1: D2D1_POINT_2F;
point2: D2D1_POINT_2F;
point3: D2D1_POINT_2F;
end record;
type LPD2D1_TRIANGLE is access all D2D1_TRIANGLE;
type LPCD2D1_TRIANGLE is access constant D2D1_TRIANGLE;
type D2D1_PATH_SEGMENT is (D2D1_PATH_SEGMENT_NONE,
D2D1_PATH_SEGMENT_FORCE_UNSTROKED,
D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN,
D2D1_PATH_SEGMENT_FORCE_DWORD);
for D2D1_PATH_SEGMENT use (D2D1_PATH_SEGMENT_NONE=>16#00000000#,
D2D1_PATH_SEGMENT_FORCE_UNSTROKED=>16#00000001#,
D2D1_PATH_SEGMENT_FORCE_ROUND_LINE_JOIN=>16#00000002#,
D2D1_PATH_SEGMENT_FORCE_DWORD=>16#ffffffff#);
type D2D1_SWEEP_DIRECTION is (D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE,
D2D1_SWEEP_DIRECTION_CLOCKWISE,
D2D1_SWEEP_DIRECTION_FORCE_DWORD);
for D2D1_SWEEP_DIRECTION use (D2D1_SWEEP_DIRECTION_COUNTER_CLOCKWISE=>0,
D2D1_SWEEP_DIRECTION_CLOCKWISE=>1,
D2D1_SWEEP_DIRECTION_FORCE_DWORD=>16#ffffffff#);
type D2D1_FILL_MODE is (D2D1_FILL_MODE_ALTERNATE,
D2D1_FILL_MODE_WINDING,
D2D1_FILL_MODE_FORCE_DWORD);
for D2D1_FILL_MODE use (D2D1_FILL_MODE_ALTERNATE=>0,
D2D1_FILL_MODE_WINDING=>1,
D2D1_FILL_MODE_FORCE_DWORD=>16#ffffffff#);
type D2D1_ARC_SEGMENT is record
point: D2D1_POINT_2F;
size: D2D1_SIZE_F;
rotationAngle: FLOAT;
sweepDirection: D2D1_SWEEP_DIRECTION;
arcSize: D2D1_ARC_SIZE;
end record;
type LPD2D1_ARC_SEGMENT is access all D2D1_ARC_SEGMENT;
type LPCD2D1_ARC_SEGMENT is access constant D2D1_ARC_SEGMENT;
type D2D1_QUADRATIC_BEZIER_SEGMENT is record
point1: D2D1_POINT_2F;
point2: D2D1_POINT_2F;
end record;
type LPD2D1_QUADRATIC_BEZIER_SEGMENT is access all D2D1_QUADRATIC_BEZIER_SEGMENT;
type LPCD2D1_QUADRATIC_BEZIER_SEGMENT is access constant D2D1_QUADRATIC_BEZIER_SEGMENT;
type D2D1_ELLIPSE is record
point: D2D1_POINT_2F;
radiusX: FLOAT;
radiusY: FLOAT;
end record;
type LPD2D1_ELLIPSE is access all D2D1_ELLIPSE;
type LPCD2D1_ELLIPSE is access constant D2D1_ELLIPSE;
type D2D1_ROUNDED_RECT is record
rect: D2D1_RECT_F;
radiusX: FLOAT;
radiusY: FLOAT;
end record;
type LPD2D1_ROUNDED_RECT is access all D2D1_ROUNDED_RECT;
type LPCD2D1_ROUNDED_RECT is access constant D2D1_ROUNDED_RECT;
type D2D1_STROKE_STYLE_PROPERTIES is record
startCap: D2D1_CAP_STYLE;
endCap: D2D1_CAP_STYLE;
dashCap: D2D1_CAP_STYLE;
lineJoin: D2D1_LINE_JOIN;
miterLimit: FLOAT;
dashStyle: D2D1_DASH_STYLE;
dashOffset: FLOAT;
end record;
type LPD2D1_STROKE_STYLE_PROPERTIES is access all D2D1_STROKE_STYLE_PROPERTIES;
type LPCD2D1_STROKE_STYLE_PROPERTIES is access constant D2D1_STROKE_STYLE_PROPERTIES;
type D2D1_LAYER_OPTIONS is (D2D1_LAYER_OPTIONS_NONE,
D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE,
D2D1_LAYER_OPTIONS_FORCE_DWORD);
for D2D1_LAYER_OPTIONS use (D2D1_LAYER_OPTIONS_NONE=>16#00000000#,
D2D1_LAYER_OPTIONS_INITIALIZE_FOR_CLEARTYPE=>16#00000001#,
D2D1_LAYER_OPTIONS_FORCE_DWORD=>16#ffffffff#);
type D2D1_LAYER_PARAMETERS is record
contentBounds: D2D1_RECT_F;
geometricMask:LPID2D1Geometry;
maskAntialiasMode: D2D1_ANTIALIAS_MODE;
maskTransform: D2D1_MATRIX_3X2_F;
opacity: FLOAT;
opacityBrush:LPID2D1Brush;
layerOptions: D2D1_LAYER_OPTIONS;
end record;
type LPD2D1_LAYER_PARAMETERS is access all D2D1_LAYER_PARAMETERS;
type LPCD2D1_LAYER_PARAMETERS is access constant D2D1_LAYER_PARAMETERS;
type D2D1_WINDOW_STATE is (D2D1_WINDOW_STATE_NONE,
D2D1_WINDOW_STATE_OCCLUDED,
D2D1_WINDOW_STATE_FORCE_DWORD);
for D2D1_WINDOW_STATE use (D2D1_WINDOW_STATE_NONE=>16#0000000#,
D2D1_WINDOW_STATE_OCCLUDED=>16#0000001#,
D2D1_WINDOW_STATE_FORCE_DWORD=>16#ffffffff#);
--function DEFINE_ENUM_FLAG_OPERATORS(:D2D1_RENDER_TARGET_USAGE) return DEFINE_ENUM_FLAG_OPERATORS with Import,Convention=>stdcall,external_name=>"DEFINE_ENUM_FLAG_OPERATORS";
type D2D1_RENDER_TARGET_TYPE is (D2D1_RENDER_TARGET_TYPE_DEFAULT,
D2D1_RENDER_TARGET_TYPE_SOFTWARE,
D2D1_RENDER_TARGET_TYPE_HARDWARE,
D2D1_RENDER_TARGET_TYPE_FORCE_DWORD);
for D2D1_RENDER_TARGET_TYPE use (D2D1_RENDER_TARGET_TYPE_DEFAULT=>0,
D2D1_RENDER_TARGET_TYPE_SOFTWARE=>1,
D2D1_RENDER_TARGET_TYPE_HARDWARE=>2,
D2D1_RENDER_TARGET_TYPE_FORCE_DWORD=>16#ffffffff#);
type D2D1_FEATURE_LEVEL is (D2D1_FEATURE_LEVEL_DEFAULT,
D2D1_FEATURE_LEVEL_9,
D2D1_FEATURE_LEVEL_10,
D2D1_FEATURE_LEVEL_FORCE_DWORD);
for D2D1_FEATURE_LEVEL use (D2D1_FEATURE_LEVEL_DEFAULT=>0,
D2D1_FEATURE_LEVEL_9=>16#9100#,
D2D1_FEATURE_LEVEL_10=>16#a000#,
D2D1_FEATURE_LEVEL_FORCE_DWORD=>16#ffffffff#);
type D2D1_RENDER_TARGET_USAGE is (D2D1_RENDER_TARGET_USAGE_NONE,
D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING,
D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE,
D2D1_RENDER_TARGET_USAGE_FORCE_DWORD);
for D2D1_RENDER_TARGET_USAGE use (D2D1_RENDER_TARGET_USAGE_NONE=>16#00000000#,
D2D1_RENDER_TARGET_USAGE_FORCE_BITMAP_REMOTING=>16#00000001#,
D2D1_RENDER_TARGET_USAGE_GDI_COMPATIBLE=>16#00000002#,
D2D1_RENDER_TARGET_USAGE_FORCE_DWORD=>16#ffffffff#);
--function DEFINE_ENUM_FLAG_OPERATORS(:D2D1_PRESENT_OPTIONS) return DEFINE_ENUM_FLAG_OPERATORS with Import,Convention=>stdcall,external_name=>"DEFINE_ENUM_FLAG_OPERATORS";
type D2D1_PRESENT_OPTIONS is (D2D1_PRESENT_OPTIONS_NONE,
D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS,
D2D1_PRESENT_OPTIONS_IMMEDIATELY,
D2D1_PRESENT_OPTIONS_FORCE_DWORD);
for D2D1_PRESENT_OPTIONS use (D2D1_PRESENT_OPTIONS_NONE=>16#00000000#,
D2D1_PRESENT_OPTIONS_RETAIN_CONTENTS=>16#00000001#,
D2D1_PRESENT_OPTIONS_IMMEDIATELY=>16#00000002#,
D2D1_PRESENT_OPTIONS_FORCE_DWORD=>16#ffffffff#);
--function STDMETHOD(:QueryInterface) return DEFINE_ENUM_FLAG_OPERATORS with Import,Convention=>stdcall,external_name=>"STDMETHOD";
type D2D1_RENDER_TARGET_PROPERTIES is record
typ: D2D1_RENDER_TARGET_TYPE;
pixelFormat: D2D1_PIXEL_FORMAT;
dpiX: FLOAT;
dpiY: FLOAT;
usage: D2D1_RENDER_TARGET_USAGE;
minLevel: D2D1_FEATURE_LEVEL;
end record;
type LPD2D1_RENDER_TARGET_PROPERTIES is access all D2D1_RENDER_TARGET_PROPERTIES;
type LPCD2D1_RENDER_TARGET_PROPERTIES is access constant D2D1_RENDER_TARGET_PROPERTIES;
type D2D1_HWND_RENDER_TARGET_PROPERTIES is record
hwnd: windef.HWND;
pixelSize: D2D1_SIZE_U;
presentOptions: D2D1_PRESENT_OPTIONS;
end record;
type LPD2D1_HWND_RENDER_TARGET_PROPERTIES is access all D2D1_HWND_RENDER_TARGET_PROPERTIES;
type LPCD2D1_HWND_RENDER_TARGET_PROPERTIES is access constant D2D1_HWND_RENDER_TARGET_PROPERTIES;
type D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS is (D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE,
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE,
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD);
for D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS use (D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_NONE=>16#00000000#,
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_GDI_COMPATIBLE=>16#00000001#,
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS_FORCE_DWORD=>16#ffffffff#);
type D2D1_DRAWING_STATE_DESCRIPTION is record
antialiasMode: D2D1_ANTIALIAS_MODE;
textAntialiasMode: D2D1_TEXT_ANTIALIAS_MODE;
tag1: D2D1_TAG;
tag2: D2D1_TAG;
transform: D2D1_MATRIX_3X2_F;
end record;
type LPD2D1_DRAWING_STATE_DESCRIPTION is access all D2D1_DRAWING_STATE_DESCRIPTION;
type LPCD2D1_DRAWING_STATE_DESCRIPTION is access constant D2D1_DRAWING_STATE_DESCRIPTION;
type D2D1_DC_INITIALIZE_MODE is (D2D1_DC_INITIALIZE_MODE_COPY,
D2D1_DC_INITIALIZE_MODE_CLEAR,
D2D1_DC_INITIALIZE_MODE_FORCE_DWORD);
for D2D1_DC_INITIALIZE_MODE use (D2D1_DC_INITIALIZE_MODE_COPY=>0,
D2D1_DC_INITIALIZE_MODE_CLEAR=>1,
D2D1_DC_INITIALIZE_MODE_FORCE_DWORD=>16#ffffffff#);
type D2D1_DEBUG_LEVEL is (D2D1_DEBUG_LEVEL_NONE,
D2D1_DEBUG_LEVEL_ERROR,
D2D1_DEBUG_LEVEL_WARNING,
D2D1_DEBUG_LEVEL_INFORMATION,
D2D1_DEBUG_LEVEL_FORCE_DWORD);
for D2D1_DEBUG_LEVEL use (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=>16#ffffffff#);
type D2D1_FACTORY_TYPE is (D2D1_FACTORY_TYPE_SINGLE_THREADED,
D2D1_FACTORY_TYPE_MULTI_THREADED,
D2D1_FACTORY_TYPE_FORCE_DWORD);
for D2D1_FACTORY_TYPE use (D2D1_FACTORY_TYPE_SINGLE_THREADED=>0,
D2D1_FACTORY_TYPE_MULTI_THREADED=>1,
D2D1_FACTORY_TYPE_FORCE_DWORD=>16#ffffffff#);
type D2D1_FACTORY_OPTIONS is record
debugLevel: D2D1_DEBUG_LEVEL;
end record;
type LPCD2D1_POINT_2U is access constant D2D1_POINT_2U;
type LPCD2D1_RECT_U is access constant D2D1_RECT_U;
IID_ID2D1Resource : constant GUID:=uuidof("2cd90691-12e2-11dc-9fed-001143a055f9");
type ID2D1Resource is record
QueryInterface:access function(THIS:LPID2D1Resource;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Resource) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Resource) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1Resource;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
end record;
IID_ID2D1Bitmap : constant GUID:=uuidof("a2296057-ea42-4099-983b-539fb6505426");
type ID2D1Bitmap is record
QueryInterface:access function(THIS:LPID2D1Bitmap;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Bitmap) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Bitmap) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1Bitmap;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetSize:access function(THIS:LPID2D1Bitmap) return D2D1_SIZE_F with Convention=>Stdcall;
GetPixelSize:access function(THIS:LPID2D1Bitmap) return D2D1_SIZE_U with Convention=>Stdcall;
GetPixelFormat:access function(THIS:LPID2D1Bitmap) return D2D1_PIXEL_FORMAT with Convention=>Stdcall;
GetDpi:access function(THIS:LPID2D1Bitmap;dpiX:LPFLOAT;dpiY:LPFLOAT) return void with Convention=>Stdcall;
CopyFromBitmap:access function(THIS:LPID2D1Bitmap;destPoint:LPCD2D1_POINT_2U;bitmap:LPID2D1Bitmap;srcRect:LPCD2D1_RECT_U) return HRESULT with Convention=>Stdcall;
CopyFromRenderTarget:access function(THIS:LPID2D1Bitmap;destPoint:LPCD2D1_POINT_2U;renderTarget:LPID2D1RenderTarget;srcRect:LPCD2D1_RECT_U) return HRESULT with Convention=>Stdcall;
CopyFromMemory:access function(THIS:LPID2D1Bitmap;dstRect:LPCD2D1_RECT_U;srcData:LPCvoid;pitch:UINT32) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1GradientStopCollection : constant GUID:=uuidof("2cd906a7-12e2-11dc-9fed-001143a055f9");
type ID2D1GradientStopCollection is record
QueryInterface:access function(THIS:LPID2D1GradientStopCollection;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1GradientStopCollection) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1GradientStopCollection) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1GradientStopCollection;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetGradientStopCount:access function(THIS:LPID2D1GradientStopCollection) return UINT32 with Convention=>Stdcall;
GetGradientStops:access function(THIS:LPID2D1GradientStopCollection;gradientStops:LPD2D1_GRADIENT_STOP;gradientStopsCount:UINT) return void with Convention=>Stdcall;
GetColorInterpolationGamma:access function(THIS:LPID2D1GradientStopCollection) return D2D1_GAMMA with Convention=>Stdcall;
GetExtendMode:access function(THIS:LPID2D1GradientStopCollection) return D2D1_EXTEND_MODE with Convention=>Stdcall;
end record;
IID_ID2D1Brush : constant GUID:=uuidof("2cd906a8-12e2-11dc-9fed-001143a055f9");
type ID2D1Brush is record
QueryInterface:access function(THIS:LPID2D1Brush;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Brush) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Brush) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1Brush;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
SetOpacity:access function(THIS:LPID2D1Brush;opacity:FLOAT) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1Brush;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetOpacity:access function(THIS:LPID2D1Brush) return FLOAT with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1Brush;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
end record;
IID_ID2D1BitmapBrush : constant GUID:=uuidof("2cd906aa-12e2-11dc-9fed-001143a055f9");
type ID2D1BitmapBrush is record
QueryInterface:access function(THIS:LPID2D1BitmapBrush;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1BitmapBrush) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1BitmapBrush) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1BitmapBrush;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
SetOpacity:access function(THIS:LPID2D1BitmapBrush;opacity:FLOAT) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1BitmapBrush;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetOpacity:access function(THIS:LPID2D1BitmapBrush) return FLOAT with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1BitmapBrush;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetExtendModeX:access function(THIS:LPID2D1BitmapBrush;extendModeX:D2D1_EXTEND_MODE) return void with Convention=>Stdcall;
SetExtendModeY:access function(THIS:LPID2D1BitmapBrush;extendModeY:D2D1_EXTEND_MODE) return void with Convention=>Stdcall;
SetInterpolationMode:access function(THIS:LPID2D1BitmapBrush;interpolationMode:D2D1_BITMAP_INTERPOLATION_MODE) return void with Convention=>Stdcall;
SetBitmap:access function(THIS:LPID2D1BitmapBrush;bitmap:LPID2D1Bitmap) return void with Convention=>Stdcall;
GetExtendModeX:access function(THIS:LPID2D1BitmapBrush) return D2D1_EXTEND_MODE with Convention=>Stdcall;
GetExtendModeY:access function(THIS:LPID2D1BitmapBrush) return D2D1_EXTEND_MODE with Convention=>Stdcall;
GetInterpolationMode:access function(THIS:LPID2D1BitmapBrush) return D2D1_BITMAP_INTERPOLATION_MODE with Convention=>Stdcall;
GetBitmap:access function(THIS:LPID2D1BitmapBrush;bitmap:LPLPID2D1Bitmap) return void with Convention=>Stdcall;
end record;
IID_ID2D1SolidColorBrush : constant GUID:=uuidof("2cd906a9-12e2-11dc-9fed-001143a055f9");
type ID2D1SolidColorBrush is record
QueryInterface:access function(THIS:LPID2D1SolidColorBrush;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1SolidColorBrush) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1SolidColorBrush) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1SolidColorBrush;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
SetOpacity:access function(THIS:LPID2D1SolidColorBrush;opacity:FLOAT) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1SolidColorBrush;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetOpacity:access function(THIS:LPID2D1SolidColorBrush) return FLOAT with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1SolidColorBrush;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetColor:access function(THIS:LPID2D1SolidColorBrush;color:LPCD2D1_COLOR_F) return void with Convention=>Stdcall;
GetColor:access function(THIS:LPID2D1SolidColorBrush) return D2D1_COLOR_F with Convention=>Stdcall;
end record;
IID_ID2D1LinearGradientBrush : constant GUID:=uuidof("2cd906ab-12e2-11dc-9fed-001143a055f9");
type ID2D1LinearGradientBrush is record
QueryInterface:access function(THIS:LPID2D1LinearGradientBrush;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1LinearGradientBrush) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1LinearGradientBrush) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1LinearGradientBrush;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
SetOpacity:access function(THIS:LPID2D1LinearGradientBrush;opacity:FLOAT) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1LinearGradientBrush;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetOpacity:access function(THIS:LPID2D1LinearGradientBrush) return FLOAT with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1LinearGradientBrush;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetStartPoint:access function(THIS:LPID2D1LinearGradientBrush;startPoint:D2D1_POINT_2F) return void with Convention=>Stdcall;
SetEndPoint:access function(THIS:LPID2D1LinearGradientBrush;endPoint:D2D1_POINT_2F) return void with Convention=>Stdcall;
GetStartPoint:access function(THIS:LPID2D1LinearGradientBrush) return D2D1_POINT_2F with Convention=>Stdcall;
GetEndPoint:access function(THIS:LPID2D1LinearGradientBrush) return D2D1_POINT_2F with Convention=>Stdcall;
GetGradientStopCollection:access function(THIS:LPID2D1LinearGradientBrush;gradientStopCollection:LPLPID2D1GradientStopCollection) return void with Convention=>Stdcall;
end record;
IID_ID2D1RadialGradientBrush : constant GUID:=uuidof("2cd906ac-12e2-11dc-9fed-001143a055f9");
type ID2D1RadialGradientBrush is record
QueryInterface:access function(THIS:LPID2D1RadialGradientBrush;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1RadialGradientBrush) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1RadialGradientBrush) return ULONG with Convention=>Stdcall;
GetFactory:access function(THIS:LPID2D1RadialGradientBrush;factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
SetOpacity:access function(THIS:LPID2D1RadialGradientBrush;opacity:FLOAT) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1RadialGradientBrush;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetOpacity:access function(THIS:LPID2D1RadialGradientBrush) return FLOAT with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1RadialGradientBrush;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetCenter:access function(THIS:LPID2D1RadialGradientBrush;center:D2D1_POINT_2F) return void with Convention=>Stdcall;
SetGradientOriginOffset:access function(THIS:LPID2D1RadialGradientBrush;gradientOriginOffset:D2D1_POINT_2F) return void with Convention=>Stdcall;
SetRadiusX:access function(THIS:LPID2D1RadialGradientBrush;radiusX:FLOAT) return void with Convention=>Stdcall;
SetRadiusY:access function(THIS:LPID2D1RadialGradientBrush;radiusY:FLOAT) return void with Convention=>Stdcall;
GetCenter:access function(THIS:LPID2D1RadialGradientBrush) return D2D1_POINT_2F with Convention=>Stdcall;
GetGradientOriginOffset:access function(THIS:LPID2D1RadialGradientBrush) return D2D1_POINT_2F with Convention=>Stdcall;
GetRadiusX:access function(THIS:LPID2D1RadialGradientBrush) return FLOAT with Convention=>Stdcall;
GetRadiusY:access function(THIS:LPID2D1RadialGradientBrush) return FLOAT with Convention=>Stdcall;
GetGradientStopCollection:access function(THIS:LPID2D1RadialGradientBrush;gradientStopCollection:LPLPID2D1GradientStopCollection) return void with Convention=>Stdcall;
end record;
IID_ID2D1StrokeStyle : constant GUID:=uuidof("2cd9069d-12e2-11dc-9fed-001143a055f9");
type ID2D1StrokeStyle is record
QueryInterface:access function(THIS:LPID2D1StrokeStyle;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1StrokeStyle) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1StrokeStyle) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetStartCap:access function(THIS:LPID2D1StrokeStyle) return D2D1_CAP_STYLE with Convention=>Stdcall;
GetEndCap:access function(THIS:LPID2D1StrokeStyle) return D2D1_CAP_STYLE with Convention=>Stdcall;
GetDashCap:access function(THIS:LPID2D1StrokeStyle) return D2D1_CAP_STYLE with Convention=>Stdcall;
GetMiterLimit:access function(THIS:LPID2D1StrokeStyle) return FLOAT with Convention=>Stdcall;
GetLineJoin:access function(THIS:LPID2D1StrokeStyle) return D2D1_LINE_JOIN with Convention=>Stdcall;
GetDashOffset:access function(THIS:LPID2D1StrokeStyle) return FLOAT with Convention=>Stdcall;
GetDashStyle:access function(THIS:LPID2D1StrokeStyle) return D2D1_DASH_STYLE with Convention=>Stdcall;
GetDashesCount:access function(THIS:LPID2D1StrokeStyle) return UINT32 with Convention=>Stdcall;
GetDashes:access function(THIS:LPID2D1StrokeStyle;dashes:LPFLOAT;dashesCount:UINT) return void with Convention=>Stdcall;
end record;
IID_ID2D1Geometry : constant GUID:=uuidof("2cd906a1-12e2-11dc-9fed-001143a055f9");
type ID2D1Geometry is record
QueryInterface:access function(THIS:LPID2D1Geometry;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Geometry) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Geometry) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1Geometry;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1Geometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1Geometry;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1Geometry;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1Geometry;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1Geometry;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1Geometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1Geometry;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1Geometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1Geometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1Geometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1Geometry;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1Geometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1RectangleGeometry : constant GUID:=uuidof("2cd906a2-12e2-11dc-9fed-001143a055f9");
type ID2D1RectangleGeometry is record
QueryInterface:access function(THIS:LPID2D1RectangleGeometry;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1RectangleGeometry) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1RectangleGeometry) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1RectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1RectangleGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1RectangleGeometry;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1RectangleGeometry;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1RectangleGeometry;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1RectangleGeometry;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1RectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1RectangleGeometry;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1RectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1RectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1RectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1RectangleGeometry;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1RectangleGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
GetRect:access function(THIS:LPID2D1RectangleGeometry;rect:LPD2D1_RECT_F) return void with Convention=>Stdcall;
end record;
IID_ID2D1RoundedRectangleGeometry : constant GUID:=uuidof("2cd906a3-12e2-11dc-9fed-001143a055f9");
type ID2D1RoundedRectangleGeometry is record
QueryInterface:access function(THIS:LPID2D1RoundedRectangleGeometry;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1RoundedRectangleGeometry) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1RoundedRectangleGeometry) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1RoundedRectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1RoundedRectangleGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1RoundedRectangleGeometry;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1RoundedRectangleGeometry;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1RoundedRectangleGeometry;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1RoundedRectangleGeometry;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1RoundedRectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1RoundedRectangleGeometry;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1RoundedRectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1RoundedRectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1RoundedRectangleGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1RoundedRectangleGeometry;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1RoundedRectangleGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
GetRoundedRect:access function(THIS:LPID2D1RoundedRectangleGeometry;roundedRect:LPD2D1_ROUNDED_RECT) return void with Convention=>Stdcall;
end record;
IID_ID2D1EllipseGeometry : constant GUID:=uuidof("2cd906a4-12e2-11dc-9fed-001143a055f9");
type ID2D1EllipseGeometry is record
QueryInterface:access function(THIS:LPID2D1EllipseGeometry;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1EllipseGeometry) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1EllipseGeometry) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1EllipseGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1EllipseGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1EllipseGeometry;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1EllipseGeometry;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1EllipseGeometry;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1EllipseGeometry;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1EllipseGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1EllipseGeometry;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1EllipseGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1EllipseGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1EllipseGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1EllipseGeometry;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1EllipseGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
GetEllipse:access function(THIS:LPID2D1EllipseGeometry;ellipse:LPD2D1_ELLIPSE) return void with Convention=>Stdcall;
end record;
IID_ID2D1GeometryGroup : constant GUID:=uuidof("2cd906a6-12e2-11dc-9fed-001143a055f9");
type ID2D1GeometryGroup is record
QueryInterface:access function(THIS:LPID2D1GeometryGroup;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1GeometryGroup) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1GeometryGroup) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1GeometryGroup;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1GeometryGroup;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1GeometryGroup;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1GeometryGroup;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1GeometryGroup;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1GeometryGroup;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1GeometryGroup;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1GeometryGroup;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1GeometryGroup;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1GeometryGroup;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1GeometryGroup;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1GeometryGroup;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1GeometryGroup;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
GetFillMode:access function(THIS:LPID2D1GeometryGroup) return D2D1_FILL_MODE with Convention=>Stdcall;
GetSourceGeometryCount:access function(THIS:LPID2D1GeometryGroup) return UINT32 with Convention=>Stdcall;
GetSourceGeometries:access function(THIS:LPID2D1GeometryGroup;geometries:LPLPID2D1Geometry;geometriesCount:UINT) return void with Convention=>Stdcall;
end record;
IID_ID2D1TransformedGeometry : constant GUID:=uuidof("2cd906bb-12e2-11dc-9fed-001143a055f9");
type ID2D1TransformedGeometry is record
QueryInterface:access function(THIS:LPID2D1TransformedGeometry;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1TransformedGeometry) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1TransformedGeometry) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1TransformedGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1TransformedGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1TransformedGeometry;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1TransformedGeometry;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1TransformedGeometry;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1TransformedGeometry;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1TransformedGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1TransformedGeometry;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1TransformedGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1TransformedGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1TransformedGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1TransformedGeometry;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1TransformedGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
GetSourceGeometry:access function(THIS:LPID2D1TransformedGeometry;sourceGeometry:LPLPID2D1Geometry) return void with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1TransformedGeometry;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
end record;
IID_ID2D1SimplifiedGeometrySink : constant GUID:=uuidof("2cd9069e-12e2-11dc-9fed-001143a055f9");
type ID2D1SimplifiedGeometrySink is record
QueryInterface:access function(THIS:LPID2D1SimplifiedGeometrySink;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1SimplifiedGeometrySink) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1SimplifiedGeometrySink) return ULONG with Convention=>Stdcall;
SetFillMode:access function(THIS:LPID2D1SimplifiedGeometrySink;fillMode:D2D1_FILL_MODE) return void with Convention=>Stdcall;
SetSegmentFlags:access function(THIS:LPID2D1SimplifiedGeometrySink;vertexFlags:D2D1_PATH_SEGMENT) return void with Convention=>Stdcall;
BeginFigure:access function(THIS:LPID2D1SimplifiedGeometrySink;startPoint:D2D1_POINT_2F;figureBegin:D2D1_FIGURE_BEGIN) return void with Convention=>Stdcall;
AddLines:access function(THIS:LPID2D1SimplifiedGeometrySink;points:LPCD2D1_POINT_2F;pointsCount:UINT) return void with Convention=>Stdcall;
AddBeziers:access function(THIS:LPID2D1SimplifiedGeometrySink;beziers:LPCD2D1_BEZIER_SEGMENT;beziersCount:UINT) return void with Convention=>Stdcall;
EndFigure:access function(THIS:LPID2D1SimplifiedGeometrySink;figureEnd:D2D1_FIGURE_END) return void with Convention=>Stdcall;
Close:access function(THIS:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1GeometrySink : constant GUID:=uuidof("2cd9069f-12e2-11dc-9fed-001143a055f9");
type ID2D1GeometrySink is record
QueryInterface:access function(THIS:LPID2D1GeometrySink;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1GeometrySink) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1GeometrySink) return ULONG with Convention=>Stdcall;
SetFillMode:access function(THIS:LPID2D1GeometrySink;fillMode:D2D1_FILL_MODE) return void with Convention=>Stdcall;
SetSegmentFlags:access function(THIS:LPID2D1GeometrySink;vertexFlags:D2D1_PATH_SEGMENT) return void with Convention=>Stdcall;
BeginFigure:access function(THIS:LPID2D1GeometrySink;startPoint:D2D1_POINT_2F;figureBegin:D2D1_FIGURE_BEGIN) return void with Convention=>Stdcall;
AddLines:access function(THIS:LPID2D1GeometrySink;points:LPCD2D1_POINT_2F;pointsCount:UINT) return void with Convention=>Stdcall;
AddBeziers:access function(THIS:LPID2D1GeometrySink;beziers:LPCD2D1_BEZIER_SEGMENT;beziersCount:UINT) return void with Convention=>Stdcall;
EndFigure:access function(THIS:LPID2D1GeometrySink;figureEnd:D2D1_FIGURE_END) return void with Convention=>Stdcall;
Close:access function(THIS:LPID2D1GeometrySink) return HRESULT with Convention=>Stdcall;
AddLine:access function(THIS:LPID2D1GeometrySink;point:D2D1_POINT_2F) return void with Convention=>Stdcall;
AddBezier:access function(THIS:LPID2D1GeometrySink;bezier:LPCD2D1_BEZIER_SEGMENT) return void with Convention=>Stdcall;
AddQuadraticBezier:access function(THIS:LPID2D1GeometrySink;bezier:LPCD2D1_QUADRATIC_BEZIER_SEGMENT) return void with Convention=>Stdcall;
AddQuadraticBeziers:access function(THIS:LPID2D1GeometrySink;beziers:LPCD2D1_QUADRATIC_BEZIER_SEGMENT;beziersCount:UINT) return void with Convention=>Stdcall;
AddArc:access function(THIS:LPID2D1GeometrySink;arc:LPCD2D1_ARC_SEGMENT) return void with Convention=>Stdcall;
end record;
IID_ID2D1TessellationSink : constant GUID:=uuidof("2cd906c1-12e2-11dc-9fed-001143a055f9");
type ID2D1TessellationSink is record
QueryInterface:access function(THIS:LPID2D1TessellationSink;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1TessellationSink) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1TessellationSink) return ULONG with Convention=>Stdcall;
AddTriangles:access function(THIS:LPID2D1TessellationSink;triangles:LPCD2D1_TRIANGLE;trianglesCount:UINT) return void with Convention=>Stdcall;
Close:access function(THIS:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1PathGeometry : constant GUID:=uuidof("2cd906a5-12e2-11dc-9fed-001143a055f9");
type ID2D1PathGeometry is record
QueryInterface:access function(THIS:LPID2D1PathGeometry;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1PathGeometry) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1PathGeometry) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetBounds:access function(THIS:LPID2D1PathGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
GetWidenedBounds:access function(THIS:LPID2D1PathGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;bounds:LPD2D1_RECT_F) return HRESULT with Convention=>Stdcall;
StrokeContainsPoint:access function(THIS:LPID2D1PathGeometry;point:D2D1_POINT_2F;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
FillContainsPoint:access function(THIS:LPID2D1PathGeometry;point:D2D1_POINT_2F;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;contains:LPBOOL) return HRESULT with Convention=>Stdcall;
CompareWithGeometry:access function(THIS:LPID2D1PathGeometry;inputGeometry:LPID2D1Geometry;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;relation:LPD2D1_GEOMETRY_RELATION) return HRESULT with Convention=>Stdcall;
Simplify:access function(THIS:LPID2D1PathGeometry;simplificationOption:D2D1_GEOMETRY_SIMPLIFICATION_OPTION;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Tessellate:access function(THIS:LPID2D1PathGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;tessellationSink:LPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
CombineWithGeometry:access function(THIS:LPID2D1PathGeometry;inputGeometry:LPID2D1Geometry;combineMode:D2D1_COMBINE_MODE;inputGeometryTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Outline:access function(THIS:LPID2D1PathGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
ComputeArea:access function(THIS:LPID2D1PathGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;area:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputeLength:access function(THIS:LPID2D1PathGeometry;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;length:LPFLOAT) return HRESULT with Convention=>Stdcall;
ComputePointAtLength:access function(THIS:LPID2D1PathGeometry;length:FLOAT;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;point:LPD2D1_POINT_2F;unitTangentVector:LPD2D1_POINT_2F) return HRESULT with Convention=>Stdcall;
Widen:access function(THIS:LPID2D1PathGeometry;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle;worldTransform:LPCD2D1_MATRIX_3X2_F;flatteningTolerance:FLOAT;geometrySink:LPID2D1SimplifiedGeometrySink) return HRESULT with Convention=>Stdcall;
Open:access function(THIS:LPID2D1PathGeometry;geometrySink:LPLPID2D1GeometrySink) return HRESULT with Convention=>Stdcall;
Stream:access function(THIS:LPID2D1PathGeometry;geometrySink:LPID2D1GeometrySink) return HRESULT with Convention=>Stdcall;
GetSegmentCount:access function(THIS:LPID2D1PathGeometry;count:LPUINT32) return HRESULT with Convention=>Stdcall;
GetFigureCount:access function(THIS:LPID2D1PathGeometry;count:LPUINT32) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1Mesh : constant GUID:=uuidof("2cd906c2-12e2-11dc-9fed-001143a055f9");
type ID2D1Mesh is record
QueryInterface:access function(THIS:LPID2D1Mesh;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Mesh) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Mesh) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
Open:access function(THIS:LPID2D1Mesh;tessellationSink:LPLPID2D1TessellationSink) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1Layer : constant GUID:=uuidof("2cd9069b-12e2-11dc-9fed-001143a055f9");
type ID2D1Layer is record
QueryInterface:access function(THIS:LPID2D1Layer;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Layer) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Layer) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetSize:access function(THIS:LPID2D1Layer) return D2D1_SIZE_F with Convention=>Stdcall;
end record;
IID_ID2D1DrawingStateBlock : constant GUID:=uuidof("28506e39-ebf6-46a1-bb47-fd85565ab957");
type ID2D1DrawingStateBlock is record
QueryInterface:access function(THIS:LPID2D1DrawingStateBlock;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1DrawingStateBlock) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1DrawingStateBlock) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
GetDescription:access function(THIS:LPID2D1DrawingStateBlock;stateDescription:LPD2D1_DRAWING_STATE_DESCRIPTION) return void with Convention=>Stdcall;
SetDescription:access function(THIS:LPID2D1DrawingStateBlock;stateDescription:LPCD2D1_DRAWING_STATE_DESCRIPTION) return void with Convention=>Stdcall;
SetTextRenderingParams:access function(THIS:LPID2D1DrawingStateBlock;textRenderingParamstag2:DWrite.LPIDWriteRenderingParams) return void with Convention=>Stdcall;
GetTextRenderingParams:access function(THIS:LPID2D1DrawingStateBlock;textRenderingParams:DWrite.LPLPIDWriteRenderingParams) return void with Convention=>Stdcall;
end record;
IID_ID2D1RenderTarget : constant GUID:=uuidof("2cd90694-12e2-11dc-9fed-001143a055f9");
type ID2D1RenderTarget is record
QueryInterface:access function(THIS:LPID2D1RenderTarget;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1RenderTarget) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1RenderTarget) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
CreateBitmap:access function(THIS:LPID2D1RenderTarget;size:D2D1_SIZE_U;srcData:LPCvoid;pitch:UINT32;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapFromWicBitmap:access function(THIS:LPID2D1RenderTarget;wicBitmapSource:LPIWICBitmapSource;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateSharedBitmap:access function(THIS:LPID2D1RenderTarget;riid:REFIID;data:LPvoid;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapBrush:access function(THIS:LPID2D1RenderTarget;bitmap:LPID2D1Bitmap;bitmapBrushProperties:LPCD2D1_BITMAP_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;bitmapBrush:LPLPID2D1BitmapBrush) return HRESULT with Convention=>Stdcall;
CreateSolidColorBrush:access function(THIS:LPID2D1RenderTarget;color:LPCD2D1_COLOR_F;brushProperties:LPCD2D1_BRUSH_PROPERTIES;solidColorBrush:LPLPID2D1SolidColorBrush) return HRESULT with Convention=>Stdcall;
CreateGradientStopCollection:access function(THIS:LPID2D1RenderTarget;gradientStops:LPCD2D1_GRADIENT_STOP;gradientStopsCount:UINT;colorInterpolationGamma:D2D1_GAMMA;extendMode:D2D1_EXTEND_MODE;gradientStopCollection:LPLPID2D1GradientStopCollection) return HRESULT with Convention=>Stdcall;
CreateLinearGradientBrush:access function(THIS:LPID2D1RenderTarget;linearGradientBrushProperties:LPCD2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;linearGradientBrush:LPLPID2D1LinearGradientBrush) return HRESULT with Convention=>Stdcall;
CreateRadialGradientBrush:access function(THIS:LPID2D1RenderTarget;radialGradientBrushProperties:LPCD2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;radialGradientBrush:LPLPID2D1RadialGradientBrush) return HRESULT with Convention=>Stdcall;
CreateCompatibleRenderTarget:access function(THIS:LPID2D1RenderTarget;desiredSize:LPCD2D1_SIZE_F;desiredPixelSize:LPCD2D1_SIZE_U;desiredFormat:LPCD2D1_PIXEL_FORMAT;options:D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS;bitmapRenderTarget:LPLPID2D1BitmapRenderTarget) return HRESULT with Convention=>Stdcall;
CreateLayer:access function(THIS:LPID2D1RenderTarget;size:LPCD2D1_SIZE_F;layer:LPLPID2D1Layer) return HRESULT with Convention=>Stdcall;
CreateMesh:access function(THIS:LPID2D1RenderTarget;mesh:LPLPID2D1Mesh) return HRESULT with Convention=>Stdcall;
DrawLine:access function(THIS:LPID2D1RenderTarget;point0:D2D1_POINT_2F;point1:D2D1_POINT_2F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
DrawRectangle:access function(THIS:LPID2D1RenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRectangle:access function(THIS:LPID2D1RenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawRoundedRectangle:access function(THIS:LPID2D1RenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRoundedRectangle:access function(THIS:LPID2D1RenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawEllipse:access function(THIS:LPID2D1RenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillEllipse:access function(THIS:LPID2D1RenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawGeometry:access function(THIS:LPID2D1RenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillGeometry:access function(THIS:LPID2D1RenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;opacityBrushtag2:LPID2D1Brush) return void with Convention=>Stdcall;
FillMesh:access function(THIS:LPID2D1RenderTarget;mesh:LPID2D1Mesh;brush:LPID2D1Brush) return void with Convention=>Stdcall;
FillOpacityMask:access function(THIS:LPID2D1RenderTarget;opacityMask:LPID2D1Bitmap;brush:LPID2D1Brush;content:D2D1_OPACITY_MASK_CONTENT;destinationRectangletag2:LPCD2D1_RECT_F;sourceRectangletag2:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawBitmap:access function(THIS:LPID2D1RenderTarget;bitmap:LPID2D1Bitmap;destinationRectangletag2:LPCD2D1_RECT_F;opacity:FLOAT;interpolationMode:D2D1_BITMAP_INTERPOLATION_MODE;sourceRectangletag2:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawText:access function(THIS:LPID2D1RenderTarget;string:LPCWCHAR;stringLength:UINT;textFormat:DWrite.LPIDWriteTextFormat;layoutRect:LPCD2D1_RECT_F;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS;measuringMode:DWrite.DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
DrawTextLayout:access function(THIS:LPID2D1RenderTarget;origin:D2D1_POINT_2F;textLayout:DWrite.LPIDWriteTextLayout;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS) return void with Convention=>Stdcall;
DrawGlyphRun:access function(THIS:LPID2D1RenderTarget;baselineOrigin:D2D1_POINT_2F;glyphRun:DWrite.LPCDWRITE_GLYPH_RUN;foregroundBrush:LPID2D1Brush;measuringMode:DWrite.DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1RenderTarget;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1RenderTarget;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetAntialiasMode:access function(THIS:LPID2D1RenderTarget;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetAntialiasMode:access function(THIS:LPID2D1RenderTarget) return D2D1_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextAntialiasMode:access function(THIS:LPID2D1RenderTarget;textAntialiasMode:D2D1_TEXT_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetTextAntialiasMode:access function(THIS:LPID2D1RenderTarget) return D2D1_TEXT_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextRenderingParams:access function(THIS:LPID2D1RenderTarget;textRenderingParamstag2:DWrite.LPIDWriteRenderingParams) return void with Convention=>Stdcall;
GetTextRenderingParams:access function(THIS:LPID2D1RenderTarget;textRenderingParams:DWrite.LPLPIDWriteRenderingParams) return void with Convention=>Stdcall;
SetTags:access function(THIS:LPID2D1RenderTarget;tag1:D2D1_TAG;tag2:D2D1_TAG) return void with Convention=>Stdcall;
GetTags:access function(THIS:LPID2D1RenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return void with Convention=>Stdcall;
PushLayer:access function(THIS:LPID2D1RenderTarget;layerParameters:LPCD2D1_LAYER_PARAMETERS;layer:LPID2D1Layer) return void with Convention=>Stdcall;
PopLayer:access function(THIS:LPID2D1RenderTarget) return void with Convention=>Stdcall;
Flush:access function(THIS:LPID2D1RenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
SaveDrawingState:access function(THIS:LPID2D1RenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
RestoreDrawingState:access function(THIS:LPID2D1RenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
PushAxisAlignedClip:access function(THIS:LPID2D1RenderTarget;clipRect:LPCD2D1_RECT_F;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
PopAxisAlignedClip:access function(THIS:LPID2D1RenderTarget) return void with Convention=>Stdcall;
Clear:access function(THIS:LPID2D1RenderTarget;clearColortag2:LPCD2D1_COLOR_F) return void with Convention=>Stdcall;
BeginDraw:access function(THIS:LPID2D1RenderTarget) return void with Convention=>Stdcall;
EndDraw:access function(THIS:LPID2D1RenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
GetPixelFormat:access function(THIS:LPID2D1RenderTarget) return D2D1_PIXEL_FORMAT with Convention=>Stdcall;
SetDpi:access function(THIS:LPID2D1RenderTarget;dpiX:FLOAT;dpiY:FLOAT) return void with Convention=>Stdcall;
GetDpi:access function(THIS:LPID2D1RenderTarget;dpiX:LPFLOAT;dpiY:LPFLOAT) return void with Convention=>Stdcall;
GetSize:access function(THIS:LPID2D1RenderTarget) return D2D1_SIZE_F with Convention=>Stdcall;
GetPixelSize:access function(THIS:LPID2D1RenderTarget) return D2D1_SIZE_U with Convention=>Stdcall;
GetMaximumBitmapSize:access function(THIS:LPID2D1RenderTarget) return UINT32 with Convention=>Stdcall;
IsSupported:access function(THIS:LPID2D1RenderTarget;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES) return BOOL with Convention=>Stdcall;
end record;
IID_ID2D1BitmapRenderTarget : constant GUID:=uuidof("2cd90695-12e2-11dc-9fed-001143a055f9");
type ID2D1BitmapRenderTarget is record
QueryInterface:access function(THIS:LPID2D1BitmapRenderTarget;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1BitmapRenderTarget) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1BitmapRenderTarget) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
CreateBitmap:access function(THIS:LPID2D1BitmapRenderTarget;size:D2D1_SIZE_U;srcData:LPCvoid;pitch:UINT32;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapFromWicBitmap:access function(THIS:LPID2D1BitmapRenderTarget;wicBitmapSource:LPIWICBitmapSource;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateSharedBitmap:access function(THIS:LPID2D1BitmapRenderTarget;riid:REFIID;data:LPvoid;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapBrush:access function(THIS:LPID2D1BitmapRenderTarget;bitmap:LPID2D1Bitmap;bitmapBrushProperties:LPCD2D1_BITMAP_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;bitmapBrush:LPLPID2D1BitmapBrush) return HRESULT with Convention=>Stdcall;
CreateSolidColorBrush:access function(THIS:LPID2D1BitmapRenderTarget;color:LPCD2D1_COLOR_F;brushProperties:LPCD2D1_BRUSH_PROPERTIES;solidColorBrush:LPLPID2D1SolidColorBrush) return HRESULT with Convention=>Stdcall;
CreateGradientStopCollection:access function(THIS:LPID2D1BitmapRenderTarget;gradientStops:LPCD2D1_GRADIENT_STOP;gradientStopsCount:UINT;colorInterpolationGamma:D2D1_GAMMA;extendMode:D2D1_EXTEND_MODE;gradientStopCollection:LPLPID2D1GradientStopCollection) return HRESULT with Convention=>Stdcall;
CreateLinearGradientBrush:access function(THIS:LPID2D1BitmapRenderTarget;linearGradientBrushProperties:LPCD2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;linearGradientBrush:LPLPID2D1LinearGradientBrush) return HRESULT with Convention=>Stdcall;
CreateRadialGradientBrush:access function(THIS:LPID2D1BitmapRenderTarget;radialGradientBrushProperties:LPCD2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;radialGradientBrush:LPLPID2D1RadialGradientBrush) return HRESULT with Convention=>Stdcall;
CreateCompatibleRenderTarget:access function(THIS:LPID2D1BitmapRenderTarget;desiredSize:LPCD2D1_SIZE_F;desiredPixelSize:LPCD2D1_SIZE_U;desiredFormat:LPCD2D1_PIXEL_FORMAT;options:D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS;bitmapRenderTarget:LPLPID2D1BitmapRenderTarget) return HRESULT with Convention=>Stdcall;
CreateLayer:access function(THIS:LPID2D1BitmapRenderTarget;size:LPCD2D1_SIZE_F;layer:LPLPID2D1Layer) return HRESULT with Convention=>Stdcall;
CreateMesh:access function(THIS:LPID2D1BitmapRenderTarget;mesh:LPLPID2D1Mesh) return HRESULT with Convention=>Stdcall;
DrawLine:access function(THIS:LPID2D1BitmapRenderTarget;point0:D2D1_POINT_2F;point1:D2D1_POINT_2F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
DrawRectangle:access function(THIS:LPID2D1BitmapRenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRectangle:access function(THIS:LPID2D1BitmapRenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawRoundedRectangle:access function(THIS:LPID2D1BitmapRenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRoundedRectangle:access function(THIS:LPID2D1BitmapRenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawEllipse:access function(THIS:LPID2D1BitmapRenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillEllipse:access function(THIS:LPID2D1BitmapRenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawGeometry:access function(THIS:LPID2D1BitmapRenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillGeometry:access function(THIS:LPID2D1BitmapRenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;opacityBrushtag2:LPID2D1Brush) return void with Convention=>Stdcall;
FillMesh:access function(THIS:LPID2D1BitmapRenderTarget;mesh:LPID2D1Mesh;brush:LPID2D1Brush) return void with Convention=>Stdcall;
FillOpacityMask:access function(THIS:LPID2D1BitmapRenderTarget;opacityMask:LPID2D1Bitmap;brush:LPID2D1Brush;content:D2D1_OPACITY_MASK_CONTENT;destinationRectangle:LPCD2D1_RECT_F;sourceRectangle:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawBitmap:access function(THIS:LPID2D1BitmapRenderTarget;bitmap:LPID2D1Bitmap;destinationRectangle:LPCD2D1_RECT_F;opacity:FLOAT;interpolationMode:D2D1_BITMAP_INTERPOLATION_MODE;sourceRectangle:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawText:access function(THIS:LPID2D1BitmapRenderTarget;string:LPCWCHAR;stringLength:UINT;textFormat:LPIDWriteTextFormat;layoutRect:LPCD2D1_RECT_F;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS;measuringMode:DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
DrawTextLayout:access function(THIS:LPID2D1BitmapRenderTarget;origin:D2D1_POINT_2F;textLayout:LPIDWriteTextLayout;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS) return void with Convention=>Stdcall;
DrawGlyphRun:access function(THIS:LPID2D1BitmapRenderTarget;baselineOrigin:D2D1_POINT_2F;glyphRun:LPCDWRITE_GLYPH_RUN;foregroundBrush:LPID2D1Brush;measuringMode:DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1BitmapRenderTarget;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1BitmapRenderTarget;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetAntialiasMode:access function(THIS:LPID2D1BitmapRenderTarget;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetAntialiasMode:access function(THIS:LPID2D1BitmapRenderTarget) return D2D1_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextAntialiasMode:access function(THIS:LPID2D1BitmapRenderTarget;textAntialiasMode:D2D1_TEXT_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetTextAntialiasMode:access function(THIS:LPID2D1BitmapRenderTarget) return D2D1_TEXT_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextRenderingParams:access function(THIS:LPID2D1BitmapRenderTarget;textRenderingParams:LPIDWriteRenderingParams) return void with Convention=>Stdcall;
GetTextRenderingParams:access function(THIS:LPID2D1BitmapRenderTarget;textRenderingParams:LPLPIDWriteRenderingParams) return void with Convention=>Stdcall;
SetTags:access function(THIS:LPID2D1BitmapRenderTarget;tag1:D2D1_TAG;tag2:D2D1_TAG) return void with Convention=>Stdcall;
GetTags:access function(THIS:LPID2D1BitmapRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return void with Convention=>Stdcall;
PushLayer:access function(THIS:LPID2D1BitmapRenderTarget;layerParameters:LPCD2D1_LAYER_PARAMETERS;layer:LPID2D1Layer) return void with Convention=>Stdcall;
PopLayer:access function(THIS:LPID2D1BitmapRenderTarget) return void with Convention=>Stdcall;
Flush:access function(THIS:LPID2D1BitmapRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
SaveDrawingState:access function(THIS:LPID2D1BitmapRenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
RestoreDrawingState:access function(THIS:LPID2D1BitmapRenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
PushAxisAlignedClip:access function(THIS:LPID2D1BitmapRenderTarget;clipRect:LPCD2D1_RECT_F;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
PopAxisAlignedClip:access function(THIS:LPID2D1BitmapRenderTarget) return void with Convention=>Stdcall;
Clear:access function(THIS:LPID2D1BitmapRenderTarget;clearColortag2:LPCD2D1_COLOR_F) return void with Convention=>Stdcall;
BeginDraw:access function(THIS:LPID2D1BitmapRenderTarget) return void with Convention=>Stdcall;
EndDraw:access function(THIS:LPID2D1BitmapRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
GetPixelFormat:access function(THIS:LPID2D1BitmapRenderTarget) return D2D1_PIXEL_FORMAT with Convention=>Stdcall;
SetDpi:access function(THIS:LPID2D1BitmapRenderTarget;dpiX:FLOAT;dpiY:FLOAT) return void with Convention=>Stdcall;
GetDpi:access function(THIS:LPID2D1BitmapRenderTarget;dpiX:LPFLOAT;dpiY:LPFLOAT) return void with Convention=>Stdcall;
GetSize:access function(THIS:LPID2D1BitmapRenderTarget) return D2D1_SIZE_F with Convention=>Stdcall;
GetPixelSize:access function(THIS:LPID2D1BitmapRenderTarget) return D2D1_SIZE_U with Convention=>Stdcall;
GetMaximumBitmapSize:access function(THIS:LPID2D1BitmapRenderTarget) return UINT32 with Convention=>Stdcall;
IsSupported:access function(THIS:LPID2D1BitmapRenderTarget;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES) return BOOL with Convention=>Stdcall;
GetBitmap:access function(THIS:LPID2D1BitmapRenderTarget;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1HwndRenderTarget : constant GUID:=uuidof("2cd90698-12e2-11dc-9fed-001143a055f9");
type ID2D1HwndRenderTarget is record
QueryInterface:access function(THIS:LPID2D1HwndRenderTarget;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1HwndRenderTarget) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1HwndRenderTarget) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
CreateBitmap:access function(THIS:LPID2D1HwndRenderTarget;size:D2D1_SIZE_U;srcData:LPCvoid;pitch:UINT32;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapFromWicBitmap:access function(THIS:LPID2D1HwndRenderTarget;wicBitmapSource:LPIWICBitmapSource;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateSharedBitmap:access function(THIS:LPID2D1HwndRenderTarget;riid:REFIID;data:LPvoid;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapBrush:access function(THIS:LPID2D1HwndRenderTarget;bitmap:LPID2D1Bitmap;bitmapBrushProperties:LPCD2D1_BITMAP_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;bitmapBrush:LPLPID2D1BitmapBrush) return HRESULT with Convention=>Stdcall;
CreateSolidColorBrush:access function(THIS:LPID2D1HwndRenderTarget;color:LPCD2D1_COLOR_F;brushProperties:LPCD2D1_BRUSH_PROPERTIES;solidColorBrush:LPLPID2D1SolidColorBrush) return HRESULT with Convention=>Stdcall;
CreateGradientStopCollection:access function(THIS:LPID2D1HwndRenderTarget;gradientStops:LPCD2D1_GRADIENT_STOP;gradientStopsCount:UINT;colorInterpolationGamma:D2D1_GAMMA;extendMode:D2D1_EXTEND_MODE;gradientStopCollection:LPLPID2D1GradientStopCollection) return HRESULT with Convention=>Stdcall;
CreateLinearGradientBrush:access function(THIS:LPID2D1HwndRenderTarget;linearGradientBrushProperties:LPCD2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;linearGradientBrush:LPLPID2D1LinearGradientBrush) return HRESULT with Convention=>Stdcall;
CreateRadialGradientBrush:access function(THIS:LPID2D1HwndRenderTarget;radialGradientBrushProperties:LPCD2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;radialGradientBrush:LPLPID2D1RadialGradientBrush) return HRESULT with Convention=>Stdcall;
CreateCompatibleRenderTarget:access function(THIS:LPID2D1HwndRenderTarget;desiredSize:LPCD2D1_SIZE_F;desiredPixelSize:LPCD2D1_SIZE_U;desiredFormat:LPCD2D1_PIXEL_FORMAT;options:D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS;bitmapRenderTarget:LPLPID2D1BitmapRenderTarget) return HRESULT with Convention=>Stdcall;
CreateLayer:access function(THIS:LPID2D1HwndRenderTarget;size:LPCD2D1_SIZE_F;layer:LPLPID2D1Layer) return HRESULT with Convention=>Stdcall;
CreateMesh:access function(THIS:LPID2D1HwndRenderTarget;mesh:LPLPID2D1Mesh) return HRESULT with Convention=>Stdcall;
DrawLine:access function(THIS:LPID2D1HwndRenderTarget;point0:D2D1_POINT_2F;point1:D2D1_POINT_2F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
DrawRectangle:access function(THIS:LPID2D1HwndRenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRectangle:access function(THIS:LPID2D1HwndRenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawRoundedRectangle:access function(THIS:LPID2D1HwndRenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRoundedRectangle:access function(THIS:LPID2D1HwndRenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawEllipse:access function(THIS:LPID2D1HwndRenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillEllipse:access function(THIS:LPID2D1HwndRenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawGeometry:access function(THIS:LPID2D1HwndRenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillGeometry:access function(THIS:LPID2D1HwndRenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;opacityBrush:LPID2D1Brush) return void with Convention=>Stdcall;
FillMesh:access function(THIS:LPID2D1HwndRenderTarget;mesh:LPID2D1Mesh;brush:LPID2D1Brush) return void with Convention=>Stdcall;
FillOpacityMask:access function(THIS:LPID2D1HwndRenderTarget;opacityMask:LPID2D1Bitmap;brush:LPID2D1Brush;content:D2D1_OPACITY_MASK_CONTENT;destinationRectangle:LPCD2D1_RECT_F;sourceRectangle:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawBitmap:access function(THIS:LPID2D1HwndRenderTarget;bitmap:LPID2D1Bitmap;destinationRectangle:LPCD2D1_RECT_F;opacity:FLOAT;interpolationMode:D2D1_BITMAP_INTERPOLATION_MODE;sourceRectangle:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawText:access function(THIS:LPID2D1HwndRenderTarget;string:LPCWCHAR;stringLength:UINT;textFormat:LPIDWriteTextFormat;layoutRect:LPCD2D1_RECT_F;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS;measuringMode:DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
DrawTextLayout:access function(THIS:LPID2D1HwndRenderTarget;origin:D2D1_POINT_2F;textLayout:LPIDWriteTextLayout;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS) return void with Convention=>Stdcall;
DrawGlyphRun:access function(THIS:LPID2D1HwndRenderTarget;baselineOrigin:D2D1_POINT_2F;glyphRun:LPCDWRITE_GLYPH_RUN;foregroundBrush:LPID2D1Brush;measuringMode:DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1HwndRenderTarget;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1HwndRenderTarget;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetAntialiasMode:access function(THIS:LPID2D1HwndRenderTarget;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetAntialiasMode:access function(THIS:LPID2D1HwndRenderTarget) return D2D1_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextAntialiasMode:access function(THIS:LPID2D1HwndRenderTarget;textAntialiasMode:D2D1_TEXT_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetTextAntialiasMode:access function(THIS:LPID2D1HwndRenderTarget) return D2D1_TEXT_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextRenderingParams:access function(THIS:LPID2D1HwndRenderTarget;textRenderingParams:LPIDWriteRenderingParams) return void with Convention=>Stdcall;
GetTextRenderingParams:access function(THIS:LPID2D1HwndRenderTarget;textRenderingParams:LPLPIDWriteRenderingParams) return void with Convention=>Stdcall;
SetTags:access function(THIS:LPID2D1HwndRenderTarget;tag1:D2D1_TAG;tag2:D2D1_TAG) return void with Convention=>Stdcall;
GetTags:access function(THIS:LPID2D1HwndRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return void with Convention=>Stdcall;
PushLayer:access function(THIS:LPID2D1HwndRenderTarget;layerParameters:LPCD2D1_LAYER_PARAMETERS;layer:LPID2D1Layer) return void with Convention=>Stdcall;
PopLayer:access function(THIS:LPID2D1HwndRenderTarget) return void with Convention=>Stdcall;
Flush:access function(THIS:LPID2D1HwndRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
SaveDrawingState:access function(THIS:LPID2D1HwndRenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
RestoreDrawingState:access function(THIS:LPID2D1HwndRenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
PushAxisAlignedClip:access function(THIS:LPID2D1HwndRenderTarget;clipRect:LPCD2D1_RECT_F;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
PopAxisAlignedClip:access function(THIS:LPID2D1HwndRenderTarget) return void with Convention=>Stdcall;
Clear:access function(THIS:LPID2D1HwndRenderTarget;clearColor:LPCD2D1_COLOR_F) return void with Convention=>Stdcall;
BeginDraw:access function(THIS:LPID2D1HwndRenderTarget) return void with Convention=>Stdcall;
EndDraw:access function(THIS:LPID2D1HwndRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
GetPixelFormat:access function(THIS:LPID2D1HwndRenderTarget) return D2D1_PIXEL_FORMAT with Convention=>Stdcall;
SetDpi:access function(THIS:LPID2D1HwndRenderTarget;dpiX:FLOAT;dpiY:FLOAT) return void with Convention=>Stdcall;
GetDpi:access function(THIS:LPID2D1HwndRenderTarget;dpiX:LPFLOAT;dpiY:LPFLOAT) return void with Convention=>Stdcall;
GetSize:access function(THIS:LPID2D1HwndRenderTarget) return D2D1_SIZE_F with Convention=>Stdcall;
GetPixelSize:access function(THIS:LPID2D1HwndRenderTarget) return D2D1_SIZE_U with Convention=>Stdcall;
GetMaximumBitmapSize:access function(THIS:LPID2D1HwndRenderTarget) return UINT32 with Convention=>Stdcall;
IsSupported:access function(THIS:LPID2D1HwndRenderTarget;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES) return BOOL with Convention=>Stdcall;
CheckWindowState:access function(THIS:LPID2D1HwndRenderTarget) return D2D1_WINDOW_STATE with Convention=>Stdcall;
Resize:access function(THIS:LPID2D1HwndRenderTarget;pixelSize:LPCD2D1_SIZE_U) return HRESULT with Convention=>Stdcall;
GetHwnd:access function(THIS:LPID2D1HwndRenderTarget) return HWND with Convention=>Stdcall;
end record;
IID_ID2D1GdiInteropRenderTarget : constant GUID:=uuidof("e0db51c3-6f77-4bae-b3d5-e47509b35838");
type ID2D1GdiInteropRenderTarget is record
QueryInterface:access function(THIS:LPID2D1GdiInteropRenderTarget;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1GdiInteropRenderTarget) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1GdiInteropRenderTarget) return ULONG with Convention=>Stdcall;
GetDC:access function(THIS:LPID2D1GdiInteropRenderTarget;mode:D2D1_DC_INITIALIZE_MODE;hdc:access windef.HDC) return HRESULT with Convention=>Stdcall;
ReleaseDC:access function(THIS:LPID2D1GdiInteropRenderTarget;update:LPCRECT) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1DCRenderTarget : constant GUID:=uuidof("1c51bc64-de61-46fd-9899-63a5d8f03950");
type ID2D1DCRenderTarget is record
QueryInterface:access function(THIS:LPID2D1DCRenderTarget;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1DCRenderTarget) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1DCRenderTarget) return ULONG with Convention=>Stdcall;
GetFactory:access function(factory:LPLPID2D1Factory) return void with Convention=>Stdcall;
CreateBitmap:access function(THIS:LPID2D1DCRenderTarget;size:D2D1_SIZE_U;srcData:LPCvoid;pitch:UINT32;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapFromWicBitmap:access function(THIS:LPID2D1DCRenderTarget;wicBitmapSource:LPIWICBitmapSource;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateSharedBitmap:access function(THIS:LPID2D1DCRenderTarget;riid:REFIID;data:LPvoid;bitmapProperties:LPCD2D1_BITMAP_PROPERTIES;bitmap:LPLPID2D1Bitmap) return HRESULT with Convention=>Stdcall;
CreateBitmapBrush:access function(THIS:LPID2D1DCRenderTarget;bitmap:LPID2D1Bitmap;bitmapBrushProperties:LPCD2D1_BITMAP_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;bitmapBrush:LPLPID2D1BitmapBrush) return HRESULT with Convention=>Stdcall;
CreateSolidColorBrush:access function(THIS:LPID2D1DCRenderTarget;color:LPCD2D1_COLOR_F;brushProperties:LPCD2D1_BRUSH_PROPERTIES;solidColorBrush:LPLPID2D1SolidColorBrush) return HRESULT with Convention=>Stdcall;
CreateGradientStopCollection:access function(THIS:LPID2D1DCRenderTarget;gradientStops:LPCD2D1_GRADIENT_STOP;gradientStopsCount:UINT;colorInterpolationGamma:D2D1_GAMMA;extendMode:D2D1_EXTEND_MODE;gradientStopCollection:LPLPID2D1GradientStopCollection) return HRESULT with Convention=>Stdcall;
CreateLinearGradientBrush:access function(THIS:LPID2D1DCRenderTarget;linearGradientBrushProperties:LPCD2D1_LINEAR_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;linearGradientBrush:LPLPID2D1LinearGradientBrush) return HRESULT with Convention=>Stdcall;
CreateRadialGradientBrush:access function(THIS:LPID2D1DCRenderTarget;radialGradientBrushProperties:LPCD2D1_RADIAL_GRADIENT_BRUSH_PROPERTIES;brushProperties:LPCD2D1_BRUSH_PROPERTIES;gradientStopCollection:LPID2D1GradientStopCollection;radialGradientBrush:LPLPID2D1RadialGradientBrush) return HRESULT with Convention=>Stdcall;
CreateCompatibleRenderTarget:access function(THIS:LPID2D1DCRenderTarget;desiredSize:LPCD2D1_SIZE_F;desiredPixelSize:LPCD2D1_SIZE_U;desiredFormat:LPCD2D1_PIXEL_FORMAT;options:D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS;bitmapRenderTarget:LPLPID2D1BitmapRenderTarget) return HRESULT with Convention=>Stdcall;
CreateLayer:access function(THIS:LPID2D1DCRenderTarget;size:LPCD2D1_SIZE_F;layer:LPLPID2D1Layer) return HRESULT with Convention=>Stdcall;
CreateMesh:access function(THIS:LPID2D1DCRenderTarget;mesh:LPLPID2D1Mesh) return HRESULT with Convention=>Stdcall;
DrawLine:access function(THIS:LPID2D1DCRenderTarget;point0:D2D1_POINT_2F;point1:D2D1_POINT_2F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
DrawRectangle:access function(THIS:LPID2D1DCRenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRectangle:access function(THIS:LPID2D1DCRenderTarget;rect:LPCD2D1_RECT_F;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawRoundedRectangle:access function(THIS:LPID2D1DCRenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillRoundedRectangle:access function(THIS:LPID2D1DCRenderTarget;roundedRect:LPCD2D1_ROUNDED_RECT;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawEllipse:access function(THIS:LPID2D1DCRenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillEllipse:access function(THIS:LPID2D1DCRenderTarget;ellipse:LPCD2D1_ELLIPSE;brush:LPID2D1Brush) return void with Convention=>Stdcall;
DrawGeometry:access function(THIS:LPID2D1DCRenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;strokeWidth:FLOAT;strokeStyle:LPID2D1StrokeStyle) return void with Convention=>Stdcall;
FillGeometry:access function(THIS:LPID2D1DCRenderTarget;geometry:LPID2D1Geometry;brush:LPID2D1Brush;opacityBrushtag2:LPID2D1Brush) return void with Convention=>Stdcall;
FillMesh:access function(THIS:LPID2D1DCRenderTarget;mesh:LPID2D1Mesh;brush:LPID2D1Brush) return void with Convention=>Stdcall;
FillOpacityMask:access function(THIS:LPID2D1DCRenderTarget;opacityMask:LPID2D1Bitmap;brush:LPID2D1Brush;content:D2D1_OPACITY_MASK_CONTENT;destinationRectangletag2:LPCD2D1_RECT_F;sourceRectangletag2:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawBitmap:access function(THIS:LPID2D1DCRenderTarget;bitmap:LPID2D1Bitmap;destinationRectangletag2:LPCD2D1_RECT_F;opacity:FLOAT;interpolationMode:D2D1_BITMAP_INTERPOLATION_MODE;sourceRectangletag2:LPCD2D1_RECT_F) return void with Convention=>Stdcall;
DrawText:access function(THIS:LPID2D1DCRenderTarget;string:LPCWCHAR;stringLength:UINT;textFormat:LPIDWriteTextFormat;layoutRect:LPCD2D1_RECT_F;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS;measuringMode:DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
DrawTextLayout:access function(THIS:LPID2D1DCRenderTarget;origin:D2D1_POINT_2F;textLayout:LPIDWriteTextLayout;defaultForegroundBrush:LPID2D1Brush;options:D2D1_DRAW_TEXT_OPTIONS) return void with Convention=>Stdcall;
DrawGlyphRun:access function(THIS:LPID2D1DCRenderTarget;baselineOrigin:D2D1_POINT_2F;glyphRun:LPCDWRITE_GLYPH_RUN;foregroundBrush:LPID2D1Brush;measuringMode:DWRITE_MEASURING_MODE) return void with Convention=>Stdcall;
SetTransform:access function(THIS:LPID2D1DCRenderTarget;transform:LPCD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
GetTransform:access function(THIS:LPID2D1DCRenderTarget;transform:LPD2D1_MATRIX_3X2_F) return void with Convention=>Stdcall;
SetAntialiasMode:access function(THIS:LPID2D1DCRenderTarget;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetAntialiasMode:access function(THIS:LPID2D1DCRenderTarget) return D2D1_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextAntialiasMode:access function(THIS:LPID2D1DCRenderTarget;textAntialiasMode:D2D1_TEXT_ANTIALIAS_MODE) return void with Convention=>Stdcall;
GetTextAntialiasMode:access function(THIS:LPID2D1DCRenderTarget) return D2D1_TEXT_ANTIALIAS_MODE with Convention=>Stdcall;
SetTextRenderingParams:access function(THIS:LPID2D1DCRenderTarget;textRenderingParamstag2:LPIDWriteRenderingParams) return void with Convention=>Stdcall;
GetTextRenderingParams:access function(THIS:LPID2D1DCRenderTarget;textRenderingParams:LPLPIDWriteRenderingParams) return void with Convention=>Stdcall;
SetTags:access function(THIS:LPID2D1DCRenderTarget;tag1:D2D1_TAG;tag2:D2D1_TAG) return void with Convention=>Stdcall;
GetTags:access function(THIS:LPID2D1DCRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return void with Convention=>Stdcall;
PushLayer:access function(THIS:LPID2D1DCRenderTarget;layerParameters:LPCD2D1_LAYER_PARAMETERS;layer:LPID2D1Layer) return void with Convention=>Stdcall;
PopLayer:access function(THIS:LPID2D1DCRenderTarget) return void with Convention=>Stdcall;
Flush:access function(THIS:LPID2D1DCRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
SaveDrawingState:access function(THIS:LPID2D1DCRenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
RestoreDrawingState:access function(THIS:LPID2D1DCRenderTarget;drawingStateBlock:LPID2D1DrawingStateBlock) return void with Convention=>Stdcall;
PushAxisAlignedClip:access function(THIS:LPID2D1DCRenderTarget;clipRect:LPCD2D1_RECT_F;antialiasMode:D2D1_ANTIALIAS_MODE) return void with Convention=>Stdcall;
PopAxisAlignedClip:access function(THIS:LPID2D1DCRenderTarget) return void with Convention=>Stdcall;
Clear:access function(THIS:LPID2D1DCRenderTarget;clearColortag2:LPCD2D1_COLOR_F) return void with Convention=>Stdcall;
BeginDraw:access function(THIS:LPID2D1DCRenderTarget) return void with Convention=>Stdcall;
EndDraw:access function(THIS:LPID2D1DCRenderTarget;tag1:LPD2D1_TAG;tag2:LPD2D1_TAG) return HRESULT with Convention=>Stdcall;
GetPixelFormat:access function(THIS:LPID2D1DCRenderTarget) return D2D1_PIXEL_FORMAT with Convention=>Stdcall;
SetDpi:access function(THIS:LPID2D1DCRenderTarget;dpiX:FLOAT;dpiY:FLOAT) return void with Convention=>Stdcall;
GetDpi:access function(THIS:LPID2D1DCRenderTarget;dpiX:LPFLOAT;dpiY:LPFLOAT) return void with Convention=>Stdcall;
GetSize:access function(THIS:LPID2D1DCRenderTarget) return D2D1_SIZE_F with Convention=>Stdcall;
GetPixelSize:access function(THIS:LPID2D1DCRenderTarget) return D2D1_SIZE_U with Convention=>Stdcall;
GetMaximumBitmapSize:access function(THIS:LPID2D1DCRenderTarget) return UINT32 with Convention=>Stdcall;
IsSupported:access function(THIS:LPID2D1DCRenderTarget;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES) return BOOL with Convention=>Stdcall;
BindDC:access function(THIS:LPID2D1DCRenderTarget;hDC:windef.HDC;pSubRect:LPCRECT) return HRESULT with Convention=>Stdcall;
end record;
IID_ID2D1Factory : constant GUID:=uuidof("06152247-6f50-465a-9245-118bfd3b6007");
type ID2D1Factory is record
QueryInterface:access function(THIS:LPID2D1Factory;riid:REFIID;ppvObj:LPLPvoid) return HRESULT with Convention=>Stdcall;
AddRef:access function(THIS:LPID2D1Factory) return ULONG with Convention=>Stdcall;
Release:access function(THIS:LPID2D1Factory) return ULONG with Convention=>Stdcall;
ReloadSystemMetrics:access function(THIS:LPID2D1Factory) return HRESULT with Convention=>Stdcall;
GetDesktopDpi:access function(THIS:LPID2D1Factory;dpiX:LPFLOAT;dpiY:LPFLOAT) return void with Convention=>Stdcall;
CreateRectangleGeometry:access function(THIS:LPID2D1Factory;rectangle:LPCD2D1_RECT_F;rectangleGeometry:LPLPID2D1RectangleGeometry) return HRESULT with Convention=>Stdcall;
CreateRoundedRectangleGeometry:access function(THIS:LPID2D1Factory;roundedRectangle:LPCD2D1_ROUNDED_RECT;roundedRectangleGeometry:LPLPID2D1RoundedRectangleGeometry) return HRESULT with Convention=>Stdcall;
CreateEllipseGeometry:access function(THIS:LPID2D1Factory;ellipse:LPCD2D1_ELLIPSE;ellipseGeometry:LPLPID2D1EllipseGeometry) return HRESULT with Convention=>Stdcall;
CreateGeometryGroup:access function(THIS:LPID2D1Factory;fillMode:D2D1_FILL_MODE;geometries:LPLPID2D1Geometry;geometriesCount:UINT;geometryGroup:LPLPID2D1GeometryGroup) return HRESULT with Convention=>Stdcall;
CreateTransformedGeometry:access function(THIS:LPID2D1Factory;sourceGeometry:LPID2D1Geometry;transform:LPCD2D1_MATRIX_3X2_F;transformedGeometry:LPLPID2D1TransformedGeometry) return HRESULT with Convention=>Stdcall;
CreatePathGeometry:access function(THIS:LPID2D1Factory;pathGeometry:LPLPID2D1PathGeometry) return HRESULT with Convention=>Stdcall;
CreateStrokeStyle:access function(THIS:LPID2D1Factory;strokeStyleProperties:LPCD2D1_STROKE_STYLE_PROPERTIES;dashes:LPCFLOAT;dashesCount:UINT;strokeStyle:LPLPID2D1StrokeStyle) return HRESULT with Convention=>Stdcall;
CreateDrawingStateBlock:access function(THIS:LPID2D1Factory;drawingStateDescription:LPCD2D1_DRAWING_STATE_DESCRIPTION;textRenderingParams:LPIDWriteRenderingParams;drawingStateBlock:LPLPID2D1DrawingStateBlock) return HRESULT with Convention=>Stdcall;
CreateWicBitmapRenderTarget:access function(THIS:LPID2D1Factory;target:LPIWICBitmap;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES;renderTarget:LPLPID2D1RenderTarget) return HRESULT with Convention=>Stdcall;
CreateHwndRenderTarget:access function(THIS:LPID2D1Factory;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES;hwndRenderTargetProperties:LPCD2D1_HWND_RENDER_TARGET_PROPERTIES;hwndRenderTarget:LPLPID2D1HwndRenderTarget) return HRESULT with Convention=>Stdcall;
CreateDxgiSurfaceRenderTarget:access function(THIS:LPID2D1Factory;dxgiSurface:LPIDXGISurface;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES;renderTarget:LPLPID2D1RenderTarget) return HRESULT with Convention=>Stdcall;
CreateDCRenderTarget:access function(THIS:LPID2D1Factory;renderTargetProperties:LPCD2D1_RENDER_TARGET_PROPERTIES;dcRenderTarget:LPLPID2D1DCRenderTarget) return HRESULT with Convention=>Stdcall;
end record;
--
-- THE END.
--
end D2D1;