コード例 #1
0
        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);
        }
コード例 #2
0
 /// <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();
     }
 }
コード例 #3
0
 /// <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();
     }
 }
コード例 #4
0
 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;
 }