//---------------------------------------------------------------------- public void Word(int aIndex, UInt16 aValue) { lock (this) { oldSets.Word(aIndex, newSets.Word(aIndex)); newSets.Word(aIndex, aValue); } }
public void Read() { int i = 0; UInt32 value = 0; lock (this) { if (Type == EAxtDio.DI) { foreach (AxtDioWordModule module in modules) { i = module.ModuleNo * 2; Validate(CAXD.AxdiReadInportWord(module.ModuleNo, module.Offset, ref value)); oldValue.Word(i, nowValue.Word(i)); nowValue.Word(i, (UInt16)value); } foreach (KeyValuePair <int, UlTripState> trip in trips) { if (trip.Value.Tripped(nowValue[trip.Key]) == true) { TripCode = trip.Value.Code; break; } } foreach (KeyValuePair <int, UlRelayTimer> timer in timers) { timer.Value.IN = nowValue[timer.Key]; } } else { foreach (AxtDioWordModule module in modules) { i = module.ModuleNo * 2; Validate(CAXD.AxdoReadOutportWord(module.ModuleNo, module.Offset, ref value)); oldValue.Word(i, nowValue.Word(i)); nowValue.Word(i, (UInt16)value); tempValue.Word(i, (UInt16)value); } } } }