Ejemplo n.º 1
0
        /// <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);
        }
Ejemplo n.º 2
0
        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;
            }
        }
Ejemplo n.º 3
0
        private void UpdateVariable(object sender, PropertyChangedEventArgs e)
        {
            GemVariable gemVariable = (GemVariable)sender;

            if (e.PropertyName != "Data")
            {
                return;
            }

            _commProvider.SetVariable(gemVariable.ID, 0, gemVariable.Data);
        }
Ejemplo n.º 4
0
 /// <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);
 }
Ejemplo n.º 5
0
 public GemVariableEventArgs(GemVariable var)
 {
     Variable = var;
     VID      = var.ID;
     Value    = var.Data as ISecsValue;
 }