WMI/Hardware.cs
author moel.mich
Mon, 02 Jan 2012 20:45:18 +0000
changeset 329 756af5ee409e
parent 234 99fad54de9f7
child 344 3145aadca3d2
permissions -rw-r--r--
Small corrections for AMD family 15h CPUs (based on documentation).
paulwerelds@224
     1
/*
paulwerelds@224
     2
  
paulwerelds@224
     3
  Version: MPL 1.1/GPL 2.0/LGPL 2.1
paulwerelds@224
     4
paulwerelds@224
     5
  The contents of this file are subject to the Mozilla Public License Version
paulwerelds@224
     6
  1.1 (the "License"); you may not use this file except in compliance with
paulwerelds@224
     7
  the License. You may obtain a copy of the License at
paulwerelds@224
     8
 
paulwerelds@224
     9
  http://www.mozilla.org/MPL/
paulwerelds@224
    10
paulwerelds@224
    11
  Software distributed under the License is distributed on an "AS IS" basis,
paulwerelds@224
    12
  WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
paulwerelds@224
    13
  for the specific language governing rights and limitations under the License.
paulwerelds@224
    14
paulwerelds@224
    15
  The Original Code is the Open Hardware Monitor code.
paulwerelds@224
    16
paulwerelds@224
    17
  The Initial Developer of the Original Code is 
paulwerelds@224
    18
  Paul Werelds <paul@werelds.net>.
paulwerelds@224
    19
  Portions created by the Initial Developer are Copyright (C) 2009-2010
paulwerelds@224
    20
  the Initial Developer. All Rights Reserved.
paulwerelds@224
    21
paulwerelds@224
    22
  Contributor(s):
paulwerelds@224
    23
paulwerelds@224
    24
  Alternatively, the contents of this file may be used under the terms of
paulwerelds@224
    25
  either the GNU General Public License Version 2 or later (the "GPL"), or
paulwerelds@224
    26
  the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
paulwerelds@224
    27
  in which case the provisions of the GPL or the LGPL are applicable instead
paulwerelds@224
    28
  of those above. If you wish to allow use of your version of this file only
paulwerelds@224
    29
  under the terms of either the GPL or the LGPL, and not to allow others to
paulwerelds@224
    30
  use your version of this file under the terms of the MPL, indicate your
paulwerelds@224
    31
  decision by deleting the provisions above and replace them with the notice
paulwerelds@224
    32
  and other provisions required by the GPL or the LGPL. If you do not delete
paulwerelds@224
    33
  the provisions above, a recipient may use your version of this file under
paulwerelds@224
    34
  the terms of any one of the MPL, the GPL or the LGPL.
paulwerelds@224
    35
 
paulwerelds@224
    36
*/
paulwerelds@224
    37
paulwerelds@224
    38
using System.Management.Instrumentation;
paulwerelds@223
    39
using OpenHardwareMonitor.Hardware;
paulwerelds@223
    40
paulwerelds@227
    41
namespace OpenHardwareMonitor.WMI {
paulwerelds@223
    42
  [InstrumentationClass(InstrumentationType.Instance)]
paulwerelds@224
    43
  public class Hardware : IWmiObject {
paulwerelds@224
    44
    #region WMI Exposed
paulwerelds@224
    45
    
paulwerelds@223
    46
    public string HardwareType { get; private set; }
paulwerelds@223
    47
    public string Identifier { get; private set; }
paulwerelds@223
    48
    public string Name { get; private set; }
paulwerelds@234
    49
    public string Parent { get; private set; }
paulwerelds@223
    50
paulwerelds@224
    51
    #endregion
paulwerelds@224
    52
paulwerelds@223
    53
    public Hardware(IHardware hardware) {
paulwerelds@223
    54
      Name = hardware.Name;
paulwerelds@223
    55
      Identifier = hardware.Identifier.ToString();
paulwerelds@223
    56
      HardwareType = hardware.HardwareType.ToString();
paulwerelds@235
    57
      Parent = (hardware.Parent != null)
paulwerelds@235
    58
        ? hardware.Parent.Identifier.ToString()
paulwerelds@235
    59
        : "";
paulwerelds@223
    60
    }
paulwerelds@223
    61
paulwerelds@223
    62
    public void Update() { }
paulwerelds@223
    63
  }
paulwerelds@223
    64
}