Embed:
(wiki syntax)
Show/hide line numbers
poclass.h
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 #if __GNUC__ >=3 00027 #pragma GCC system_header 00028 #endif 00029 00030 #ifdef __cplusplus 00031 extern "C" { 00032 #endif 00033 00034 #include "ntddk.h" 00035 #include "batclass.h" 00036 00037 DEFINE_GUID(GUID_CLASS_INPUT, 00038 0x4D1E55B2L, 0xF16F, 0x11CF, 0x88, 0xCB, 0x00, 0x11, 0x11, 0x00, 0x00, 0x30); 00039 00040 DEFINE_GUID(GUID_DEVICE_LID, 00041 0x4AFA3D52L, 0x74A7, 0x11d0, 0xbe, 0x5e, 0x00, 0xA0, 0xC9, 0x06, 0x28, 0x57); 00042 00043 DEFINE_GUID(GUID_DEVICE_MEMORY, 00044 0x3fd0f03dL, 0x92e0, 0x45fb, 0xb7, 0x5c, 0x5e, 0xd8, 0xff, 0xb0, 0x10, 0x21); 00045 00046 DEFINE_GUID(GUID_DEVICE_MESSAGE_INDICATOR, 00047 0XCD48A365L, 0xfa94, 0x4ce2, 0xa2, 0x32, 0xa1, 0xb7, 0x64, 0xe5, 0xd8, 0xb4); 00048 00049 DEFINE_GUID(GUID_DEVICE_PROCESSOR, 00050 0x97fadb10L, 0x4e33, 0x40ae, 0x35, 0x9c, 0x8b, 0xef, 0x02, 0x9d, 0xbd, 0xd0); 00051 00052 DEFINE_GUID(GUID_DEVICE_SYS_BUTTON, 00053 0x4AFA3D53L, 0x74A7, 0x11d0, 0xbe, 0x5e, 0x00, 0xA0, 0xC9, 0x06, 0x28, 0x57); 00054 00055 DEFINE_GUID(GUID_DEVICE_THERMAL_ZONE, 00056 0x4AFA3D51L, 0x74A7, 0x11d0, 0xbe, 0x5e, 0x00, 0xA0, 0xC9, 0x06, 0x28, 0x57); 00057 00058 00059 #define IOCTL_GET_PROCESSOR_OBJ_INFO \ 00060 CTL_CODE(FILE_DEVICE_BATTERY, 0x60, METHOD_BUFFERED, FILE_READ_ACCESS) 00061 00062 #define IOCTL_GET_SYS_BUTTON_CAPS \ 00063 CTL_CODE(FILE_DEVICE_BATTERY, 0x50, METHOD_BUFFERED, FILE_READ_ACCESS) 00064 00065 #define IOCTL_GET_SYS_BUTTON_EVENT \ 00066 CTL_CODE(FILE_DEVICE_BATTERY, 0x51, METHOD_BUFFERED, FILE_READ_ACCESS) 00067 00068 #define IOCTL_SET_SYS_MESSAGE_INDICATOR \ 00069 CTL_CODE(FILE_DEVICE_BATTERY, 0x70, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00070 00071 #define IOCTL_NOTIFY_SWITCH_EVENT \ 00072 CTL_CODE(FILE_DEVICE_BATTERY, 0x40, METHOD_BUFFERED, FILE_READ_ACCESS) 00073 00074 #define IOCTL_THERMAL_QUERY_INFORMATION \ 00075 CTL_CODE(FILE_DEVICE_BATTERY, 0x20, METHOD_BUFFERED, FILE_READ_ACCESS) 00076 00077 #define IOCTL_THERMAL_SET_COOLING_POLICY \ 00078 CTL_CODE(FILE_DEVICE_BATTERY, 0x21, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00079 00080 #define IOCTL_QUERY_LID \ 00081 CTL_CODE(FILE_DEVICE_BATTERY, 0x30, METHOD_BUFFERED, FILE_READ_ACCESS) 00082 00083 #define IOCTL_RUN_ACTIVE_COOLING_METHOD \ 00084 CTL_CODE(FILE_DEVICE_BATTERY, 0x22, METHOD_BUFFERED, FILE_WRITE_ACCESS) 00085 00086 #define SYS_BUTTON_POWER 0x00000001 00087 #define SYS_BUTTON_SLEEP 0x00000002 00088 #define SYS_BUTTON_LID 0x00000004 00089 #define SYS_BUTTON_WAKE 0x80000000 00090 00091 #define MAX_ACTIVE_COOLING_LEVELS 10 00092 #define ACTIVE_COOLING 0 00093 #define PASSIVE_COOLING 1 00094 00095 typedef struct _THERMAL_INFORMATION { 00096 ULONG ThermalStamp; 00097 ULONG ThermalConstant1; 00098 ULONG ThermalConstant2; 00099 KAFFINITY Processors; 00100 ULONG SamplingPeriod; 00101 ULONG CurrentTemperature; 00102 ULONG PassiveTripPoint; 00103 ULONG CriticalTripPoint; 00104 UCHAR ActiveTripPointCount; 00105 ULONG ActiveTripPoint[MAX_ACTIVE_COOLING_LEVELS]; 00106 } THERMAL_INFORMATION, *PTHERMAL_INFORMATION; 00107 00108 typedef struct _PROCESSOR_OBJECT_INFO { 00109 ULONG PhysicalID; 00110 ULONG PBlkAddress; 00111 UCHAR PBlkLength; 00112 } PROCESSOR_OBJECT_INFO, *PPROCESSOR_OBJECT_INFO; 00113 00114 #ifdef __cplusplus 00115 } 00116 #endif 00117 00118 #endif /* __POCLASS_H */
Generated on Tue Jul 12 2022 19:59:55 by
1.7.2