public static D2D_POINT_2U Point2U([NativeTypeName("UINT32")] uint x = 0, [NativeTypeName("UINT32")] uint y = 0)
        {
            D2D_POINT_2U point = new D2D_POINT_2U
            {
                x = x,
                y = y,
            };

            return(point);
        }
 public int Draw(ID2D1Bitmap1 *target, [NativeTypeName("const D2D1_RECT_L *")] RECT *drawRect, [NativeTypeName("D2D1_POINT_2U")] D2D_POINT_2U targetOrigin)
 {
     return(((delegate * unmanaged <ID2D1SourceTransform *, ID2D1Bitmap1 *, RECT *, D2D_POINT_2U, int>)(lpVtbl[8]))((ID2D1SourceTransform *)Unsafe.AsPointer(ref this), target, drawRect, targetOrigin));
 }