Пример #1
0
        public void RegisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID, HomeSimCockpitSDK.VariableType type)
        {
            Key key = Array.Find <Key>(LoadConfiguration().Keys, delegate(Key o)
            {
                return(o.ID == variableID);
            });

            if (type == HomeSimCockpitSDK.VariableType.Bool && key != null)
            {
                key.VariableChanged += listenerMethod;
            }
            else
            {
                key = Array.Find <Key>(LoadConfiguration().Keys, delegate(Key o)
                {
                    return(o.HasFastDetection && o.IDFast == variableID);
                });
                if (type == HomeSimCockpitSDK.VariableType.Bool && key != null)
                {
                    key.VariableChangedFast += listenerMethod;
                }
                else
                {
                    throw new Exception(string.Format("Brak zmiennej o identyfikatorze '{0}' i type '{1}'.", variableID, type));
                }
            }
        }
Пример #2
0
 public void UnregisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID)
 {
     if (_variablesListeners.ContainsKey(variableID))
     {
         _variablesListeners[variableID].Signal -= listenerMethod;
     }
 }
Пример #3
0
 public virtual void UnregisterListener(string variableId, HomeSimCockpitSDK.VariableChangeSignalDelegate listener)
 {
     if (ID == variableId)
     {
         VariableChanged -= listener;
     }
 }
Пример #4
0
        public void UnregisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID)
        {
            string [] tmp = variableID.Split(new char [] { ':' });
            if (tmp.Length > 1)
            {
                Device device = GetDevice(tmp[0]);
                if (device == null)
                {
                    throw new Exception(string.Format("Device '{0}' not found.", tmp[0]));
                }

                Input input = Array.Find <Input>(device.Variables, delegate(Input o)
                {
                    return(o.ID == variableID);
                });
                if (input == null)
                {
                    throw new Exception(string.Format("Variable '{0}' not found.", variableID));
                }

                input.VariableChangedEvent -= listenerMethod;
            }
            else
            {
                throw new Exception(string.Format("Unknown variable ID '{0}'.", variableID));
            }
        }
Пример #5
0
        public TestDialog(SkalarkiIO skalarkiIO, ModulesConfiguration configuration)
        {
            //
            // The InitializeComponent() call is required for Windows Forms designer support.
            //
            InitializeComponent();

            _configuration = configuration;

            // pokazanie urządzeń
            foreach (Device d in _configuration.Devices)
            {
                ListViewItem item = new ListViewItem(d.Id);
                item.SubItems.Add("");
                item.Tag = d;
                listView1.Items.Add(item);
            }

            // pokazanie wejść
            foreach (DigitalInput di in _configuration.DigitalInputs)
            {
                int r = dataGridView1.Rows.Add(di.ID, di.Description, false.ToString());
                dataGridView1.Rows[r].Tag = di;
            }
            dataGridView1.PerformLayout();

            // pokazanie wyjść
            foreach (DigitalOutput _do in _configuration.DigitalOutputs)
            {
                int r = dataGridView2.Rows.Add(_do.ID, _do.Description, false);
                dataGridView2.Rows[r].Tag = _do;
            }
            dataGridView2.PerformLayout();

            // pokazanie wyświetlaczy
            foreach (LED7DisplayOutput led in _configuration.LED7DisplayOutputs)
            {
                int r = dataGridView3.Rows.Add(led.ID, led.Description, "");
                dataGridView3.Rows[r].Tag = led;
            }
            dataGridView3.PerformLayout();

            // pokazanie dodatkowych zmiennych
            List <OutputVariable> outputs = new List <OutputVariable>();

            foreach (Device d in _configuration.Devices)
            {
                outputs.AddRange(d.DeviceOutputVariables);
            }
            foreach (OutputVariable ov in outputs)
            {
                int r = dataGridView4.Rows.Add(ov.ID, ov.Description, ov.Type, "");
                dataGridView4.Rows[r].Tag = ov;
            }

            Working      = false;
            _inputsEvent = new HomeSimCockpitSDK.VariableChangeSignalDelegate(InputEvent);
            _skalarkiIO  = skalarkiIO;
        }
Пример #6
0
 protected virtual void OnChangeValue(object value)
 {
     HomeSimCockpitSDK.VariableChangeSignalDelegate variableChanged = VariableChanged;
     if (variableChanged != null)
     {
         variableChanged(Module, ID, value);
     }
 }
Пример #7
0
 public void RegisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID, HomeSimCockpitSDK.VariableType type)
 {
     if (!_variablesListeners.ContainsKey(variableID))
     {
         VariableEvent ve = new VariableEvent();
         _variablesListeners.Add(variableID, ve);
     }
     _variablesListeners[variableID].Signal += listenerMethod;
 }
Пример #8
0
 public void SetValue(object value)
 {
     _value = value;
     HomeSimCockpitSDK.VariableChangeSignalDelegate variableChanged = VariableChanged;
     if (VariableChanged != null)
     {
         VariableChanged(Module, ID, value);
     }
 }
Пример #9
0
 public virtual void UnregisterListener(string variableId, HomeSimCockpitSDK.VariableChangeSignalDelegate listener)
 {
     if (ID == variableId)
     {
         if (_listeners.Contains(listener))
         {
             _listeners.Remove(listener);
         }
         VariableChanged -= listener;
     }
 }
Пример #10
0
 public virtual void RegisterListener(string variableId, HomeSimCockpitSDK.VariableChangeSignalDelegate listener)
 {
     if (ID == variableId)
     {
         if (!_listeners.Contains(listener))
         {
             _listeners.Add(listener);
         }
         VariableChanged += listener;
     }
 }
Пример #11
0
 public void UnregisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID)
 {
     foreach (InputVariable v in _inputs)
     {
         if (v.ID == variableID)
         {
             v.VariableChanged -= listenerMethod;
             return;
         }
     }
     throw new Exception(string.Format("Brak zmiennej o identyfikatorze '{0}'.", variableID));
 }
 public void RegisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID, HomeSimCockpitSDK.VariableType type)
 {
     foreach (InputVariable v in _inputs)
     {
         if (v.ExistsVariable(variableID, type))
         {
             v.RegisterListener(variableID, listenerMethod);
             return;
         }
     }
     throw new Exception(string.Format("Brak zmiennej o identyfikatorze '{0}' i type '{1}'.", variableID, type));
 }
Пример #13
0
 public void UnregisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID)
 {
     foreach (PMDGVariable v in _variables)
     {
         if (v.ID == variableID)
         {
             v.VariableChanged -= listenerMethod;
             return;
         }
     }
     throw new Exception("Brak zmiennej o identyfikatorze '" + variableID + "'.");
 }
Пример #14
0
 public void RegisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID, HomeSimCockpitSDK.VariableType type)
 {
     foreach (PMDGVariable v in _variables)
     {
         if (v.ID == variableID && v.Type == type)
         {
             v.VariableChanged += listenerMethod;
             return;
         }
     }
     throw new Exception(string.Format("Brak zmiennej o identyfikatorze '{0}' i type '{1}'.", variableID, type));
 }
Пример #15
0
 public void RegisterListenerForVariable(HomeSimCockpitSDK.VariableChangeSignalDelegate listenerMethod, string variableID, HomeSimCockpitSDK.VariableType type)
 {
     if (type != HomeSimCockpitSDK.VariableType.Int)
     {
         throw new Exception(string.Format("Nieobsługiwany typ '{0}' zmiennej '{1}'.", type, variableID));
     }
     if (!_variablesListeners.ContainsKey(variableID))
     {
         VariableEvent ve = new VariableEvent(variableID);
         _variablesListeners.Add(variableID, ve);
     }
     _variablesListeners[variableID].Signal += listenerMethod;
 }
Пример #16
0
        public TestForm(Class1 parent, Class1.Variable [] inputVariables, Class1.Variable [] outputVariables)
        {
            InitializeComponent();

            _parent = parent;
            _parentStartWorkingHandler = new EventHandler(_parent_StartWorking);
            _parent.StartWorking      += _parentStartWorkingHandler;
            _parentStopWorkingHandler  = new EventHandler(_parent_StopWorking);
            _parent.StopWorking       += _parentStopWorkingHandler;
            splitContainer1.Enabled    = _parent.IsWorking;
            _inputs  = inputVariables;
            _outputs = outputVariables;

            _variableChangedEvent = new HomeSimCockpitSDK.VariableChangeSignalDelegate(b_VariableChanged);

            PokazZmienneBool();
            PokazZmienneInt();
            PokazZmienneDouble();
            PokazZmienneString();
        }