// WARNING: Please don't edit this file. It was generated by Swift/WinRT v0.0.1

#pragma once
// Header files for imported files
#include <inspectable.h>
#include <EventToken.h>
#include <windowscontracts.h>
#include "Windows.Foundation.h"
#include "Microsoft.Graphics.Canvas.h"
#include "Microsoft.Graphics.Canvas.Text.h"
#include "Windows.Foundation.Numerics.h"
#include "Windows.Graphics.h"

/* Forward Declarations */
#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle_FWD_DEFINED__

// Parameterized interface forward declarations (C)

// Collection interface definitions

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator_FWD_DEFINED__

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasFontFace_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasFontFace_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasFontFace __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasFontFace;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasFontFace_FWD_DEFINED__

typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasGlyph __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasGlyph;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasGlyphOrientation __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasGlyphOrientation;

#ifndef ____x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasTextLayout_FWD_DEFINED__
#define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasTextLayout_FWD_DEFINED__
    typedef interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasTextLayout __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasTextLayout;

#endif // ____x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasTextLayout_FWD_DEFINED__

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasTextMeasuringMode __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasTextMeasuringMode;

#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIClosable __x_ABI_CWindows_CFoundation_CIClosable;

#endif // ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__

typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2;

typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 __x_ABI_CWindows_CFoundation_CNumerics_CVector2;

typedef struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4 __x_ABI_CWindows_CFoundation_CNumerics_CVector4;

typedef struct __x_ABI_CWindows_CFoundation_CRect __x_ABI_CWindows_CFoundation_CRect;

#ifndef ____x_ABI_CWindows_CGraphics_CIGeometrySource2D_FWD_DEFINED__
#define ____x_ABI_CWindows_CGraphics_CIGeometrySource2D_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CGraphics_CIGeometrySource2D __x_ABI_CWindows_CGraphics_CIGeometrySource2D;

#endif // ____x_ABI_CWindows_CGraphics_CIGeometrySource2D_FWD_DEFINED__

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior;

typedef enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection;

typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch;

typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasTriangleVertices __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasTriangleVertices;

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize_Small = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize_Large = 1,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle_Flat = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle_Square = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle_Round = 2,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle_Triangle = 3,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle_Solid = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle_Dash = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle_Dot = 2,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle_DashDot = 3,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle_DashDotDot = 4,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill_Default = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill_DoesNotAffectFills = 1,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop_Open = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop_Closed = 1,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions_None = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions_ForceUnstroked = 0x1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions_ForceRoundLineJoin = 0x2,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination_Alternate = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination_Winding = 1,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine_Union = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine_Intersect = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine_Xor = 2,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine_Exclude = 3,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation_Disjoint = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation_Contained = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation_Contains = 2,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation_Overlap = 3,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification_CubicsAndLines = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification_Lines = 1,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge_Aliased = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge_Antialiased = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge_AliasedAndInflated = 2,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin_Miter = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin_Bevel = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin_Round = 2,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin_MiterOrBevel = 3,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior_Normal = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior_Fixed = 1,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior_Hairline = 2,
};

enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection
    {
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection_CounterClockwise = 0,
    __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection_Clockwise = 1,
};

struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch
    {
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point00;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point01;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point02;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point03;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point10;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point11;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point12;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point13;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point20;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point21;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point22;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point23;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point30;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point31;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point32;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Point33;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4 Color00;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4 Color03;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4 Color30;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4 Color33;
    enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge Edge00To03;
    enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge Edge03To33;
    enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge Edge33To30;
    enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge Edge30To00;
};

struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasTriangleVertices
    {
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Vertex1;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Vertex2;
    struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 Vertex3;
};

#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Device)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice** value);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateFill)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* geometry,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry** cachedGeometry);
    HRESULT (STDMETHODCALLTYPE* CreateFillWithFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* geometry,
        FLOAT flatteningTolerance,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry** cachedGeometry);
    HRESULT (STDMETHODCALLTYPE* CreateStroke)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* geometry,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry** cachedGeometry);
    HRESULT (STDMETHODCALLTYPE* CreateStrokeWithStrokeStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* geometry,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry** cachedGeometry);
    HRESULT (STDMETHODCALLTYPE* CreateStrokeWithStrokeStyleAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* geometry,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        FLOAT flatteningTolerance,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometry** cachedGeometry);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStaticsVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasCachedGeometryStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CombineWith)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* otherGeometry,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 otherGeometryTransform,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine combine,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CombineWithUsingFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* otherGeometry,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 otherGeometryTransform,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryCombine combine,
        FLOAT flatteningTolerance,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* Stroke)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* StrokeWithStrokeStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* StrokeWithAllOptions)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* Outline)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* OutlineWithTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* Simplify)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification simplification,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* SimplifyWithTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometrySimplification simplification,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* Transform)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CompareWith)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* otherGeometry,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation* relation);
    HRESULT (STDMETHODCALLTYPE* CompareWithUsingTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* otherGeometry,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 otherGeometryTransform,
        FLOAT flatteningTolerance,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGeometryRelation* relation);
    HRESULT (STDMETHODCALLTYPE* ComputeArea)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT* area);
    HRESULT (STDMETHODCALLTYPE* ComputeAreaWithTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        FLOAT* area);
    HRESULT (STDMETHODCALLTYPE* ComputePathLength)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT* length);
    HRESULT (STDMETHODCALLTYPE* ComputePathLengthWithTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        FLOAT* length);
    HRESULT (STDMETHODCALLTYPE* ComputePointOnPath)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT distance,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* point);
    HRESULT (STDMETHODCALLTYPE* ComputePointOnPathWithTangent)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT distance,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* tangent,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* point);
    HRESULT (STDMETHODCALLTYPE* ComputePointOnPathWithTransformAndFlatteningToleranceAndTangent)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT length,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* tangent,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* point);
    HRESULT (STDMETHODCALLTYPE* FillContainsPoint)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 point,
        boolean* containsPoint);
    HRESULT (STDMETHODCALLTYPE* FillContainsPointWithTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 point,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        boolean* containsPoint);
    HRESULT (STDMETHODCALLTYPE* ComputeBounds)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* ComputeBoundsWithTransform)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* ComputeStrokeBounds)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT strokeWidth,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* ComputeStrokeBoundsWithStrokeStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* ComputeStrokeBoundsWithAllOptions)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* StrokeContainsPoint)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 point,
        FLOAT strokeWidth,
        boolean* containsPoint);
    HRESULT (STDMETHODCALLTYPE* StrokeContainsPointWithStrokeStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 point,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        boolean* containsPoint);
    HRESULT (STDMETHODCALLTYPE* StrokeContainsPointWithAllOptions)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 point,
        FLOAT strokeWidth,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* strokeStyle,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        boolean* containsPoint);
    HRESULT (STDMETHODCALLTYPE* Tessellate)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        UINT32* trianglesLength,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasTriangleVertices** triangles);
    HRESULT (STDMETHODCALLTYPE* TessellateWithTransformAndFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        FLOAT flatteningTolerance,
        UINT32* trianglesLength,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasTriangleVertices** triangles);
    HRESULT (STDMETHODCALLTYPE* SendPathTo)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* streamReader);
    HRESULT (STDMETHODCALLTYPE* get_Device)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice** value);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateRectangle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CRect rect,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateRectangleAtCoords)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        FLOAT x,
        FLOAT y,
        FLOAT w,
        FLOAT h,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateRoundedRectangle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CRect rect,
        FLOAT radiusX,
        FLOAT radiusY,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateRoundedRectangleAtCoords)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        FLOAT x,
        FLOAT y,
        FLOAT w,
        FLOAT h,
        FLOAT radiusX,
        FLOAT radiusY,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateEllipse)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 centerPoint,
        FLOAT radiusX,
        FLOAT radiusY,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateEllipseAtCoords)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        FLOAT x,
        FLOAT y,
        FLOAT radiusX,
        FLOAT radiusY,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateCircle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 centerPoint,
        FLOAT radius,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateCircleAtCoords)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        FLOAT x,
        FLOAT y,
        FLOAT radius,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreatePath)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* pathBuilder,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreatePolygon)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        UINT32 pointsLength,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* points,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateGroup)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        UINT32 geometriesLength,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometries,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateGroupWithFilledRegionDetermination)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        UINT32 geometriesLength,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometries,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination filledRegionDetermination,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateText)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasTextLayout* textLayout,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* CreateGlyphRun)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 point,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CICanvasFontFace* fontFace,
        FLOAT fontSize,
        UINT32 glyphsLength,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasGlyph* glyphs,
        boolean isSideways,
        UINT32 bidiLevel,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasTextMeasuringMode measuringMode,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CText_CCanvasGlyphOrientation glyphOrientation,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry** geometry);
    HRESULT (STDMETHODCALLTYPE* ComputeFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        FLOAT dpi,
        FLOAT maximumZoomFactor,
        FLOAT* flatteningTolerance);
    HRESULT (STDMETHODCALLTYPE* ComputeFlatteningToleranceWithTransform)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        FLOAT dpi,
        FLOAT maximumZoomFactor,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 expectedGeometryTransform,
        FLOAT* flatteningTolerance);
    HRESULT (STDMETHODCALLTYPE* get_DefaultFlatteningTolerance)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics* This,
        FLOAT* value);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStaticsVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometryStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Patches)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
        UINT32* valueElementsLength,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch** valueElements);
    HRESULT (STDMETHODCALLTYPE* GetBounds)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* GetBoundsWithTransform)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CMatrix3x2 transform,
        struct __x_ABI_CWindows_CFoundation_CRect* bounds);
    HRESULT (STDMETHODCALLTYPE* get_Device)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasDevice** value);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        UINT32 patchElementsLength,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch* patchElements,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMesh** canvasGradientMesh);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactoryVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateCoonsPatch)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This,
        UINT32 pointsLength,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* points,
        UINT32 colorsLength,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4* colors,
        UINT32 edgesLength,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge* edges,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch* gradientMeshPatch);
    HRESULT (STDMETHODCALLTYPE* CreateTensorPatch)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics* This,
        UINT32 pointsLength,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2* points,
        UINT32 colorsLength,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector4* colors,
        UINT32 edgesLength,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatchEdge* edges,
        struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasGradientMeshPatch* gradientMeshPatch);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStaticsVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGradientMeshStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* BeginFigureWithFigureFill)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 startPoint,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill figureFill);
    HRESULT (STDMETHODCALLTYPE* BeginFigure)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 startPoint);
    HRESULT (STDMETHODCALLTYPE* BeginFigureAtCoordsWithFigureFill)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        FLOAT startX,
        FLOAT startY,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill figureFill);
    HRESULT (STDMETHODCALLTYPE* BeginFigureAtCoords)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        FLOAT startX,
        FLOAT startY);
    HRESULT (STDMETHODCALLTYPE* AddArcToPoint)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint,
        FLOAT radiusX,
        FLOAT radiusY,
        FLOAT rotationAngle,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection sweepDirection,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize arcSize);
    HRESULT (STDMETHODCALLTYPE* AddArcAroundEllipse)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 centerPoint,
        FLOAT radiusX,
        FLOAT radiusY,
        FLOAT startAngle,
        FLOAT sweepAngle);
    HRESULT (STDMETHODCALLTYPE* AddCubicBezier)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 controlPoint1,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 controlPoint2,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint);
    HRESULT (STDMETHODCALLTYPE* AddLine)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint);
    HRESULT (STDMETHODCALLTYPE* AddLineWithCoords)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        FLOAT x,
        FLOAT y);
    HRESULT (STDMETHODCALLTYPE* AddQuadraticBezier)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 controlPoint,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint);
    HRESULT (STDMETHODCALLTYPE* SetFilledRegionDetermination)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination filledRegionDetermination);
    HRESULT (STDMETHODCALLTYPE* SetSegmentOptions)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions figureSegmentOptions);
    HRESULT (STDMETHODCALLTYPE* EndFigure)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop figureLoop);
    HRESULT (STDMETHODCALLTYPE* AddGeometry)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasGeometry* geometry);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory* This,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CICanvasResourceCreator* resourceCreator,
        __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilder** canvasPathBuilder);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactoryVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathBuilderFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiverVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* BeginFigure)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 startPoint,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureFill figureFill);
    HRESULT (STDMETHODCALLTYPE* AddArc)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint,
        FLOAT radiusX,
        FLOAT radiusY,
        FLOAT rotationAngle,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasSweepDirection sweepDirection,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasArcSize arcSize);
    HRESULT (STDMETHODCALLTYPE* AddCubicBezier)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 controlPoint1,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 controlPoint2,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint);
    HRESULT (STDMETHODCALLTYPE* AddLine)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint);
    HRESULT (STDMETHODCALLTYPE* AddQuadraticBezier)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 controlPoint,
        struct __x_ABI_CWindows_CFoundation_CNumerics_CVector2 endPoint);
    HRESULT (STDMETHODCALLTYPE* SetFilledRegionDetermination)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFilledRegionDetermination filledRegionDetermination);
    HRESULT (STDMETHODCALLTYPE* SetSegmentOptions)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureSegmentOptions figureSegmentOptions);
    HRESULT (STDMETHODCALLTYPE* EndFigure)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasFigureLoop figureLoop);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiverVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiverVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasPathReceiver_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle_INTERFACE_DEFINED__)
    #define ____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle_INTERFACE_DEFINED__
    typedef struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyleVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_StartCap)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle* value);
    HRESULT (STDMETHODCALLTYPE* put_StartCap)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle value);
    HRESULT (STDMETHODCALLTYPE* get_EndCap)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle* value);
    HRESULT (STDMETHODCALLTYPE* put_EndCap)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle value);
    HRESULT (STDMETHODCALLTYPE* get_DashCap)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle* value);
    HRESULT (STDMETHODCALLTYPE* put_DashCap)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasCapStyle value);
    HRESULT (STDMETHODCALLTYPE* get_LineJoin)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin* value);
    HRESULT (STDMETHODCALLTYPE* put_LineJoin)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasLineJoin value);
    HRESULT (STDMETHODCALLTYPE* get_MiterLimit)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        FLOAT* value);
    HRESULT (STDMETHODCALLTYPE* put_MiterLimit)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        FLOAT value);
    HRESULT (STDMETHODCALLTYPE* get_DashStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle* value);
    HRESULT (STDMETHODCALLTYPE* put_DashStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasDashStyle value);
    HRESULT (STDMETHODCALLTYPE* get_DashOffset)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        FLOAT* value);
    HRESULT (STDMETHODCALLTYPE* put_DashOffset)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        FLOAT value);
    HRESULT (STDMETHODCALLTYPE* get_CustomDashStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        UINT32* valueElementsLength,
        FLOAT** valueElements);
    HRESULT (STDMETHODCALLTYPE* put_CustomDashStyle)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        UINT32 valueElementsLength,
        FLOAT* valueElements);
    HRESULT (STDMETHODCALLTYPE* get_TransformBehavior)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior* value);
    HRESULT (STDMETHODCALLTYPE* put_TransformBehavior)(__x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle* This,
        enum __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CCanvasStrokeTransformBehavior value);

        END_INTERFACE
    } __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyleVtbl;

    interface __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle
    {
        CONST_VTBL struct __x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyleVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle;
#endif /* !defined(____x_ABI_CMicrosoft_CGraphics_CCanvas_CGeometry_CICanvasStrokeStyle_INTERFACE_DEFINED__) */
    
