public static void ExecutePythonEvery(this Machine machine, string name, int milliseconds, string script) { var engine = new ExecutorPythonEngine(machine, script); var clockEntry = new ClockEntry(milliseconds, ClockEntry.FrequencyToRatio(machine, 1000), engine.Action); machine.ObtainClockSource().AddClockEntry(clockEntry); events.Add(machine, name, engine.Action); machine.StateChanged += (m, s) => UnregisterEvent(m, name, s); }
public static void ExecutePythonEvery(this Machine machine, string name, int milliseconds, string script) { var engine = new ExecutorPythonEngine(machine, script); var clockEntry = new ClockEntry((ulong)milliseconds, 1000, engine.Action, machine, name); machine.ClockSource.AddClockEntry(clockEntry); events.Add(machine, name, engine.Action); machine.StateChanged += (m, s) => UnregisterEvent(m, name, s); }