lowlevelmonitorconfigurationapi.h (1564B) - Raw
1 /** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6 7 #ifndef LowLevelMonitorConfigurationAPI_h 8 #define LowLevelMonitorConfigurationAPI_h 9 10 #include <winapifamily.h> 11 12 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) 13 14 #include <physicalmonitorenumerationapi.h> 15 16 #ifdef __cplusplus 17 extern "C" { 18 #endif 19 20 #pragma pack(push, 1) 21 22 typedef struct _MC_TIMING_REPORT { 23 DWORD dwHorizontalFrequencyInHZ; 24 DWORD dwVerticalFrequencyInHZ; 25 BYTE bTimingStatusByte; 26 } MC_TIMING_REPORT, *LPMC_TIMING_REPORT; 27 28 typedef enum _MC_VCP_CODE_TYPE { 29 MC_MOMENTARY, 30 MC_SET_PARAMETER 31 } MC_VCP_CODE_TYPE, *LPMC_VCP_CODE_TYPE; 32 33 _BOOL WINAPI GetVCPFeatureAndVCPFeatureReply(HANDLE hMonitor, BYTE bVCPCode, LPMC_VCP_CODE_TYPE pvct, LPDWORD pdwCurrentValue, LPDWORD pdwMaximumValue); 34 _BOOL WINAPI SetVCPFeature(HANDLE hMonitor, BYTE bVCPCode, DWORD dwNewValue); 35 _BOOL WINAPI SaveCurrentSettings(HANDLE hMonitor); 36 _BOOL WINAPI GetCapabilitiesStringLength(HANDLE hMonitor, LPDWORD pdwCapabilitiesStringLengthInCharacters); 37 _BOOL WINAPI CapabilitiesRequestAndCapabilitiesReply(HANDLE hMonitor, LPSTR pszASCIICapabilitiesString, DWORD dwCapabilitiesStringLengthInCharacters); 38 _BOOL WINAPI GetTimingReport(HANDLE hMonitor, LPMC_TIMING_REPORT pmtrMonitorTimingReport); 39 40 #pragma pack(pop) 41 42 #ifdef __cplusplus 43 } 44 #endif 45 46 #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */ 47 48 #endif /* LowLevelMonitorConfigurationAPI_h */