using MainShell.Models;
using MainShell.Recipe.Models.SubstrateParameter;
using MwFramework.ManagerService;
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;

namespace MainShell.Recipe.Models
{
    public class SubstrateRecipe : RecipeBase
    {
        public override string Dir => System.IO.Path.Combine(Filewritable.Paths.SubstrateRecipe, RecipeName);

        private ObservableCollection<WaferSelectInfo> _waferSelectInfos = new ObservableCollection<WaferSelectInfo>();
        public ObservableCollection<WaferSelectInfo> WaferSelectInfos
        {
            get { return _waferSelectInfos; }
            set { SetProperty(ref _waferSelectInfos, value); }
        }
        private SubstrateInfo _substrateInfo = new SubstrateInfo();
        public SubstrateInfo SubstrateInfo
        {
            get { return _substrateInfo; }
            set { SetProperty(ref _substrateInfo, value); }
        }
        private SubtrateMarkPars _subtrateMarkParameterInfo = new SubtrateMarkPars();

        public SubtrateMarkPars SubtrateMarkParameterInfo
        {
            get { return _subtrateMarkParameterInfo; }
            set { SetProperty(ref _subtrateMarkParameterInfo, value); }  
        }

        private SubstrateHeightMeasureSetting _heightMeasureSetting = new SubstrateHeightMeasureSetting();
        public SubstrateHeightMeasureSetting HeightMeasureSetting
        {
            get { return _heightMeasureSetting; }
            set { SetProperty(ref _heightMeasureSetting, value); }
        }

        public SubstratePoint[,] SubstratePoints { get; set; }

        public SubstrateRecipe(string name) : base(name)
        {
        }
        public SubstrateRecipe() : base()
        {
        }
        
    }
}
