| 1 | /**
|
|---|
| 2 | * This file is part of the mingw-w64 runtime package.
|
|---|
| 3 | * No warranty is given; refer to the file DISCLAIMER within this package.
|
|---|
| 4 | */
|
|---|
| 5 |
|
|---|
| 6 | #include <winapifamily.h>
|
|---|
| 7 |
|
|---|
| 8 | #ifndef HighLevelMonitorConfigurationAPI_h
|
|---|
| 9 | #define HighLevelMonitorConfigurationAPI_h
|
|---|
| 10 |
|
|---|
| 11 | #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
|
|---|
| 12 |
|
|---|
| 13 | #include <windows.h>
|
|---|
| 14 | #include <physicalmonitorenumerationapi.h>
|
|---|
| 15 |
|
|---|
| 16 | #define MC_CAPS_NONE 0x00000000
|
|---|
| 17 | #define MC_CAPS_MONITOR_TECHNOLOGY_TYPE 0x00000001
|
|---|
| 18 | #define MC_CAPS_BRIGHTNESS 0x00000002
|
|---|
| 19 | #define MC_CAPS_CONTRAST 0x00000004
|
|---|
| 20 | #define MC_CAPS_COLOR_TEMPERATURE 0x00000008
|
|---|
| 21 | #define MC_CAPS_RED_GREEN_BLUE_GAIN 0x00000010
|
|---|
| 22 | #define MC_CAPS_RED_GREEN_BLUE_DRIVE 0x00000020
|
|---|
| 23 | #define MC_CAPS_DEGAUSS 0x00000040
|
|---|
| 24 | #define MC_CAPS_DISPLAY_AREA_POSITION 0x00000080
|
|---|
| 25 | #define MC_CAPS_DISPLAY_AREA_SIZE 0x00000100
|
|---|
| 26 | #define MC_CAPS_RESTORE_FACTORY_DEFAULTS 0x00000400
|
|---|
| 27 | #define MC_CAPS_RESTORE_FACTORY_COLOR_DEFAULTS 0x00000800
|
|---|
| 28 | #define MC_RESTORE_FACTORY_DEFAULTS_ENABLES_MONITOR_SETTINGS 0x00001000
|
|---|
| 29 |
|
|---|
| 30 | #define MC_SUPPORTED_COLOR_TEMPERATURE_NONE 0x00000000
|
|---|
| 31 | #define MC_SUPPORTED_COLOR_TEMPERATURE_4000K 0x00000001
|
|---|
| 32 | #define MC_SUPPORTED_COLOR_TEMPERATURE_5000K 0x00000002
|
|---|
| 33 | #define MC_SUPPORTED_COLOR_TEMPERATURE_6500K 0x00000004
|
|---|
| 34 | #define MC_SUPPORTED_COLOR_TEMPERATURE_7500K 0x00000008
|
|---|
| 35 | #define MC_SUPPORTED_COLOR_TEMPERATURE_8200K 0x00000010
|
|---|
| 36 | #define MC_SUPPORTED_COLOR_TEMPERATURE_9300K 0x00000020
|
|---|
| 37 | #define MC_SUPPORTED_COLOR_TEMPERATURE_10000K 0x00000040
|
|---|
| 38 | #define MC_SUPPORTED_COLOR_TEMPERATURE_11500K 0x00000080
|
|---|
| 39 |
|
|---|
| 40 | #ifdef __cplusplus
|
|---|
| 41 | extern "C" {
|
|---|
| 42 | #endif
|
|---|
| 43 |
|
|---|
| 44 | typedef enum _MC_DISPLAY_TECHNOLOGY_TYPE {
|
|---|
| 45 | MC_SHADOW_MASK_CATHODE_RAY_TUBE,
|
|---|
| 46 | MC_APERTURE_GRILL_CATHODE_RAY_TUBE,
|
|---|
| 47 | MC_THIN_FILM_TRANSISTOR,
|
|---|
| 48 | MC_LIQUID_CRYSTAL_ON_SILICON,
|
|---|
| 49 | MC_PLASMA,
|
|---|
| 50 | MC_ORGANIC_LIGHT_EMITTING_DIODE,
|
|---|
| 51 | MC_ELECTROLUMINESCENT,
|
|---|
| 52 | MC_MICROELECTROMECHANICAL,
|
|---|
| 53 | MC_FIELD_EMISSION_DEVICE
|
|---|
| 54 | } MC_DISPLAY_TECHNOLOGY_TYPE,*LPMC_DISPLAY_TECHNOLOGY_TYPE;
|
|---|
| 55 |
|
|---|
| 56 | typedef enum _MC_DRIVE_TYPE {
|
|---|
| 57 | MC_RED_DRIVE,
|
|---|
| 58 | MC_GREEN_DRIVE,
|
|---|
| 59 | MC_BLUE_DRIVE
|
|---|
| 60 | } MC_DRIVE_TYPE;
|
|---|
| 61 |
|
|---|
| 62 | typedef enum _MC_GAIN_TYPE {
|
|---|
| 63 | MC_RED_GAIN,
|
|---|
| 64 | MC_GREEN_GAIN,
|
|---|
| 65 | MC_BLUE_GAIN
|
|---|
| 66 | } MC_GAIN_TYPE;
|
|---|
| 67 |
|
|---|
| 68 | typedef enum _MC_POSITION_TYPE {
|
|---|
| 69 | MC_HORIZONTAL_POSITION,
|
|---|
| 70 | MC_VERTICAL_POSITION
|
|---|
| 71 | } MC_POSITION_TYPE;
|
|---|
| 72 |
|
|---|
| 73 | typedef enum _MC_SIZE_TYPE {
|
|---|
| 74 | MC_WIDTH,
|
|---|
| 75 | MC_HEIGHT
|
|---|
| 76 | } MC_SIZE_TYPE;
|
|---|
| 77 |
|
|---|
| 78 | typedef enum _MC_COLOR_TEMPERATURE {
|
|---|
| 79 | MC_COLOR_TEMPERATURE_UNKNOWN,
|
|---|
| 80 | MC_COLOR_TEMPERATURE_4000K,
|
|---|
| 81 | MC_COLOR_TEMPERATURE_5000K,
|
|---|
| 82 | MC_COLOR_TEMPERATURE_6500K,
|
|---|
| 83 | MC_COLOR_TEMPERATURE_7500K,
|
|---|
| 84 | MC_COLOR_TEMPERATURE_8200K,
|
|---|
| 85 | MC_COLOR_TEMPERATURE_9300K,
|
|---|
| 86 | MC_COLOR_TEMPERATURE_10000K,
|
|---|
| 87 | MC_COLOR_TEMPERATURE_11500K
|
|---|
| 88 | } MC_COLOR_TEMPERATURE,*LPMC_COLOR_TEMPERATURE;
|
|---|
| 89 |
|
|---|
| 90 | _BOOL WINAPI DegaussMonitor (HANDLE hMonitor);
|
|---|
| 91 | _BOOL WINAPI GetMonitorBrightness (HANDLE hMonitor, LPDWORD pdwMinimumBrightness, LPDWORD pdwCurrentBrightness, LPDWORD pdwMaximumBrightness);
|
|---|
| 92 | _BOOL WINAPI GetMonitorCapabilities (HANDLE hMonitor, LPDWORD pdwMonitorCapabilities, LPDWORD pdwSupportedColorTemperatures);
|
|---|
| 93 | _BOOL WINAPI GetMonitorColorTemperature (HANDLE hMonitor, LPMC_COLOR_TEMPERATURE pctCurrentColorTemperature);
|
|---|
| 94 | _BOOL WINAPI GetMonitorContrast (HANDLE hMonitor, LPDWORD pdwMinimumContrast, LPDWORD pdwCurrentContrast, LPDWORD pdwMaximumContrast);
|
|---|
| 95 | _BOOL WINAPI GetMonitorDisplayAreaSize (HANDLE hMonitor, MC_SIZE_TYPE stSizeType, LPDWORD pdwMinimumWidthOrHeight, LPDWORD pdwCurrentWidthOrHeight, LPDWORD pdwMaximumWidthOrHeight);
|
|---|
| 96 | _BOOL WINAPI GetMonitorDisplayAreaPosition (HANDLE hMonitor, MC_POSITION_TYPE ptPositionType, LPDWORD pdwMinimumPosition, LPDWORD pdwCurrentPosition, LPDWORD pdwMaximumPosition);
|
|---|
| 97 | _BOOL WINAPI GetMonitorRedGreenOrBlueDrive (HANDLE hMonitor, MC_DRIVE_TYPE dtDriveType, LPDWORD pdwMinimumDrive, LPDWORD pdwCurrentDrive, LPDWORD pdwMaximumDrive);
|
|---|
| 98 | _BOOL WINAPI GetMonitorRedGreenOrBlueGain (HANDLE hMonitor, MC_GAIN_TYPE gtGainType, LPDWORD pdwMinimumGain, LPDWORD pdwCurrentGain, LPDWORD pdwMaximumGain);
|
|---|
| 99 | _BOOL WINAPI GetMonitorTechnologyType (HANDLE hMonitor, LPMC_DISPLAY_TECHNOLOGY_TYPE pdtyDisplayTechnologyType);
|
|---|
| 100 | _BOOL WINAPI RestoreMonitorFactoryColorDefaults (HANDLE hMonitor);
|
|---|
| 101 | _BOOL WINAPI RestoreMonitorFactoryDefaults (HANDLE hMonitor);
|
|---|
| 102 | _BOOL WINAPI SaveCurrentMonitorSettings (HANDLE hMonitor);
|
|---|
| 103 | _BOOL WINAPI SetMonitorBrightness (HANDLE hMonitor, DWORD dwNewBrightness);
|
|---|
| 104 | _BOOL WINAPI SetMonitorColorTemperature (HANDLE hMonitor, MC_COLOR_TEMPERATURE ctCurrentColorTemperature);
|
|---|
| 105 | _BOOL WINAPI SetMonitorContrast (HANDLE hMonitor, DWORD dwNewContrast);
|
|---|
| 106 | _BOOL WINAPI SetMonitorDisplayAreaSize (HANDLE hMonitor, MC_SIZE_TYPE stSizeType, DWORD dwNewDisplayAreaWidthOrHeight);
|
|---|
| 107 | _BOOL WINAPI SetMonitorDisplayAreaPosition (HANDLE hMonitor, MC_POSITION_TYPE ptPositionType, DWORD dwNewPosition);
|
|---|
| 108 | _BOOL WINAPI SetMonitorRedGreenOrBlueDrive (HANDLE hMonitor, MC_DRIVE_TYPE dtDriveType, DWORD dwNewDrive);
|
|---|
| 109 | _BOOL WINAPI SetMonitorRedGreenOrBlueGain (HANDLE hMonitor, MC_GAIN_TYPE gtGainType, DWORD dwNewGain);
|
|---|
| 110 |
|
|---|
| 111 | #ifdef __cplusplus
|
|---|
| 112 | }
|
|---|
| 113 | #endif
|
|---|
| 114 | #endif
|
|---|
| 115 | #endif
|
|---|