Ejemplo n.º 1
0
 /// <summary>
 /// Returns the list with the keys of implemented structures.
 /// </summary>
 /// <value>
 /// List of structures implemented.
 /// </value>
 public static ReadOnlyCollection <SmbiosStructure> GetImplementedStructureKeys()
 {
     return
         (RawStructures
          .OrderBy(structure => structure.Key)
          .Select(rawStructure => rawStructure.Key)
          .ToList()
          .AsReadOnly());
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Returns the structures grouped by unprocessed type.
        /// </summary>
        /// <param name="data">Structures not processed without grouping.</param>
        private static void ToRawStructures(IEnumerable <byte[]> data)
        {
            if (RawStructures.Count != 0)
            {
                RawStructures.Clear();
            }

            foreach (byte[] rawTable in data)
            {
                SmbiosStructure structureType = (SmbiosStructure)rawTable[0];
                if (RawStructures.ContainsKey(structureType))
                {
                    RawStructures[structureType].Add(rawTable);
                }
                else
                {
                    RawStructures.Add(structureType, new List <byte[]> {
                        rawTable
                    });
                }
            }
        }