public unsafe static NormalizedRect[] PtrToRectArray(IntPtr ptr, int size) { var rects = new NormalizedRect[size]; NormalizedRect *rectPtr = (NormalizedRect *)ptr; for (var i = 0; i < size; i++) { rects[i] = Marshal.PtrToStructure <NormalizedRect>((IntPtr)rectPtr++); } return(rects); }
public static NormalizedRect[] PtrToRectArray(MpNormalizedRectVector rectVectorPtr) { var rectVector = Marshal.PtrToStructure <NormalizedRectVector>(rectVectorPtr); var rects = new NormalizedRect[rectVector.size]; unsafe { NormalizedRect *rectPtr = (NormalizedRect *)rectVector.rects; for (var i = 0; i < rects.Length; i++) { rects[i] = Marshal.PtrToStructure <NormalizedRect>((IntPtr)rectPtr++); } } return(rects); }