using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace GraphicData.Class
{
    public class cDataModel : INotifyPropertyChanged
    {
        public event PropertyChangedEventHandler PropertyChanged;

		private List<object[]> data;

		public List<object[]> Data
		{
			get { return data; }
			set { data = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(Data)));
			}
		}


		private int indexTime;

		public int IndexTime
		{
			get { return indexTime; }
			set
			{
				indexTime = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IndexTime)));
			}
		}


		private int indexValue;

		public int IndexValue
		{
			get { return indexValue; }
			set
			{
				indexValue = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IndexValue)));
			}
		}


		private int indexDuration;

		public int IndexDuration
		{
			get { return indexDuration; }
			set
			{
				indexDuration = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IndexDuration)));
			}
		}


		private int warningThreshold;

		public int WarniningThreshold
		{
			get { return warningThreshold; }
			set
			{
				warningThreshold = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(WarniningThreshold)));
			}
		}


		private int errorThreshold;

		public int ErrorThreshold
		{
			get { return errorThreshold; }
			set
			{
				errorThreshold = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(ErrorThreshold)));
			}
		}


		private bool isThresholdActive;

		public bool IsThresholdActive
		{
			get { return isThresholdActive; }
			set
			{
				isThresholdActive = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(IsThresholdActive)));
			}
		}

		private string graphicTitle;

		public string GraphicTitle
		{
			get { return graphicTitle; }
			set
			{
				graphicTitle = value;
				PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(nameof(GraphicTitle)));
			}
		}

	}
}
