using System;
using System.Collections.Generic;
using System.Data;

namespace QC.CTDS.DM.DataStructures.OutputDataStructure;

public class LinearSeriesGroup
{
	private string numberFormat;

	private string parameterName;

	private Dictionary<string, string> dataViolationsDict = new Dictionary<string, string>(StringComparer.Ordinal);

	private DataTable seriesTbl;

	private int limitRowsStartIndex = -1;

	private int limitRowsStopIndex = -1;

	private int statisticsRowsStartIndex = -1;

	private int statisticsRowsStopIndex = -1;

	private int dataRowsStartIndex = -1;

	private int dataRowsStopIndex = -1;

	private bool isSecondarySeries;

	private bool hasMinLimit;

	private bool hasMaxLimit;

	private double minYAxisVal = double.NegativeInfinity;

	private double maxYAxisVal = double.PositiveInfinity;

	private double autoStatsMinYAxis = double.NegativeInfinity;

	private double autoStatsMaxYAxis = double.PositiveInfinity;

	private int customLimitRowsStartIndex = -1;

	private int customLimitRowsStopIndex = -1;

	private bool hasCustomLimit;

	private string _chartSeriesType = "Default";

	public string NumberFormat
	{
		get
		{
			return numberFormat;
		}
		set
		{
			numberFormat = value;
		}
	}

	public string ParameterName
	{
		get
		{
			return parameterName;
		}
		set
		{
			parameterName = value;
		}
	}

	public Dictionary<string, string> DataViolationsDict
	{
		get
		{
			return dataViolationsDict;
		}
		set
		{
			dataViolationsDict = value;
		}
	}

	public DataTable SeriesTbl
	{
		get
		{
			return seriesTbl;
		}
		set
		{
			seriesTbl = value;
		}
	}

	public string SeriesName { get; set; }

	public int LimitRowsStartIndex
	{
		get
		{
			return limitRowsStartIndex;
		}
		set
		{
			limitRowsStartIndex = value;
		}
	}

	public int LimitRowsStopIndex
	{
		get
		{
			return limitRowsStopIndex;
		}
		set
		{
			limitRowsStopIndex = value;
		}
	}

	public int StatisticsRowsStartIndex
	{
		get
		{
			return statisticsRowsStartIndex;
		}
		set
		{
			statisticsRowsStartIndex = value;
		}
	}

	public int StatisticsRowsStopIndex
	{
		get
		{
			return statisticsRowsStopIndex;
		}
		set
		{
			statisticsRowsStopIndex = value;
		}
	}

	public int DataRowsStartIndex
	{
		get
		{
			return dataRowsStartIndex;
		}
		set
		{
			dataRowsStartIndex = value;
		}
	}

	public int DataRowsStopIndex
	{
		get
		{
			return dataRowsStopIndex;
		}
		set
		{
			dataRowsStopIndex = value;
		}
	}

	public bool IsSecondarySeries
	{
		get
		{
			return isSecondarySeries;
		}
		set
		{
			isSecondarySeries = value;
		}
	}

	public bool HasMinLimit
	{
		get
		{
			return hasMinLimit;
		}
		set
		{
			hasMinLimit = value;
		}
	}

	public bool HasMaxLimit
	{
		get
		{
			return hasMaxLimit;
		}
		set
		{
			hasMaxLimit = value;
		}
	}

	public double MinYAxisVal
	{
		get
		{
			return minYAxisVal;
		}
		set
		{
			minYAxisVal = value;
		}
	}

	public double MaxYAxisVal
	{
		get
		{
			return maxYAxisVal;
		}
		set
		{
			maxYAxisVal = value;
		}
	}

	public double AutoStatsMinYAxis
	{
		get
		{
			return autoStatsMinYAxis;
		}
		set
		{
			autoStatsMinYAxis = value;
		}
	}

	public double AutoStatsMaxYAxis
	{
		get
		{
			return autoStatsMaxYAxis;
		}
		set
		{
			autoStatsMaxYAxis = value;
		}
	}

	public int CustomLimitRowsStartIndex
	{
		get
		{
			return customLimitRowsStartIndex;
		}
		set
		{
			customLimitRowsStartIndex = value;
		}
	}

	public int CustomLimitRowsStopIndex
	{
		get
		{
			return customLimitRowsStopIndex;
		}
		set
		{
			customLimitRowsStopIndex = value;
		}
	}

	public bool HasCustomLimit
	{
		get
		{
			return hasCustomLimit;
		}
		set
		{
			hasCustomLimit = value;
		}
	}

	public string ChartSeriesType
	{
		get
		{
			return _chartSeriesType;
		}
		set
		{
			_chartSeriesType = value;
		}
	}
}
