Ejemplo n.º 1
0
        public void UpdateStatus(int value)
        {
            int  i       = 0;
            bool changed = false;

            var s = new DeviceStatus();

            foreach (var p in Status)
            {
                var b = (value & (1 << i)) == 0 ? 0 : 1;
                if (b != p.Value)
                {
                    changed = true;
                }
                s.Add(p.Key, b);
            }
            if (changed)
            {
                Status = s;
                Changed?.Invoke(this, value);
            }
        }