/// <summary> /// Adds a Gem variable of interest. /// </summary> /// <param name="variable">The Gem variable.</param> public void AddVariable(GemVariable variable) { _dataStore.Add(variable.ID, variable); variable.PropertyChanged += UpdateVariable; _commProvider.AddVariable(variable); }
private void OnVariableChanged(object sender, GemVariableEventArgs e) { GemVariable variable = _dataStore[e.VID] as GemVariable; if (variable == null) { return; } variable.PropertyChanged -= UpdateVariable; try { e.Variable = variable; variable.Data = e.Value; EventHandler <GemVariableEventArgs> varChanged = VariableChanged; if (varChanged != null) { varChanged(this, e); } } finally { variable.PropertyChanged += UpdateVariable; } }
private void UpdateVariable(object sender, PropertyChangedEventArgs e) { GemVariable gemVariable = (GemVariable)sender; if (e.PropertyName != "Data") { return; } _commProvider.SetVariable(gemVariable.ID, 0, gemVariable.Data); }
/// <summary> /// Adds a variable GEM item. /// </summary> /// <param name="var">The variable.</param> public void AddVariable(GemVariable var) { //TODO gemClient.InitGemVid(var.ID, var.GetClass(), var.Format, var.Name, var.Length, var.Units, null, null, null); }
public GemVariableEventArgs(GemVariable var) { Variable = var; VID = var.ID; Value = var.Data as ISecsValue; }