public string samples(int mode, long index) { if (mode > 2 || mode == 1) { return(""); } var data = new StringBuilder(); lock (_lock) { foreach (var s in _disks) { FixedSizeQueue <DiskStatQueue> from = s.HistoryForMode(mode); data.Append(string.Format("<item n=\"{0}\" uuid=\"{1}\">", s.name, s.uuid)); var diskSample = from.Last(); if (index == -1) { data.Append(string.Format("<s id=\"{0}\" p=\"{1}\" u=\"{2}\" s=\"{3}\" f=\"{4}\"></s>", diskSample.SampleID, diskSample.percentage, diskSample.used, diskSample.size, diskSample.free)); } else { foreach (var sample in from.Where(c => c.SampleID > index)) { data.Append(string.Format("<s id=\"{0}\" p=\"{1}\" u=\"{2}\" s=\"{3}\" f=\"{4}\"></s>", sample.SampleID, sample.percentage, sample.used, sample.size, sample.free)); } } data.Append("</item>"); } } return(data.ToString()); }
public string samples(int mode, int index) { if (mode > 2) { return(""); } var data = new StringBuilder(); lock (_lock) { foreach (var s in _sensors) { FixedSizeQueue <SensorStatQueue> from = s.HistoryForMode(mode); data.Append(string.Format("<item i=\"0\" n=\"{0}\" type=\"{1}\" uuid=\"{2}\">", s.name, s.type, s.name)); var sensorSample = from.Last(); if (index == -1) { if (sensorSample != null) { data.Append(string.Format("<s id=\"{0}\" v=\"{1}\"></s>", sensorSample.SampleID, sensorSample.Value)); } } else { foreach (var sample in from.Where(c => c.SampleID > index)) { data.Append(string.Format("<s id=\"{0}\" v=\"{1}\"></s>", sample.SampleID, sample.Value)); } } data.Append("</item>"); } } return(data.ToString()); }