/// <summary> /// </summary> /// <param name="aeqp"/> /// <param name="hb"/> /// <param name="state">SETUP/BUSY/IDLERUN/IDLE/WAIT_SETUP(PM/DOUWN 호출 안됨)</param> /// <param name="handled"/> public void LOADING_STATE_CHANGED0(Mozart.SeePlan.Simulation.AoEquipment aeqp, Mozart.SeePlan.Simulation.IHandlingBatch hb, Mozart.SeePlan.Simulation.LoadingStates state, ref bool handled) { var eqp = aeqp.ToFabAoEquipment(); var now = eqp.NowDT; if (eqp.IsParallelChamber) { return; } if (ModelContext.Current.EndTime == now) { return; } //PM/Down 이벤트 예외사항 처리 if (SimHelper.IgnoreStateChange(eqp, state)) { return; } var lot = hb.ToFabLot(); if (state == LoadingStates.SETUP || state == LoadingStates.BUSY) { SetCurrentMask(eqp, lot); } eqp.OnStateChanged(state, lot); }
/// <summary> /// </summary> /// <param name="sheet"/> /// <param name="entity"/> /// <param name="aeqp"/> /// <param name="state"/> /// <returns/> public bool FILTER(Mozart.SeePlan.StatModel.StatSheet <LoadHistory> sheet, Mozart.Simulation.Engine.ISimEntity entity, ActiveObject aeqp, Mozart.SeePlan.Simulation.LoadingStates state) { if (ModelContext.Current.EndTime == aeqp.NowDT && state != LoadingStates.IDLE) { return(true); } return(false); }