Exemplo n.º 1
0
        private UnitedSensorValue GetIntegerDataObject(List <int> values, DateTime barStartTime, DateTime barEndTime)
        {
            UnitedSensorValue result = new UnitedSensorValue();

            FillCommonData(result, barStartTime);
            IntBarData barData = new IntBarData();

            barData.LastValue = values.Any() ? values.Last() : 0;
            FillNumericData(barData, values);
            barData.StartTime = barStartTime.ToUniversalTime();
            barData.EndTime   = barEndTime.ToUniversalTime();
            result.Data       = JsonConvert.SerializeObject(barData);
            return(result);
        }
Exemplo n.º 2
0
        private void FillNumericData(IntBarData data, List <int> values)
        {
            if (values.Any())
            {
                values.Sort();
                data.Max   = values.Last();
                data.Min   = values.First();
                data.Count = values.Count;
                data.Mean  = CountMean(values);
                data.Percentiles.Add(new PercentileValueInt(GetPercentile(values, 0.25), 0.25));
                data.Percentiles.Add(new PercentileValueInt(GetPercentile(values, 0.5), 0.5));
                data.Percentiles.Add(new PercentileValueInt(GetPercentile(values, 0.75), 0.75));
                return;
            }

            data.Max   = 0;
            data.Min   = 0;
            data.Count = 0;
            data.Mean  = 0;
        }