public static ArrayView3D <T> As3DView <T>(this ArrayView <T> view, int width, Index2 extent) where T : struct => new ArrayView3D <T>(view, width, extent);
public ArrayView3D(ArrayView <T> view, LongIndex3 extent) : this(new ArrayView <T, LongIndex3>(view, extent)) { }
public static ArrayView2D <T> As2DView <T>( this ArrayView <T> view, LongIndex2 extent) where T : unmanaged => new ArrayView2D <T>(view, extent);
public ArrayView3D(ArrayView <T> view, long width, long height, long depth) : this(view, new LongIndex3(width, height, depth)) { }
public ArrayView3D(ArrayView <T> view, LongIndex2 extent, long depth) : this(view, new LongIndex3(extent, depth)) { }
public ArrayView2D(ArrayView <T> view, long height) : this(view, new LongIndex2(view.Length / height, height)) { }
public ArrayView2D(ArrayView <T> view, LongIndex2 extent) : this(new ArrayView <T, LongIndex2>(view, extent)) { }
public static ArrayView2D <T> As2DView <T>(this ArrayView <T> view, Index2 extent) where T : struct => new ArrayView2D <T>(view, extent);
public static ArrayView3D <T> As3DView <T>(this ArrayView <T> view, int height, int depth) where T : struct => new ArrayView3D <T>(view, height, depth);
public ArrayView3D(ArrayView <T> view, int width, Index2 extent) : this(view, new Index3(width, extent)) { }
public static ArrayView2D <T> As2DView <T>(this ArrayView <T> view, int width, int height) where T : struct => new ArrayView2D <T>(view, width, height);
public ArrayView3D(ArrayView <T> view, Index2 extent, int depth) : this(view, new Index3(extent, depth)) { }
public static VariableView <T> GetVariableView <T>(this ArrayView <T> view, Index1 element) where T : struct => new VariableView <T>(view.GetSubView(element, 1));
public static VariableView <T> GetVariableView <T>(this ArrayView <T> view) where T : struct => view.GetVariableView(Index1.Zero);
public static VariableView <T> GetVariableView <T>(this ArrayView <T> view) where T : unmanaged => view.GetVariableView(Index1.Zero);
public static ArrayView3D <T> As3DView <T>(this ArrayView <T> view, Index2 extent) where T : struct => new ArrayView3D <T>(view, extent.X, extent.Y);
public static VariableView <T> GetVariableView <T>( this ArrayView <T> view, LongIndex1 element) where T : unmanaged => new VariableView <T>(view.GetSubView(element, 1L));
/// <summary> /// Constructs a new 2D array view. /// </summary> /// <param name="view">The linear view to the data.</param> /// <param name="height">The height (number of elements in y direction).</param> public ArrayView2D(ArrayView <T> view, int height) : this(view, new Index2(view.Length / height, height)) { }
public ArrayView2D(ArrayView <T> view, long width, long height) : this(view, new LongIndex2(width, height)) { }
/// <summary> /// Constructs a new 2D array view. /// </summary> /// <param name="view">The linear view to the data.</param> /// <param name="width">The width (number of elements in x direction).</param> /// <param name="height">The height (number of elements in y direction).</param> public ArrayView2D(ArrayView <T> view, int width, int height) : this(view, new Index2(width, height)) { }
public ArrayView3D(ArrayView <T> view, long height, long depth) : this(view, new LongIndex3(view.Length / (height * depth), height, depth)) { }
/// <summary> /// Constructs a new 3D array view. /// </summary> /// <param name="view">The linear view to the data.</param> /// <param name="height">The height (number of elements in y direction).</param> /// <param name="depth">The depth (number of elements in z direction).</param> public ArrayView3D(ArrayView <T> view, int height, int depth) : this(view, new Index3(view.Length / (height * depth), height, depth)) { }
public static unsafe void *LoadEffectiveAddress <T>(this ArrayView <T> view) where T : unmanaged => view.LoadEffectiveAddress();
/// <summary> /// Constructs a new 3D array view. /// </summary> /// <param name="view">The linear view to the data.</param> /// <param name="width">The width (number of elements in x direction).</param> /// <param name="height">The height (number of elements in y direction).</param> /// <param name="depth">The depth (number of elements in z direction).</param> public ArrayView3D(ArrayView <T> view, int width, int height, int depth) : this(view, new Index3(width, height, depth)) { }
public ArrayView3D(ArrayView <T> view, long width, LongIndex2 extent) : this(view, new LongIndex3(width, extent)) { }
public static ArrayView3D <T> As3DView <T>( this ArrayView <T> view, LongIndex2 extent, long depth) where T : unmanaged => new ArrayView3D <T>(view, extent, depth);
public static ArrayView2D <T> As2DView <T>( this ArrayView <T> view, long width, long height) where T : unmanaged => new ArrayView2D <T>(view, width, height);
public static ArrayView3D <T> As3DView <T>( this ArrayView <T> view, long width, LongIndex2 extent) where T : unmanaged => new ArrayView3D <T>(view, width, extent);
public static ArrayView3D <T> As3DView <T>( this ArrayView <T> view, long height, long depth) where T : unmanaged => new ArrayView3D <T>(view, height, depth);
public static ArrayView3D <T> As3DView <T>(this ArrayView <T> view, Index2 extent, int depth) where T : struct => new ArrayView3D <T>(view, extent, depth);