using System.Text.Json.Serialization; namespace Adaptation.FileHandlers.pcl; #nullable enable internal class Row { public Row(Run run, int i) { Index = i; // Date = run.Header.Date; Recipe = run.Header.Recipe; Id = run.Header.Id; // WaferId = run.Header.WaferSummary[i].Id; LPDCount = run.Header.WaferSummary[i].LPDCount; LPDCM2 = run.Header.WaferSummary[i].LPDCM2; AreaCount = run.Header.WaferSummary[i].AreaCount; AreaTotal = run.Header.WaferSummary[i].AreaTotal; ScratchCount = run.Header.WaferSummary[i].ScratchCount; ScratchTotal = run.Header.WaferSummary[i].ScratchTotal; SumOfDefects = run.Header.WaferSummary[i].SumOfDefects; HazeRegion = run.Header.WaferSummary[i].HazeRegion; HazeAverage = run.Header.WaferSummary[i].HazeAverage; Grade = run.Header.WaferSummary[i].Grade; // LPDCountMin = run.Header.LPDCountMin; LPDCM2Min = run.Header.LPDCM2Min; AreaCountMin = run.Header.AreaCountMin; AreaTotalMin = run.Header.AreaTotalMin; ScratchCountMin = run.Header.ScratchCountMin; ScratchTotalMin = run.Header.ScratchTotalMin; SumOfDefectsMin = run.Header.SumOfDefectsMin; HazeRegionMin = run.Header.HazeRegionMin; HazeAverageMin = run.Header.HazeAverageMin; LPDCountMax = run.Header.LPDCountMax; LPDCM2Max = run.Header.LPDCM2Max; AreaCountMax = run.Header.AreaCountMax; AreaTotalMax = run.Header.AreaTotalMax; ScratchCountMax = run.Header.ScratchCountMax; ScratchTotalMax = run.Header.ScratchTotalMax; SumOfDefectsMax = run.Header.SumOfDefectsMax; HazeRegionMax = run.Header.HazeRegionMax; HazeAverageMax = run.Header.HazeAverageMax; LPDCountAvg = run.Header.LPDCountAvg; LPDCM2Avg = run.Header.LPDCM2Avg; AreaCountAvg = run.Header.AreaCountAvg; AreaTotalAvg = run.Header.AreaTotalAvg; ScratchCountAvg = run.Header.ScratchCountAvg; ScratchTotalAvg = run.Header.ScratchTotalAvg; SumOfDefectsAvg = run.Header.SumOfDefectsAvg; HazeRegionAvg = run.Header.HazeRegionAvg; HazeAverageAvg = run.Header.HazeAverageAvg; LPDCountStdDev = run.Header.LPDCountStdDev; LPDCM2StdDev = run.Header.LPDCM2StdDev; AreaCountStdDev = run.Header.AreaCountStdDev; AreaTotalStdDev = run.Header.AreaTotalStdDev; ScratchCountStdDev = run.Header.ScratchCountStdDev; ScratchTotalStdDev = run.Header.ScratchTotalStdDev; SumOfDefectsStdDev = run.Header.SumOfDefectsStdDev; HazeRegionStdDev = run.Header.HazeRegionStdDev; HazeAverageStdDev = run.Header.HazeAverageStdDev; // WaferDate = run.Wafers[i].Date; Comments = run.Wafers[i].Comments; Sort = run.Wafers[i].Sort; WaferLPDCount = run.Wafers[i].LPDCount; WaferLPDCM2 = run.Wafers[i].LPDCM2; Bin1 = run.Wafers[i].Bin1; Bin2 = run.Wafers[i].Bin2; Bin3 = run.Wafers[i].Bin3; Bin4 = run.Wafers[i].Bin4; Bin5 = run.Wafers[i].Bin5; Bin6 = run.Wafers[i].Bin6; Bin7 = run.Wafers[i].Bin7; Bin8 = run.Wafers[i].Bin8; Mean = run.Wafers[i].Mean; StdDev = run.Wafers[i].StdDev; WaferAreaCount = run.Wafers[i].AreaCount; WaferAreaTotal = run.Wafers[i].AreaTotal; WaferScratchCount = run.Wafers[i].ScratchCount; WaferScratchTotal = run.Wafers[i].ScratchTotal; WaferSumOfDefects = run.Wafers[i].SumOfDefects; WaferHazeRegion = run.Wafers[i].HazeRegion; WaferHazeAverage = run.Wafers[i].HazeAverage; HazePeak = run.Wafers[i].HazePeak; Laser = run.Wafers[i].Laser; Gain = run.Wafers[i].Gain; Diameter = run.Wafers[i].Diameter; Thresh = run.Wafers[i].Thresh; Exclusion = run.Wafers[i].Exclusion; HazeRng = run.Wafers[i].HazeRng; Thruput = run.Wafers[i].Thruput; WaferRecipe = run.Wafers[i].Recipe; } public int Index { get; } // public string Date { get; } public string Recipe { get; } public string Id { get; } // public string WaferId { get; } public string LPDCount { get; } public string LPDCM2 { get; } public string AreaCount { get; } public string AreaTotal { get; } public string ScratchCount { get; } public string ScratchTotal { get; } public string SumOfDefects { get; } public string HazeRegion { get; } public string HazeAverage { get; } public string Grade { get; } // public string LPDCountMin { get; } public string LPDCM2Min { get; } public string AreaCountMin { get; } public string AreaTotalMin { get; } public string ScratchCountMin { get; } public string ScratchTotalMin { get; } public string SumOfDefectsMin { get; } public string HazeRegionMin { get; } public string HazeAverageMin { get; } public string LPDCountMax { get; } public string LPDCM2Max { get; } public string AreaCountMax { get; } public string AreaTotalMax { get; } public string ScratchCountMax { get; } public string ScratchTotalMax { get; } public string SumOfDefectsMax { get; } public string HazeRegionMax { get; } public string HazeAverageMax { get; } public string LPDCountAvg { get; } public string LPDCM2Avg { get; } public string AreaCountAvg { get; } public string AreaTotalAvg { get; } public string ScratchCountAvg { get; } public string ScratchTotalAvg { get; } public string SumOfDefectsAvg { get; } public string HazeRegionAvg { get; } public string HazeAverageAvg { get; } public string LPDCountStdDev { get; } public string LPDCM2StdDev { get; } public string AreaCountStdDev { get; } public string AreaTotalStdDev { get; } public string ScratchCountStdDev { get; } public string ScratchTotalStdDev { get; } public string SumOfDefectsStdDev { get; } public string HazeRegionStdDev { get; } public string HazeAverageStdDev { get; } // public string WaferDate { get; } public string Comments { get; } public string Sort { get; } public string WaferLPDCount { get; } public string WaferLPDCM2 { get; } public string Bin1 { get; } public string Bin2 { get; } public string Bin3 { get; } public string Bin4 { get; } public string Bin5 { get; } public string Bin6 { get; } public string Bin7 { get; } public string Bin8 { get; } public string Mean { get; } public string StdDev { get; } public string WaferAreaCount { get; } public string WaferAreaTotal { get; } public string WaferScratchCount { get; } public string WaferScratchTotal { get; } public string WaferSumOfDefects { get; } public string WaferHazeRegion { get; } public string WaferHazeAverage { get; } public string HazePeak { get; } public string Laser { get; } public string Gain { get; } public string Diameter { get; } public string Thresh { get; } public string Exclusion { get; } public string HazeRng { get; } public string Thruput { get; } public string WaferRecipe { get; } } [JsonSourceGenerationOptions(WriteIndented = true)] [JsonSerializable(typeof(Row))] internal partial class RowSourceGenerationContext : JsonSerializerContext { }