moel@130: /* moel@130: moel@130: Version: MPL 1.1/GPL 2.0/LGPL 2.1 moel@130: moel@130: The contents of this file are subject to the Mozilla Public License Version moel@130: 1.1 (the "License"); you may not use this file except in compliance with moel@130: the License. You may obtain a copy of the License at moel@130: moel@130: http://www.mozilla.org/MPL/ moel@130: moel@130: Software distributed under the License is distributed on an "AS IS" basis, moel@130: WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License moel@130: for the specific language governing rights and limitations under the License. moel@130: moel@130: The Original Code is the Open Hardware Monitor code. moel@130: moel@130: The Initial Developer of the Original Code is moel@130: Michael Möller . moel@323: Portions created by the Initial Developer are Copyright (C) 2009-2011 moel@130: the Initial Developer. All Rights Reserved. moel@130: moel@130: Contributor(s): moel@130: moel@130: Alternatively, the contents of this file may be used under the terms of moel@130: either the GNU General Public License Version 2 or later (the "GPL"), or moel@130: the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), moel@130: in which case the provisions of the GPL or the LGPL are applicable instead moel@130: of those above. If you wish to allow use of your version of this file only moel@130: under the terms of either the GPL or the LGPL, and not to allow others to moel@130: use your version of this file under the terms of the MPL, indicate your moel@130: decision by deleting the provisions above and replace them with the notice moel@130: and other provisions required by the GPL or the LGPL. If you do not delete moel@130: the provisions above, a recipient may use your version of this file under moel@130: the terms of any one of the MPL, the GPL or the LGPL. moel@130: moel@130: */ moel@130: moel@130: namespace OpenHardwareMonitor.Hardware.LPC { moel@165: internal interface ISuperIO { moel@130: moel@130: Chip Chip { get; } moel@130: moel@323: // get voltage, temperature, fan and control channel values moel@130: float?[] Voltages { get; } moel@130: float?[] Temperatures { get; } moel@130: float?[] Fans { get; } moel@323: float?[] Controls { get; } moel@130: moel@323: // set control value, null = auto moel@323: void SetControl(int index, byte? value); moel@323: moel@323: // read and write GPIO moel@228: byte? ReadGPIO(int index); moel@228: void WriteGPIO(int index, byte value); moel@228: moel@130: string GetReport(); moel@323: moel@130: void Update(); moel@130: } moel@130: }