public cCarLocal() { AllStatueCar = new StatueCar[HeiFeiMideaDll.cMain.AllCarCount]; for (int i = 0; i < AllStatueCar.Length; i++) { AllStatueCar[i] = new StatueCar(); } AllStatueLineStation = new StatueLineStation[HeiFeiMideaDll.cMain.AllStopStationCount]; for (int i = 0; i < AllStatueLineStation.Length; i++) { AllStatueLineStation[i] = new StatueLineStation(); AllStatueLineStation[i].LineStationIndex = i + 1; } AllInfoLineStation = new HeiFeiMideaDll.cDataLocal.InfoLineStation[HeiFeiMideaDll.cMain.AllStopStationCount]; for (int i = 0; i < AllInfoLineStation.Length; i++) { AllInfoLineStation[i] = new HeiFeiMideaDll.cDataLocal.InfoLineStation(); AllInfoLineStation[i].WorkStation = i + 1; } AllStatueStation = new StatueStation[HeiFeiMideaDll.cMain.AllComputerShowCount]; for (int i = 0; i < AllStatueStation.Length; i++) { AllStatueStation[i] = new StatueStation(i); AllStatueStation[i].BarCodeChange += cCarLocal_BarCodeChange; } AllStatueOther = new cStatueOther[HeiFeiMideaDll.cMain.AllOtherMachineCount]; for (int i = 0; i < AllStatueOther.Length; i++) { AllStatueOther[i] = new cStatueOther(i + 1); } AllStatueLengNinQi = new StatueLengNinQi(); }
/// <summary> /// 将读取到的小车状态转化为工位状态 /// </summary> /// <param name="car"></param> public static StatueLineStation GetStatueFromCar(StatueCar car) { StatueLineStation ss = new StatueLineStation(); if (car.WorkLineStation > 0) { ss.HaveCar = true; } bool[] tmpBool = All.Class.Num.Ushort2Bool(car.S0); ss.LineStationIndex = car.WorkLineStation; ss.Error = (car.E0 > 0); ss.HaveMachine = tmpBool[10]; ss.OK = !tmpBool[8]; ss.Level = tmpBool[9]; ss.Test = tmpBool[5]; ss.TestOver = tmpBool[6]; ss.BarCode = car.BarCode; return(ss); }