39 lines
1.2 KiB
C#
Executable File
39 lines
1.2 KiB
C#
Executable File
// Copyright 2017-2018 Alexander Luzgarev
|
|
|
|
namespace MatFileHandler
|
|
{
|
|
/// <summary>
|
|
/// An interface providing access to array's contents.
|
|
/// </summary>
|
|
/// <typeparam name="T">Element type.</typeparam>
|
|
/// <remarks>
|
|
/// Possible values of T
|
|
/// * for numerical arrays:
|
|
/// Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single, Double,
|
|
/// ComplexOf<TReal> (where TReal is one of Int8, UInt8, Int16, UInt16, Int32, UInt32, Int64, UInt64, Single),
|
|
/// Complex;
|
|
/// * for sparse arrays:
|
|
/// Double, Complex, Boolean;
|
|
/// * for character arrays:
|
|
/// UInt8, UInt16, Char;
|
|
/// * for logical arrays:
|
|
/// Boolean;
|
|
/// * for cell arrays:
|
|
/// IArray;
|
|
/// * for structure arrays:
|
|
/// IReadOnlyDictionary<string, IArray>;
|
|
/// </remarks>
|
|
public interface IArrayOf<T> : IArray
|
|
{
|
|
/// <summary>
|
|
/// Gets all data as an array.
|
|
/// </summary>
|
|
T[] Data { get; }
|
|
|
|
/// <summary>
|
|
/// Get an element by index.
|
|
/// </summary>
|
|
/// <param name="list">Index of the element.</param>
|
|
T this[params int[] list] { get; set; }
|
|
}
|
|
} |