using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using Microsoft.Research.DynamicDataDisplay.Charts;
namespace Microsoft.Research.DynamicDataDisplay.DataSources
{
///
/// General interface for two-dimensional data source. Contains two-dimensional array of data items.
///
/// Data type - type of each data piece.
public interface IDataSource2D : IGridSource2D where T : struct
{
///
/// Gets two-dimensional data array.
///
/// The data.
T[,] Data { get; }
IDataSource2D GetSubset(int x0, int y0, int countX, int countY, int stepX, int stepY);
Range? Range { get; }
T? MissingValue { get; }
}
///
/// General interface for two-dimensional data grids. Contains two-dimensional array of data points.
///
public interface IGridSource2D
{
///
/// Gets the grid of data source.
///
/// The grid.
Point[,] Grid { get; }
///
/// Gets data grid width.
///
/// The width.
int Width { get; }
///
/// Gets data grid height.
///
/// The height.
int Height { get; }
///
/// Occurs when data source changes.
///
event EventHandler Changed;
}
}