private static unsafe int MapOutputRectToInputRects(IntPtr thisObject, RawRect *outputRect, RawRect *pInputRects, int inputRectsCount) { try { var inputRects = new RawRect[inputRectsCount]; fixed(void *rectsPtr = &inputRects[0]) { Unsafe.CopyBlock( rectsPtr, pInputRects, (uint)(sizeof(RawRect) * inputRectsCount)); ID2D1Transform @this = (ID2D1Transform)ToShadow <ID2D1TransformShadow>(thisObject).Callback; @this.MapOutputRectToInputRects(*outputRect, inputRects); Unsafe.CopyBlock( pInputRects, rectsPtr, (uint)(sizeof(RawRect) * inputRectsCount)); return(Result.Ok.Code); } } catch (Exception __exception__) { return(Result.GetResultFromException(__exception__).Code); } }
private static unsafe int MapInvalidRect(IntPtr thisObject, int inputIndex, RawRect *invalidInputRect, RawRect *invalidOutputRect) { try { ID2D1Transform @this = (ID2D1Transform)ToShadow <ID2D1TransformShadow>(thisObject).Callback; @this.MapInvalidRect(inputIndex, *invalidInputRect, out *invalidOutputRect); return(Result.Ok.Code); } catch (Exception __exception__) { return(Result.GetResultFromException(__exception__).Code); } }
public static extern int AdjustWindowRectEx(RawRect *lpRect, uint dwStyle, int bMenu, uint dwExStyle);
private static unsafe int MapInputRectsToOutputRect(IntPtr thisObject, void *pInputRects, void *pInputOpaqueSubRects, int inputRectCount, RawRect *outputRect, RawRect *outputOpaqueSubRect) { try { var inputRects = new RawRect[inputRectCount]; Unsafe.CopyBlock( Unsafe.AsPointer(ref inputRects[0]), pInputRects, (uint)(sizeof(RawRect) * inputRectCount)); var inputOpaqueSubRects = new RawRect[inputRectCount]; Unsafe.CopyBlock( Unsafe.AsPointer(ref inputOpaqueSubRects[0]), pInputOpaqueSubRects, (uint)(sizeof(RawRect) * inputRectCount)); ID2D1Transform @this = (ID2D1Transform)ToShadow <ID2D1TransformShadow>(thisObject).Callback; @this.MapInputRectsToOutputRect(inputRects, inputOpaqueSubRects, out *outputRect, out *outputOpaqueSubRect); return(Result.Ok.Code); } catch (Exception __exception__) { return(Result.GetResultFromException(__exception__).Code); } }