Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenpoclass.hGo to the documentation of this file.00001 /* 00002 * poclass.h 00003 * 00004 * Power policy driver interface 00005 * 00006 * This file is part of the w32api package. 00007 * 00008 * Contributors: 00009 * Created by Casper S. Hornstrup <chorns@users.sourceforge.net> 00010 * 00011 * THIS SOFTWARE IS NOT COPYRIGHTED 00012 * 00013 * This source code is offered for use in the public domain. You may 00014 * use, modify or distribute it freely. 00015 * 00016 * This code is distributed in the hope that it will be useful but 00017 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY 00018 * DISCLAIMED. This includes but is not limited to warranties of 00019 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00020 * 00021 */ 00022 00023 #ifndef __POCLASS_H 00024 #define __POCLASS_H 00025 00026 #include "batclass.h" 00027 00028 #ifdef __cplusplus 00029 extern "C" { 00030 #endif 00031 00032 DEFINE_GUID(GUID_CLASS_INPUT, 00033 0x4D1E55B2L, 0xF16F, 0x11CF, 0x88, 0xCB, 0x00, 0x11, 0x11, 0x00, 0x00, 0x30); 00034 00035 DEFINE_GUID(GUID_DEVICE_LID, 00036 0x4AFA3D52L, 0x74A7, 0x11d0, 0xbe, 0x5e, 0x00, 0xA0, 0xC9, 0x06, 0x28, 0x57); 00037 00038 DEFINE_GUID(GUID_DEVICE_MEMORY, 00039 0x3fd0f03dL, 0x92e0, 0x45fb, 0xb7, 0x5c, 0x5e, 0xd8, 0xff, 0xb0, 0x10, 0x21); 00040 00041 DEFINE_GUID(GUID_DEVICE_MESSAGE_INDICATOR, 00042 0XCD48A365L, 0xfa94, 0x4ce2, 0xa2, 0x32, 0xa1, 0xb7, 0x64, 0xe5, 0xd8, 0xb4); 00043 00044 DEFINE_GUID(GUID_DEVICE_PROCESSOR, 00045 0x97fadb10L, 0x4e33, 0x40ae, 0x35, 0x9c, 0x8b, 0xef, 0x02, 0x9d, 0xbd, 0xd0); 00046 00047 DEFINE_GUID(GUID_DEVICE_SYS_BUTTON, 00048 0x4AFA3D53L, 0x74A7, 0x11d0, 0xbe, 0x5e, 0x00, 0xA0, 0xC9, 0x06, 0x28, 0x57); 00049 00050 DEFINE_GUID(GUID_DEVICE_THERMAL_ZONE, 00051 0x4AFA3D51L, 0x74A7, 0x11d0, 0xbe, 0x5e, 0x00, 0xA0, 0xC9, 0x06, 0x28, 0x57); 00052 00053 00054 #define IOCTL_GET_PROCESSOR_OBJ_INFO \ 00055 CTL_CODE(FILE_DEVICE_BATTERY, 0x60, METHOD_BUFFERED, FILE_READ_ACCESS) 00056 00057 #define IOCTL_GET_SYS_BUTTON_CAPS \ 00058 CTL_CODE(FILE_DEVICE_BATTERY, 0x50, METHOD_BUFFERED, FILE_READ_ACCESS) 00059 00060 #define IOCTL_GET_SYS_BUTTON_EVENT \ 00061 CTL_CODE(FILE_DEVICE_BATTERY, 0x51, METHOD_BUFFERED, FILE_READ_ACCESS) 00062 00063 #define IOCTL_SET_SYS_MESSAGE_INDICATOR \ 00064 CTL_CODE(FILE_DEVICE_BATTERY, 0x70, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00065 00066 #define IOCTL_NOTIFY_SWITCH_EVENT \ 00067 CTL_CODE(FILE_DEVICE_BATTERY, 0x40, METHOD_BUFFERED, FILE_READ_ACCESS) 00068 00069 #define IOCTL_THERMAL_QUERY_INFORMATION \ 00070 CTL_CODE(FILE_DEVICE_BATTERY, 0x20, METHOD_BUFFERED, FILE_READ_ACCESS) 00071 00072 #define IOCTL_THERMAL_SET_COOLING_POLICY \ 00073 CTL_CODE(FILE_DEVICE_BATTERY, 0x21, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00074 00075 #define IOCTL_QUERY_LID \ 00076 CTL_CODE(FILE_DEVICE_BATTERY, 0x30, METHOD_BUFFERED, FILE_READ_ACCESS) 00077 00078 #define IOCTL_RUN_ACTIVE_COOLING_METHOD \ 00079 CTL_CODE(FILE_DEVICE_BATTERY, 0x22, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00080 00081 #define SYS_BUTTON_POWER 0x00000001 00082 #define SYS_BUTTON_SLEEP 0x00000002 00083 #define SYS_BUTTON_LID 0x00000004 00084 #define SYS_BUTTON_WAKE 0x80000000 00085 00086 #define MAX_ACTIVE_COOLING_LEVELS 10 00087 #define ACTIVE_COOLING 0 00088 #define PASSIVE_COOLING 1 00089 00090 typedef struct _THERMAL_INFORMATION { 00091 ULONG ThermalStamp; 00092 ULONG ThermalConstant1; 00093 ULONG ThermalConstant2; 00094 KAFFINITY Processors; 00095 ULONG SamplingPeriod; 00096 ULONG CurrentTemperature; 00097 ULONG PassiveTripPoint; 00098 ULONG CriticalTripPoint; 00099 UCHAR ActiveTripPointCount; 00100 ULONG ActiveTripPoint[MAX_ACTIVE_COOLING_LEVELS]; 00101 } THERMAL_INFORMATION, *PTHERMAL_INFORMATION; 00102 00103 typedef struct _PROCESSOR_OBJECT_INFO { 00104 ULONG PhysicalID; 00105 ULONG PBlkAddress; 00106 UCHAR PBlkLength; 00107 } PROCESSOR_OBJECT_INFO, *PPROCESSOR_OBJECT_INFO; 00108 00109 #ifdef __cplusplus 00110 } 00111 #endif 00112 00113 #endif /* __POCLASS_H */ Generated on Tue May 15 04:53:36 2012 for ReactOS by
1.6.3
|