public static ResourceRecord QueryDeviceResources(EDevice device) { var recs = DeviceRecords; string devName = device.ToString(); var hit = recs.device .Where(d => d.name == devName) .FirstOrDefault(); if (hit == null) { return(null); } var result = new ResourceRecord() { Device = device }; foreach (var resrec in hit.providedResources) { EDeviceResource res; if (DeviceResources.ResolveResourceType(resrec.name, out res)) { result.AssignResource(res, resrec.amount); } } return(result); }
/// <summary> /// Parses the resource utilization. /// </summary> /// <param name="reportPath">path to PAR report</param> /// <param name="rec">resource record to receive the parsed information</param> public static void ParseUtilization(string reportPath, ResourceRecord rec) { using (var rd = new StreamReader(reportPath)) { while (!rd.EndOfStream) { string line = rd.ReadLine(); EDeviceResource res; int count, total; if (MatchLine(line, out res, out count, out total)) { rec.AssignResource(res, count); } } rd.Close(); } }
/// <summary> /// Parses the device-specific totals of each resource type. /// </summary> /// <param name="reportPath">path to PAR report</param> /// <param name="rec">resource record to receive the parsed information</param> public static void ParseTotals(string reportPath, ResourceRecord rec) { using (var rd = new StreamReader(reportPath)) { while (!rd.EndOfStream) { string line = rd.ReadLine(); EDeviceResource res; int count, total; if (MatchLine(line, out res, out count, out total)) { rec.AssignResource(res, total); } } rd.Close(); } }
public static ResourceRecord QueryDeviceResources(EDevice device) { var recs = DeviceRecords; string devName = device.ToString(); var hit = recs.device .Where(d => d.name == devName) .FirstOrDefault(); if (hit == null) return null; var result = new ResourceRecord() { Device = device }; foreach (var resrec in hit.providedResources) { EDeviceResource res; if (DeviceResources.ResolveResourceType(resrec.name, out res)) { result.AssignResource(res, resrec.amount); } } return result; }