// stop outputting the pattern started above public void StopPatternOutput() { if (patternRunning) { PatternPlugin pgPlugin = profileManager.CurrentProfile.AcquisitorConfig.pgPlugin; YAGPlugin yagPlugin = profileManager.CurrentProfile.AcquisitorConfig.yagPlugin; yagPlugin.AcquisitionFinished(); pgPlugin.AcquisitionFinished(); controllerWindow.EnableMenus(); patternRunning = false; } }
// outputs the pattern from the currently selected profile - used by BlockHead public void OutputPattern() { if (!patternRunning) { PatternPlugin pgPlugin = profileManager.CurrentProfile.AcquisitorConfig.pgPlugin; YAGPlugin yagPlugin = profileManager.CurrentProfile.AcquisitorConfig.yagPlugin; pgPlugin.AcquisitionStarting(); yagPlugin.AcquisitionStarting(); pgPlugin.ScanStarting(); yagPlugin.ScanStarting(); patternRunning = true; } }
public void SetPatternPlugin(String type) { pgPlugin = PluginRegistry.GetRegistry().GetPatternPlugin(type); pgPlugin.Config = this; }
private void TweakMode(String command) { String[] bits = command.Split(new char[] { ' ' }); if (bits.Length != 3) { manager.Window.WriteLine("Syntax error."); return; } // check if this is a valid parameter to tweak PatternPlugin plugin = manager.CurrentProfile.AcquisitorConfig.pgPlugin; if (!sr.HasField(plugin, bits[1])) { manager.Window.WriteLine("The current profile's pg plugin has no field named " + bits[1]); return; } // is the increment valid int increment = 0; try { increment = Convert.ToInt32(bits[2]); } catch (Exception) { manager.Window.WriteLine("Invalid increment"); return; } manager.Window.WriteLine("Tweaking - i for increment, d for decrement, e for exit."); for (;;) { String s = manager.Window.GetNextLine(); // check if the user wants to exit. Also check if acquisition has stopped. // This is not ideal but should stop anything terrible happening. if (s == "e" | Controller.GetController().appState != Controller.AppState.running) { manager.Window.WriteLine("Exiting tweak mode"); return; } if (s == "i") { manager.Window.WriteLine("Incrementing " + bits[1] + " by " + increment + "."); int oldValue = (int)sr.GetField(plugin, bits[1]); int newValue = oldValue + increment; manager.Window.WriteLine("New value: " + newValue); sr.SetField(plugin, bits[1], newValue.ToString()); manager.FireTweak(new TweakEventArgs(bits[1], newValue)); continue; } if (s == "d") { manager.Window.WriteLine("Decrementing " + bits[1] + " by " + increment + "."); int oldValue = (int)sr.GetField(plugin, bits[1]); int newValue = oldValue - increment; manager.Window.WriteLine("New value: " + newValue); sr.SetField(plugin, bits[1], newValue.ToString()); manager.FireTweak(new TweakEventArgs(bits[1], newValue)); continue; } manager.Window.WriteLine("Syntax error"); } }