Example #1
0
        private void SetLoad(int load, ProcessLoad[] loads)
        {
            //TODO: lock
            if (_coreData.ThisDevice?.KPIs != null)
            {
                var kpis = _coreData.ThisDevice.KPIs;
                var cpu  = _coreData.GetOrCreate(() => kpis.Cpu, v => kpis.Cpu = v);
                cpu.Load = load;

                if (load < 75)
                {
                    cpu.State = IndicatorState.Ok;
                }
                else if (load < 90)
                {
                    cpu.State = IndicatorState.Warning;
                }
                else
                {
                    cpu.State = IndicatorState.Error;
                }

                if (loads != null)
                {
                    cpu.Top = loads;
                }
            }
        }