/// <summary> /// Конструктор /// </summary> /// <param name="id">ID контроллера в БД</param> /// <param name="port">Номер выхода</param> /// <param name="normState">Нормальное состояние датчика</param> /// <param name="state">Текущее состояние датчика</param> public Sensor(String id, Int32 port, Boolean normState, Boolean state, MOXAController contr) { IdSensor = id; Port = port; NormalState = normState; State = state; Controller = contr; CheckStatusTimer.Interval = Controller.GetPing(); CheckStatusTimer.Elapsed += new ElapsedEventHandler(CheckStatus); }
// Добавить датчик и контроллер void AddSensor(String id, Int32 port, Boolean state, Boolean normalState, String ip, String pass, Int32 ping) { // Если данного IP нет в списке, то добавляем контроллер int temp = ControllerList.FindIndex(ctr => ctr.GetIPAddress() == ip); if (temp != -1) { SensorList.Add(new Sensor(id, port, normalState, state, ControllerList[temp])); } else { MOXAController contr = new MOXAController(ip, pass, ping); SensorList.Add(new Sensor(id, port, normalState, state, contr)); ControllerList.Add(contr); } }