Ejemplo n.º 1
0
        private void InitialiseSharpPlugins()
        {
            _sharpControlProxy = new SharpControlProxy(this);
            var sharpPlugins = (NameValueCollection) ConfigurationManager.GetSection("sharpPlugins");

            if (sharpPlugins == null)
            {
                MessageBox.Show(
                    "Configuration section 'sharpPlugins' was not found. Please check 'SDRSharp.exe.config'.", "Warning",
                    MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                return;
            }
        
            foreach (string key in sharpPlugins.Keys)
            {
                try
                {
                    var fullyQualifiedTypeName = sharpPlugins[key];
                    var patterns = fullyQualifiedTypeName.Split(',');
                    var typeName = patterns[0];
                    var assemblyName = patterns[1];
                    var objectHandle = Activator.CreateInstance(assemblyName, typeName);
                    var plugin = (ISharpPlugin) objectHandle.Unwrap();

                    _sharpPlugins.Add(key, plugin);

                    plugin.Initialize(_sharpControlProxy);
                    if (plugin.HasGui)
                    {
                        CreatePluginCollapsiblePanel(plugin);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error loading '" + sharpPlugins[key] + "' - " + ex.Message);
                }
            }

            var collapsiblePanelStates = Utils.GetIntArraySetting("collapsiblePanelStates", null);
            if (collapsiblePanelStates != null)
            {
                CollapsiblePanel.CollapsiblePanel currentPanel = radioCollapsiblePanel;
                for (var i = 0; i < collapsiblePanelStates.Length && currentPanel != null; i++)
                {
                    currentPanel.PanelState = (CollapsiblePanel.PanelStateOptions)collapsiblePanelStates[i];
                    currentPanel = currentPanel.NextPanel;
                }
            }
        }
Ejemplo n.º 2
0
 public MainForm()
 {
     this._hookManager = new HookManager();
       this._hookManager.RegisterStreamHook((object) this._iqBalancerProcessor, ProcessorType.RawIQ);
       this._streamControl = new StreamControl(this._hookManager);
       this._vfo = new Vfo(this._hookManager);
       this._sharpControlProxy = new SharpControlProxy(this);
       this.InitializeComponent();
       this.InitializeGUI();
 }