public override void Trigger(TriggeringEvent dogadjaj, Module modul) { if (triggered >= 0) { foreach (var item in selectedActions) { logger.Info("{0} executed script: {1}!!!", this.Name, item.Name); item.Execute(modul); } triggered++; } }
public override bool InterestedInEvent(TriggeringEvent myEvent) { if (myEvent.Type == TriggeringEventType.ModuleEvent) { if ((myEvent.Pin == pinNo) && (myEvent.AnalogValue > pinValue)) { return true; } else return false; } else return base.InterestedInEvent(myEvent); }
public abstract void Trigger(TriggeringEvent myEvent, Module modul);
public virtual bool InterestedInEvent(TriggeringEvent myEvent) { return false; }
// HELPER METHODS private void timer1_Tick(object sender, EventArgs e) { if (triggerEngine.Triggers.Count > 0) { if (myEvent != null) { ProcessDogadjaj(myEvent); } myEvent = new TriggeringEvent(TriggeringEventType.TimeEvent, DateTime.Now); ProcessDogadjaj(myEvent); } }
private void ProcessDogadjaj(TriggeringEvent dogadjaj) { foreach (BaseTrigger item in triggerEngine.Triggers) { if (item.InterestedInEvent(dogadjaj)) { item.Trigger(dogadjaj,mdl); break; } } }
void InputDigitalPinUpdated(Module sender, int pin, bool value, bool onDevice) { if (onDevice) { switch (pin) { case 0: if (value) { btnI0D.Text = "ON"; btnI0D.BackColor = Color.LightGreen; } else { btnI0D.Text = "OFF"; btnI0D.BackColor = Color.Red; } break; case 1: if (value) { btnI1D.Text = "ON"; btnI1D.BackColor = Color.LightGreen; } else { btnI1D.Text = "OFF"; btnI1D.BackColor = Color.Red; } break; case 2: if (value) { btnI2D.Text = "ON"; btnI2D.BackColor = Color.LightGreen; } else { btnI2D.Text = "OFF"; btnI2D.BackColor = Color.Red; } break; case 3: if (value) { btnI3D.Text = "ON"; btnI3D.BackColor = Color.LightGreen; } else { btnI3D.Text = "OFF"; btnI3D.BackColor = Color.Red; } break; case 4: if (value) { btnI4D.Text = "ON"; btnI4D.BackColor = Color.LightGreen; } else { btnI4D.Text = "OFF"; btnI4D.BackColor = Color.Red; } break; case 5: if (value) { btnI5D.Text = "ON"; btnI5D.BackColor = Color.LightGreen; } else { btnI5D.Text = "OFF"; btnI5D.BackColor = Color.Red; } break; case 6: if (value) { btnI6D.Text = "ON"; btnI6D.BackColor = Color.LightGreen; } else { btnI6D.Text = "OFF"; btnI6D.BackColor = Color.Red; } break; case 7: if (value) { btnI7D.Text = "ON"; btnI7D.BackColor = Color.LightGreen; } else { btnI7D.Text = "OFF"; btnI7D.BackColor = Color.Red; } break; } myEvent = new TriggeringEvent(TriggeringEventType.ModuleEvent, pin, value); logger.Info("Digital INPUT pin: " + pin.ToString() + ", STATE changed to: " + value.ToString()); } }
public override bool InterestedInEvent(TriggeringEvent myEvent) { if (myEvent.Type == TriggeringEventType.TimeEvent) { if ((myEvent.Time.Hour == triggerTime.Hour) && (myEvent.Time.Minute == triggerTime.Minute)) { return true; } else return false; } else return base.InterestedInEvent(myEvent); }
public override void Trigger(TriggeringEvent dogadjaj, Module modul) { triggered = false; switch (runMode) { case TimeTriggerType.Continuous: foreach (var item in selectedActions) { logger.Info("Trigger: {0}, executed script: {1}!!!", this.Name, item.Name); item.Execute(modul); } triggered = true; break; case TimeTriggerType.RunOnce: if (!triggered) { foreach (var item in selectedActions) { logger.Info("Trigger: {0}, executed script: {1}!!!", this.Name, item.Name); item.Execute(modul); } triggered = true; TriggerAt = DateTime.Now.AddMinutes(2); } break; } }