public unsafe void Test_Memory2DT_Pin_2() { int[] array = { 1, 2, 3, 4 }; // Same as above, but we test with a sliced Memory2D<T> instance Memory2D <int> memory2d = new Memory2D <int>(array, 2, 2); using var pin = memory2d.Pin(); Assert.AreEqual(((int *)pin.Pointer)[0], 1); Assert.AreEqual(((int *)pin.Pointer)[3], 4); }
public unsafe void Test_Memory2DT_Pin_1() { int[] array = { 1, 2, 3, 4 }; // We create a Memory2D<T> from an array and verify that pinning this // instance correctly returns a pointer to the right array element. Memory2D <int> memory2d = new Memory2D <int>(array, 2, 2); using var pin = memory2d.Pin(); Assert.AreEqual(((int *)pin.Pointer)[0], 1); Assert.AreEqual(((int *)pin.Pointer)[3], 4); }