using System.Text.Json.Serialization; namespace Adaptation.FileHandlers.RsM; #nullable enable internal class Row { public Row(Run run, int i) { Title = run.Line1.Title; // FileName = run.Line2.FileName; Project = run.Line2.Project; RecipeName = run.Line2.RecipeName; LotID = run.Line2.LotID; WfrID = run.Line2.WfrID; Is_TF_DataFile = run.Line2.Is_TF_DataFile; // Directory = run.Line3.Directory; // Time = run.Line4.Time; Date = run.Line4.Date; Temp = run.Line4.Temp; TCRPercent = run.Line4.TCRPercent; NOrP = run.Line4.NOrP; // Avg = run.Line4B.Avg; Dev = run.Line4B.Dev; Min = run.Line4B.Min; Max = run.Line4B.Max; // Operator = run.Line5.Operator; Equipment = run.Line5.Equipment; // Engineer = run.Line6.Engineer; // AreaOrDiamScan = run.Line7.AreaOrDiamScan; WaferShape = run.Line7.WaferShape; BNBand = run.Line7.BNBand; TemplateFile = run.Line7.TemplateFile; XSize = run.Line7.XSize; YSize = run.Line7.YSize; CalibrationFactor = run.Line7.CalibrationFactor; MsmtMode = run.Line7.MsmtMode; DataType = run.Line7.DataType; DataUnit = run.Line7.DataUnit; // NumProbePoints = run.Line8.NumProbePoints; SingleOrDualProbeConfig = run.Line8.SingleOrDualProbeConfig; NumberActPrbPts = run.Line8.NumberActPrbPts; Rsens = run.Line8.Rsens; IdrvMx = run.Line8.IdrvMx; VinGain = run.Line8.VinGain; DataRejectSigma = run.Line8.DataRejectSigma; MeritThreshold = run.Line8.MeritThreshold; PrbChgNumber = run.Line8.PrbChgNumber; PrbName = run.Line8.PrbName; // WaferSize = run.Line9.WaferSize; EdgeEx = run.Line9.EdgeEx; Xll = run.Line9.Xll; Yll = run.Line9.Yll; Xur = run.Line9.Xur; Yur = run.Line9.Yur; X = run.Line9.X; Y = run.Line9.Y; CutCorners = run.Line9.CutCorners; // DiamThScan = run.Line10.DiamThScan; DiamStart = run.Line10.DiamStart; DiamEnd = run.Line10.DiamEnd; DiamStep = run.Line10.DiamStep; // FlatOrNotch = run.Line11.FlatOrNotch; FollowMajorFlat = run.Line11.FollowMajorFlat; AutoOrManualLoad = run.Line11.AutoOrManualLoad; RangeOrIndividual = run.Line11.RangeOrIndividual; PauseAfterEveryRun = run.Line11.PauseAfterEveryRun; AutoPrint = run.Line11.AutoPrint; Plot = run.Line11.Plot; BulkSampleThk = run.Line11.BulkSampleThk; Unit = run.Line11.Unit; // RangeFrom = run.Line12.RangeFrom; RangeTo = run.Line12.RangeTo; // CassetteSlotSelected = run.Line13.CassetteSlotSelected; // R = run.Points[i].R; Th = run.Points[i].Th; Data = run.Points[i].Data; Rs = run.Points[i].Rs; RsA = run.Points[i].RsA; RsB = run.Points[i].RsB; NumberSample = run.Points[i].NumberSample; PointX = run.Points[i].X; PointY = run.Points[i].Y; Irng = run.Points[i].Irng; Vrng = run.Points[i].Vrng; ChiSq = run.Points[i].ChiSq; MeritGOF = run.Points[i].MeritGOF; DataIntegrity = run.Points[i].DataIntegrity; } public string Title { get; } // public string FileName { get; } public string Project { get; } public string RecipeName { get; } public string LotID { get; } public string WfrID { get; } public string Is_TF_DataFile { get; } // public string Directory { get; } // public string Time { get; } public string Date { get; } public string Temp { get; } public string TCRPercent { get; } public string NOrP { get; } // public string Avg { get; } public string Dev { get; } public string Min { get; } public string Max { get; } // public string Operator { get; } public string Equipment { get; } // public string Engineer { get; } // public string AreaOrDiamScan { get; } public string WaferShape { get; } public string BNBand { get; } public string TemplateFile { get; } public string XSize { get; } public string YSize { get; } public string CalibrationFactor { get; } public string MsmtMode { get; } public string DataType { get; } public string DataUnit { get; } // public string NumProbePoints { get; } public string SingleOrDualProbeConfig { get; } public string NumberActPrbPts { get; } public string Rsens { get; } public string IdrvMx { get; } public string VinGain { get; } public string DataRejectSigma { get; } public string MeritThreshold { get; } public string PrbChgNumber { get; } public string PrbName { get; } // public string WaferSize { get; } public string EdgeEx { get; } public string Xll { get; } public string Yll { get; } public string Xur { get; } public string Yur { get; } public string X { get; } public string Y { get; } public string CutCorners { get; } // public string DiamThScan { get; } public string DiamStart { get; } public string DiamEnd { get; } public string DiamStep { get; } // public string FlatOrNotch { get; } public string FollowMajorFlat { get; } public string AutoOrManualLoad { get; } public string RangeOrIndividual { get; } public string PauseAfterEveryRun { get; } public string AutoPrint { get; } public string Plot { get; } public string BulkSampleThk { get; } public string Unit { get; } // public string RangeFrom { get; } public string RangeTo { get; } // public string CassetteSlotSelected { get; } // public string R { get; } public string Th { get; } public string Data { get; } public string Rs { get; } public string RsA { get; } public string RsB { get; } public string NumberSample { get; } public string PointX { get; } public string PointY { get; } public string Irng { get; } public string Vrng { get; } public string ChiSq { get; } public string MeritGOF { get; } public string DataIntegrity { get; } } [JsonSourceGenerationOptions(WriteIndented = true)] [JsonSerializable(typeof(Row))] internal partial class RowSourceGenerationContext : JsonSerializerContext { }