zigwin32/win32/devices/display.zig

5564 lines
184 KiB
Zig

//! NOTE: this file is autogenerated, DO NOT MODIFY
//--------------------------------------------------------------------------------
// Section: Constants (740)
//--------------------------------------------------------------------------------
pub const GUID_DEVINTERFACE_DISPLAY_ADAPTER = Guid.initString("5b45201d-f2f2-4f3b-85bb-30ff1f953599");
pub const GUID_DEVINTERFACE_MONITOR = Guid.initString("e6f07b5f-ee97-4a90-b076-33f57bf4eaa7");
pub const GUID_DISPLAY_DEVICE_ARRIVAL = Guid.initString("1ca05180-a699-450a-9a0c-de4fbe3ddd89");
pub const GUID_DEVINTERFACE_VIDEO_OUTPUT_ARRIVAL = Guid.initString("1ad9e4f0-f88d-4360-bab9-4c2d55e564cd");
pub const DEVPKEY_IndirectDisplay = PROPERTYKEY { .fmtid = Guid.initString("c50a3f10-aa5c-4247-b830-d6a6f8eaa310"), .pid = 1 };
pub const DEVPKEY_Device_TerminalLuid = PROPERTYKEY { .fmtid = Guid.initString("c50a3f10-aa5c-4247-b830-d6a6f8eaa310"), .pid = 2 };
pub const DEVPKEY_Device_AdapterLuid = PROPERTYKEY { .fmtid = Guid.initString("c50a3f10-aa5c-4247-b830-d6a6f8eaa310"), .pid = 3 };
pub const DEVPKEY_Device_ActivityId = PROPERTYKEY { .fmtid = Guid.initString("c50a3f10-aa5c-4247-b830-d6a6f8eaa310"), .pid = 4 };
pub const INDIRECT_DISPLAY_INFO_FLAGS_CREATED_IDDCX_ADAPTER = @as(u32, 1);
pub const VIDEO_DEVICE_NAME = "DISPLAY%d";
pub const WVIDEO_DEVICE_NAME = "DISPLAY%d";
pub const IOCTL_VIDEO_DISABLE_VDM = @as(u32, 2293764);
pub const IOCTL_VIDEO_REGISTER_VDM = @as(u32, 2293768);
pub const IOCTL_VIDEO_SET_OUTPUT_DEVICE_POWER_STATE = @as(u32, 2293772);
pub const IOCTL_VIDEO_GET_OUTPUT_DEVICE_POWER_STATE = @as(u32, 2293776);
pub const IOCTL_VIDEO_MONITOR_DEVICE = @as(u32, 2293780);
pub const IOCTL_VIDEO_ENUM_MONITOR_PDO = @as(u32, 2293784);
pub const IOCTL_VIDEO_INIT_WIN32K_CALLBACKS = @as(u32, 2293788);
pub const IOCTL_VIDEO_IS_VGA_DEVICE = @as(u32, 2293796);
pub const IOCTL_VIDEO_USE_DEVICE_IN_SESSION = @as(u32, 2293800);
pub const IOCTL_VIDEO_PREPARE_FOR_EARECOVERY = @as(u32, 2293804);
pub const IOCTL_VIDEO_ENABLE_VDM = @as(u32, 2293760);
pub const IOCTL_VIDEO_SAVE_HARDWARE_STATE = @as(u32, 2294272);
pub const IOCTL_VIDEO_RESTORE_HARDWARE_STATE = @as(u32, 2294276);
pub const IOCTL_VIDEO_HANDLE_VIDEOPARAMETERS = @as(u32, 2293792);
pub const IOCTL_VIDEO_QUERY_AVAIL_MODES = @as(u32, 2294784);
pub const IOCTL_VIDEO_QUERY_NUM_AVAIL_MODES = @as(u32, 2294788);
pub const IOCTL_VIDEO_QUERY_CURRENT_MODE = @as(u32, 2294792);
pub const IOCTL_VIDEO_SET_CURRENT_MODE = @as(u32, 2294796);
pub const IOCTL_VIDEO_RESET_DEVICE = @as(u32, 2294800);
pub const IOCTL_VIDEO_LOAD_AND_SET_FONT = @as(u32, 2294804);
pub const IOCTL_VIDEO_SET_PALETTE_REGISTERS = @as(u32, 2294808);
pub const IOCTL_VIDEO_SET_COLOR_REGISTERS = @as(u32, 2294812);
pub const IOCTL_VIDEO_ENABLE_CURSOR = @as(u32, 2294816);
pub const IOCTL_VIDEO_DISABLE_CURSOR = @as(u32, 2294820);
pub const IOCTL_VIDEO_SET_CURSOR_ATTR = @as(u32, 2294824);
pub const IOCTL_VIDEO_QUERY_CURSOR_ATTR = @as(u32, 2294828);
pub const IOCTL_VIDEO_SET_CURSOR_POSITION = @as(u32, 2294832);
pub const IOCTL_VIDEO_QUERY_CURSOR_POSITION = @as(u32, 2294836);
pub const IOCTL_VIDEO_ENABLE_POINTER = @as(u32, 2294840);
pub const IOCTL_VIDEO_DISABLE_POINTER = @as(u32, 2294844);
pub const IOCTL_VIDEO_SET_POINTER_ATTR = @as(u32, 2294848);
pub const IOCTL_VIDEO_QUERY_POINTER_ATTR = @as(u32, 2294852);
pub const IOCTL_VIDEO_SET_POINTER_POSITION = @as(u32, 2294856);
pub const IOCTL_VIDEO_QUERY_POINTER_POSITION = @as(u32, 2294860);
pub const IOCTL_VIDEO_QUERY_POINTER_CAPABILITIES = @as(u32, 2294864);
pub const IOCTL_VIDEO_GET_BANK_SELECT_CODE = @as(u32, 2294868);
pub const IOCTL_VIDEO_MAP_VIDEO_MEMORY = @as(u32, 2294872);
pub const IOCTL_VIDEO_UNMAP_VIDEO_MEMORY = @as(u32, 2294876);
pub const IOCTL_VIDEO_QUERY_PUBLIC_ACCESS_RANGES = @as(u32, 2294880);
pub const IOCTL_VIDEO_FREE_PUBLIC_ACCESS_RANGES = @as(u32, 2294884);
pub const IOCTL_VIDEO_QUERY_COLOR_CAPABILITIES = @as(u32, 2294888);
pub const IOCTL_VIDEO_SET_POWER_MANAGEMENT = @as(u32, 2294892);
pub const IOCTL_VIDEO_GET_POWER_MANAGEMENT = @as(u32, 2294896);
pub const IOCTL_VIDEO_SHARE_VIDEO_MEMORY = @as(u32, 2294900);
pub const IOCTL_VIDEO_UNSHARE_VIDEO_MEMORY = @as(u32, 2294904);
pub const IOCTL_VIDEO_SET_COLOR_LUT_DATA = @as(u32, 2294908);
pub const IOCTL_VIDEO_GET_CHILD_STATE = @as(u32, 2294912);
pub const IOCTL_VIDEO_VALIDATE_CHILD_STATE_CONFIGURATION = @as(u32, 2294916);
pub const IOCTL_VIDEO_SET_CHILD_STATE_CONFIGURATION = @as(u32, 2294920);
pub const IOCTL_VIDEO_SWITCH_DUALVIEW = @as(u32, 2294924);
pub const IOCTL_VIDEO_SET_BANK_POSITION = @as(u32, 2294928);
pub const IOCTL_VIDEO_QUERY_SUPPORTED_BRIGHTNESS = @as(u32, 2294932);
pub const IOCTL_VIDEO_QUERY_DISPLAY_BRIGHTNESS = @as(u32, 2294936);
pub const IOCTL_VIDEO_SET_DISPLAY_BRIGHTNESS = @as(u32, 2294940);
pub const IOCTL_FSVIDEO_COPY_FRAME_BUFFER = @as(u32, 3409920);
pub const IOCTL_FSVIDEO_WRITE_TO_FRAME_BUFFER = @as(u32, 3409924);
pub const IOCTL_FSVIDEO_REVERSE_MOUSE_POINTER = @as(u32, 3409928);
pub const IOCTL_FSVIDEO_SET_CURRENT_MODE = @as(u32, 3409932);
pub const IOCTL_FSVIDEO_SET_SCREEN_INFORMATION = @as(u32, 3409936);
pub const IOCTL_FSVIDEO_SET_CURSOR_POSITION = @as(u32, 3409940);
pub const IOCTL_PANEL_QUERY_BRIGHTNESS_CAPS = @as(u32, 2296832);
pub const IOCTL_PANEL_QUERY_BRIGHTNESS_RANGES = @as(u32, 2296836);
pub const IOCTL_PANEL_GET_BRIGHTNESS = @as(u32, 2296840);
pub const IOCTL_PANEL_SET_BRIGHTNESS = @as(u32, 2296844);
pub const IOCTL_PANEL_SET_BRIGHTNESS_STATE = @as(u32, 2296848);
pub const IOCTL_PANEL_SET_BACKLIGHT_OPTIMIZATION = @as(u32, 2296852);
pub const IOCTL_PANEL_GET_BACKLIGHT_REDUCTION = @as(u32, 2296856);
pub const IOCTL_COLORSPACE_TRANSFORM_QUERY_TARGET_CAPS = @as(u32, 2297856);
pub const IOCTL_COLORSPACE_TRANSFORM_SET = @as(u32, 2297860);
pub const IOCTL_SET_ACTIVE_COLOR_PROFILE_NAME = @as(u32, 2297864);
pub const IOCTL_MIPI_DSI_QUERY_CAPS = @as(u32, 2298880);
pub const IOCTL_MIPI_DSI_TRANSMISSION = @as(u32, 2298884);
pub const IOCTL_MIPI_DSI_RESET = @as(u32, 2298888);
pub const DXGK_WIN32K_PARAM_FLAG_UPDATEREGISTRY = @as(u32, 1);
pub const DXGK_WIN32K_PARAM_FLAG_MODESWITCH = @as(u32, 2);
pub const DXGK_WIN32K_PARAM_FLAG_DISABLEVIEW = @as(u32, 4);
pub const VIDEO_DUALVIEW_REMOVABLE = @as(u32, 1);
pub const VIDEO_DUALVIEW_PRIMARY = @as(u32, 2147483648);
pub const VIDEO_DUALVIEW_SECONDARY = @as(u32, 1073741824);
pub const VIDEO_DUALVIEW_WDDM_VGA = @as(u32, 536870912);
pub const VIDEO_STATE_NON_STANDARD_VGA = @as(u32, 1);
pub const VIDEO_STATE_UNEMULATED_VGA_STATE = @as(u32, 2);
pub const VIDEO_STATE_PACKED_CHAIN4_MODE = @as(u32, 4);
pub const VIDEO_MODE_NO_ZERO_MEMORY = @as(u32, 2147483648);
pub const VIDEO_MODE_MAP_MEM_LINEAR = @as(u32, 1073741824);
pub const VIDEO_MODE_COLOR = @as(u32, 1);
pub const VIDEO_MODE_GRAPHICS = @as(u32, 2);
pub const VIDEO_MODE_PALETTE_DRIVEN = @as(u32, 4);
pub const VIDEO_MODE_MANAGED_PALETTE = @as(u32, 8);
pub const VIDEO_MODE_INTERLACED = @as(u32, 16);
pub const VIDEO_MODE_NO_OFF_SCREEN = @as(u32, 32);
pub const VIDEO_MODE_NO_64_BIT_ACCESS = @as(u32, 64);
pub const VIDEO_MODE_BANKED = @as(u32, 128);
pub const VIDEO_MODE_LINEAR = @as(u32, 256);
pub const VIDEO_MODE_ASYNC_POINTER = @as(u32, 1);
pub const VIDEO_MODE_MONO_POINTER = @as(u32, 2);
pub const VIDEO_MODE_COLOR_POINTER = @as(u32, 4);
pub const VIDEO_MODE_ANIMATE_START = @as(u32, 8);
pub const VIDEO_MODE_ANIMATE_UPDATE = @as(u32, 16);
pub const PLANAR_HC = @as(u32, 1);
pub const VIDEO_DEVICE_COLOR = @as(u32, 1);
pub const VIDEO_OPTIONAL_GAMMET_TABLE = @as(u32, 2);
pub const VIDEO_COLOR_LUT_DATA_FORMAT_RGB256WORDS = @as(u32, 1);
pub const VIDEO_COLOR_LUT_DATA_FORMAT_PRIVATEFORMAT = @as(u32, 2147483648);
pub const DISPLAYPOLICY_AC = @as(u32, 1);
pub const DISPLAYPOLICY_DC = @as(u32, 2);
pub const CHAR_TYPE_SBCS = @as(u32, 0);
pub const CHAR_TYPE_LEADING = @as(u32, 2);
pub const CHAR_TYPE_TRAILING = @as(u32, 3);
pub const BITMAP_BITS_BYTE_ALIGN = @as(u32, 8);
pub const BITMAP_BITS_WORD_ALIGN = @as(u32, 16);
pub const BITMAP_ARRAY_BYTE = @as(u32, 3);
pub const BITMAP_PLANES = @as(u32, 1);
pub const BITMAP_BITS_PIXEL = @as(u32, 1);
pub const DD_FULLSCREEN_VIDEO_DEVICE_NAME = "\\Device\\FSVideo";
pub const VIDEO_REASON_NONE = @as(u32, 0);
pub const VIDEO_REASON_POLICY1 = @as(u32, 1);
pub const VIDEO_REASON_POLICY2 = @as(u32, 2);
pub const VIDEO_REASON_POLICY3 = @as(u32, 3);
pub const VIDEO_REASON_POLICY4 = @as(u32, 4);
pub const VIDEO_REASON_LOCK = @as(u32, 5);
pub const VIDEO_REASON_FAILED_ROTATION = @as(u32, 5);
pub const VIDEO_REASON_ALLOCATION = @as(u32, 6);
pub const VIDEO_REASON_SCRATCH = @as(u32, 8);
pub const VIDEO_REASON_CONFIGURATION = @as(u32, 9);
pub const VIDEO_MAX_REASON = @as(u32, 9);
pub const BRIGHTNESS_MAX_LEVEL_COUNT = @as(u32, 103);
pub const BRIGHTNESS_MAX_NIT_RANGE_COUNT = @as(u32, 16);
pub const DSI_PACKET_EMBEDDED_PAYLOAD_SIZE = @as(u32, 8);
pub const MAX_PACKET_COUNT = @as(u32, 128);
pub const DSI_INVALID_PACKET_INDEX = @as(u32, 255);
pub const DSI_SOT_ERROR = @as(u32, 1);
pub const DSI_SOT_SYNC_ERROR = @as(u32, 2);
pub const DSI_EOT_SYNC_ERROR = @as(u32, 4);
pub const DSI_ESCAPE_MODE_ENTRY_COMMAND_ERROR = @as(u32, 8);
pub const DSI_LOW_POWER_TRANSMIT_SYNC_ERROR = @as(u32, 16);
pub const DSI_PERIPHERAL_TIMEOUT_ERROR = @as(u32, 32);
pub const DSI_FALSE_CONTROL_ERROR = @as(u32, 64);
pub const DSI_CONTENTION_DETECTED = @as(u32, 128);
pub const DSI_CHECKSUM_ERROR_CORRECTED = @as(u32, 256);
pub const DSI_CHECKSUM_ERROR_NOT_CORRECTED = @as(u32, 512);
pub const DSI_LONG_PACKET_PAYLOAD_CHECKSUM_ERROR = @as(u32, 1024);
pub const DSI_DSI_DATA_TYPE_NOT_RECOGNIZED = @as(u32, 2048);
pub const DSI_DSI_VC_ID_INVALID = @as(u32, 4096);
pub const DSI_INVALID_TRANSMISSION_LENGTH = @as(u32, 8192);
pub const DSI_DSI_PROTOCOL_VIOLATION = @as(u32, 32768);
pub const HOST_DSI_DEVICE_NOT_READY = @as(u32, 1);
pub const HOST_DSI_INTERFACE_RESET = @as(u32, 2);
pub const HOST_DSI_DEVICE_RESET = @as(u32, 4);
pub const HOST_DSI_TRANSMISSION_CANCELLED = @as(u32, 16);
pub const HOST_DSI_TRANSMISSION_DROPPED = @as(u32, 32);
pub const HOST_DSI_TRANSMISSION_TIMEOUT = @as(u32, 64);
pub const HOST_DSI_INVALID_TRANSMISSION = @as(u32, 256);
pub const HOST_DSI_OS_REJECTED_PACKET = @as(u32, 512);
pub const HOST_DSI_DRIVER_REJECTED_PACKET = @as(u32, 1024);
pub const HOST_DSI_BAD_TRANSMISSION_MODE = @as(u32, 4096);
pub const GUID_MONITOR_OVERRIDE_PSEUDO_SPECIALIZED = Guid.initString("f196c02f-f86f-4f9a-aa15-e9cebdfe3b96");
pub const FD_ERROR = @as(u32, 4294967295);
pub const DDI_ERROR = @as(u32, 4294967295);
pub const FDM_TYPE_BM_SIDE_CONST = @as(u32, 1);
pub const FDM_TYPE_MAXEXT_EQUAL_BM_SIDE = @as(u32, 2);
pub const FDM_TYPE_CHAR_INC_EQUAL_BM_BASE = @as(u32, 4);
pub const FDM_TYPE_ZERO_BEARINGS = @as(u32, 8);
pub const FDM_TYPE_CONST_BEARINGS = @as(u32, 16);
pub const GS_UNICODE_HANDLES = @as(u32, 1);
pub const GS_8BIT_HANDLES = @as(u32, 2);
pub const GS_16BIT_HANDLES = @as(u32, 4);
pub const FM_VERSION_NUMBER = @as(u32, 0);
pub const FM_TYPE_LICENSED = @as(u32, 2);
pub const FM_READONLY_EMBED = @as(u32, 4);
pub const FM_EDITABLE_EMBED = @as(u32, 8);
pub const FM_NO_EMBEDDING = @as(u32, 2);
pub const FM_INFO_TECH_TRUETYPE = @as(u32, 1);
pub const FM_INFO_TECH_BITMAP = @as(u32, 2);
pub const FM_INFO_TECH_STROKE = @as(u32, 4);
pub const FM_INFO_TECH_OUTLINE_NOT_TRUETYPE = @as(u32, 8);
pub const FM_INFO_ARB_XFORMS = @as(u32, 16);
pub const FM_INFO_1BPP = @as(u32, 32);
pub const FM_INFO_4BPP = @as(u32, 64);
pub const FM_INFO_8BPP = @as(u32, 128);
pub const FM_INFO_16BPP = @as(u32, 256);
pub const FM_INFO_24BPP = @as(u32, 512);
pub const FM_INFO_32BPP = @as(u32, 1024);
pub const FM_INFO_INTEGER_WIDTH = @as(u32, 2048);
pub const FM_INFO_CONSTANT_WIDTH = @as(u32, 4096);
pub const FM_INFO_NOT_CONTIGUOUS = @as(u32, 8192);
pub const FM_INFO_TECH_MM = @as(u32, 16384);
pub const FM_INFO_RETURNS_OUTLINES = @as(u32, 32768);
pub const FM_INFO_RETURNS_STROKES = @as(u32, 65536);
pub const FM_INFO_RETURNS_BITMAPS = @as(u32, 131072);
pub const FM_INFO_DSIG = @as(u32, 262144);
pub const FM_INFO_RIGHT_HANDED = @as(u32, 524288);
pub const FM_INFO_INTEGRAL_SCALING = @as(u32, 1048576);
pub const FM_INFO_90DEGREE_ROTATIONS = @as(u32, 2097152);
pub const FM_INFO_OPTICALLY_FIXED_PITCH = @as(u32, 4194304);
pub const FM_INFO_DO_NOT_ENUMERATE = @as(u32, 8388608);
pub const FM_INFO_ISOTROPIC_SCALING_ONLY = @as(u32, 16777216);
pub const FM_INFO_ANISOTROPIC_SCALING_ONLY = @as(u32, 33554432);
pub const FM_INFO_TECH_CFF = @as(u32, 67108864);
pub const FM_INFO_FAMILY_EQUIV = @as(u32, 134217728);
pub const FM_INFO_DBCS_FIXED_PITCH = @as(u32, 268435456);
pub const FM_INFO_NONNEGATIVE_AC = @as(u32, 536870912);
pub const FM_INFO_IGNORE_TC_RA_ABLE = @as(u32, 1073741824);
pub const FM_INFO_TECH_TYPE1 = @as(u32, 2147483648);
pub const MAXCHARSETS = @as(u32, 16);
pub const FM_PANOSE_CULTURE_LATIN = @as(u32, 0);
pub const FM_SEL_ITALIC = @as(u32, 1);
pub const FM_SEL_UNDERSCORE = @as(u32, 2);
pub const FM_SEL_NEGATIVE = @as(u32, 4);
pub const FM_SEL_OUTLINED = @as(u32, 8);
pub const FM_SEL_STRIKEOUT = @as(u32, 16);
pub const FM_SEL_BOLD = @as(u32, 32);
pub const FM_SEL_REGULAR = @as(u32, 64);
pub const OPENGL_CMD = @as(u32, 4352);
pub const OPENGL_GETINFO = @as(u32, 4353);
pub const WNDOBJ_SETUP = @as(u32, 4354);
pub const DDI_DRIVER_VERSION_NT4 = @as(u32, 131072);
pub const DDI_DRIVER_VERSION_SP3 = @as(u32, 131075);
pub const DDI_DRIVER_VERSION_NT5 = @as(u32, 196608);
pub const DDI_DRIVER_VERSION_NT5_01 = @as(u32, 196864);
pub const DDI_DRIVER_VERSION_NT5_01_SP1 = @as(u32, 196865);
pub const GDI_DRIVER_VERSION = @as(u32, 16384);
pub const INDEX_DrvEnablePDEV = @as(i32, 0);
pub const INDEX_DrvCompletePDEV = @as(i32, 1);
pub const INDEX_DrvDisablePDEV = @as(i32, 2);
pub const INDEX_DrvEnableSurface = @as(i32, 3);
pub const INDEX_DrvDisableSurface = @as(i32, 4);
pub const INDEX_DrvAssertMode = @as(i32, 5);
pub const INDEX_DrvOffset = @as(i32, 6);
pub const INDEX_DrvResetPDEV = @as(i32, 7);
pub const INDEX_DrvDisableDriver = @as(i32, 8);
pub const INDEX_DrvCreateDeviceBitmap = @as(i32, 10);
pub const INDEX_DrvDeleteDeviceBitmap = @as(i32, 11);
pub const INDEX_DrvRealizeBrush = @as(i32, 12);
pub const INDEX_DrvDitherColor = @as(i32, 13);
pub const INDEX_DrvStrokePath = @as(i32, 14);
pub const INDEX_DrvFillPath = @as(i32, 15);
pub const INDEX_DrvStrokeAndFillPath = @as(i32, 16);
pub const INDEX_DrvPaint = @as(i32, 17);
pub const INDEX_DrvBitBlt = @as(i32, 18);
pub const INDEX_DrvCopyBits = @as(i32, 19);
pub const INDEX_DrvStretchBlt = @as(i32, 20);
pub const INDEX_DrvSetPalette = @as(i32, 22);
pub const INDEX_DrvTextOut = @as(i32, 23);
pub const INDEX_DrvEscape = @as(i32, 24);
pub const INDEX_DrvDrawEscape = @as(i32, 25);
pub const INDEX_DrvQueryFont = @as(i32, 26);
pub const INDEX_DrvQueryFontTree = @as(i32, 27);
pub const INDEX_DrvQueryFontData = @as(i32, 28);
pub const INDEX_DrvSetPointerShape = @as(i32, 29);
pub const INDEX_DrvMovePointer = @as(i32, 30);
pub const INDEX_DrvLineTo = @as(i32, 31);
pub const INDEX_DrvSendPage = @as(i32, 32);
pub const INDEX_DrvStartPage = @as(i32, 33);
pub const INDEX_DrvEndDoc = @as(i32, 34);
pub const INDEX_DrvStartDoc = @as(i32, 35);
pub const INDEX_DrvGetGlyphMode = @as(i32, 37);
pub const INDEX_DrvSynchronize = @as(i32, 38);
pub const INDEX_DrvSaveScreenBits = @as(i32, 40);
pub const INDEX_DrvGetModes = @as(i32, 41);
pub const INDEX_DrvFree = @as(i32, 42);
pub const INDEX_DrvDestroyFont = @as(i32, 43);
pub const INDEX_DrvQueryFontCaps = @as(i32, 44);
pub const INDEX_DrvLoadFontFile = @as(i32, 45);
pub const INDEX_DrvUnloadFontFile = @as(i32, 46);
pub const INDEX_DrvFontManagement = @as(i32, 47);
pub const INDEX_DrvQueryTrueTypeTable = @as(i32, 48);
pub const INDEX_DrvQueryTrueTypeOutline = @as(i32, 49);
pub const INDEX_DrvGetTrueTypeFile = @as(i32, 50);
pub const INDEX_DrvQueryFontFile = @as(i32, 51);
pub const INDEX_DrvMovePanning = @as(i32, 52);
pub const INDEX_DrvQueryAdvanceWidths = @as(i32, 53);
pub const INDEX_DrvSetPixelFormat = @as(i32, 54);
pub const INDEX_DrvDescribePixelFormat = @as(i32, 55);
pub const INDEX_DrvSwapBuffers = @as(i32, 56);
pub const INDEX_DrvStartBanding = @as(i32, 57);
pub const INDEX_DrvNextBand = @as(i32, 58);
pub const INDEX_DrvGetDirectDrawInfo = @as(i32, 59);
pub const INDEX_DrvEnableDirectDraw = @as(i32, 60);
pub const INDEX_DrvDisableDirectDraw = @as(i32, 61);
pub const INDEX_DrvQuerySpoolType = @as(i32, 62);
pub const INDEX_DrvIcmCreateColorTransform = @as(i32, 64);
pub const INDEX_DrvIcmDeleteColorTransform = @as(i32, 65);
pub const INDEX_DrvIcmCheckBitmapBits = @as(i32, 66);
pub const INDEX_DrvIcmSetDeviceGammaRamp = @as(i32, 67);
pub const INDEX_DrvGradientFill = @as(i32, 68);
pub const INDEX_DrvStretchBltROP = @as(i32, 69);
pub const INDEX_DrvPlgBlt = @as(i32, 70);
pub const INDEX_DrvAlphaBlend = @as(i32, 71);
pub const INDEX_DrvSynthesizeFont = @as(i32, 72);
pub const INDEX_DrvGetSynthesizedFontFiles = @as(i32, 73);
pub const INDEX_DrvTransparentBlt = @as(i32, 74);
pub const INDEX_DrvQueryPerBandInfo = @as(i32, 75);
pub const INDEX_DrvQueryDeviceSupport = @as(i32, 76);
pub const INDEX_DrvReserved1 = @as(i32, 77);
pub const INDEX_DrvReserved2 = @as(i32, 78);
pub const INDEX_DrvReserved3 = @as(i32, 79);
pub const INDEX_DrvReserved4 = @as(i32, 80);
pub const INDEX_DrvReserved5 = @as(i32, 81);
pub const INDEX_DrvReserved6 = @as(i32, 82);
pub const INDEX_DrvReserved7 = @as(i32, 83);
pub const INDEX_DrvReserved8 = @as(i32, 84);
pub const INDEX_DrvDeriveSurface = @as(i32, 85);
pub const INDEX_DrvQueryGlyphAttrs = @as(i32, 86);
pub const INDEX_DrvNotify = @as(i32, 87);
pub const INDEX_DrvSynchronizeSurface = @as(i32, 88);
pub const INDEX_DrvResetDevice = @as(i32, 89);
pub const INDEX_DrvReserved9 = @as(i32, 90);
pub const INDEX_DrvReserved10 = @as(i32, 91);
pub const INDEX_DrvReserved11 = @as(i32, 92);
pub const INDEX_DrvRenderHint = @as(i32, 93);
pub const INDEX_DrvCreateDeviceBitmapEx = @as(i32, 94);
pub const INDEX_DrvDeleteDeviceBitmapEx = @as(i32, 95);
pub const INDEX_DrvAssociateSharedSurface = @as(i32, 96);
pub const INDEX_DrvSynchronizeRedirectionBitmaps = @as(i32, 97);
pub const INDEX_DrvAccumulateD3DDirtyRect = @as(i32, 98);
pub const INDEX_DrvStartDxInterop = @as(i32, 99);
pub const INDEX_DrvEndDxInterop = @as(i32, 100);
pub const INDEX_DrvLockDisplayArea = @as(i32, 101);
pub const INDEX_DrvUnlockDisplayArea = @as(i32, 102);
pub const INDEX_DrvSurfaceComplete = @as(i32, 103);
pub const INDEX_LAST = @as(i32, 89);
pub const GCAPS_BEZIERS = @as(u32, 1);
pub const GCAPS_GEOMETRICWIDE = @as(u32, 2);
pub const GCAPS_ALTERNATEFILL = @as(u32, 4);
pub const GCAPS_WINDINGFILL = @as(u32, 8);
pub const GCAPS_HALFTONE = @as(u32, 16);
pub const GCAPS_COLOR_DITHER = @as(u32, 32);
pub const GCAPS_HORIZSTRIKE = @as(u32, 64);
pub const GCAPS_VERTSTRIKE = @as(u32, 128);
pub const GCAPS_OPAQUERECT = @as(u32, 256);
pub const GCAPS_VECTORFONT = @as(u32, 512);
pub const GCAPS_MONO_DITHER = @as(u32, 1024);
pub const GCAPS_ASYNCCHANGE = @as(u32, 2048);
pub const GCAPS_ASYNCMOVE = @as(u32, 4096);
pub const GCAPS_DONTJOURNAL = @as(u32, 8192);
pub const GCAPS_DIRECTDRAW = @as(u32, 16384);
pub const GCAPS_ARBRUSHOPAQUE = @as(u32, 32768);
pub const GCAPS_PANNING = @as(u32, 65536);
pub const GCAPS_HIGHRESTEXT = @as(u32, 262144);
pub const GCAPS_PALMANAGED = @as(u32, 524288);
pub const GCAPS_DITHERONREALIZE = @as(u32, 2097152);
pub const GCAPS_NO64BITMEMACCESS = @as(u32, 4194304);
pub const GCAPS_FORCEDITHER = @as(u32, 8388608);
pub const GCAPS_GRAY16 = @as(u32, 16777216);
pub const GCAPS_ICM = @as(u32, 33554432);
pub const GCAPS_CMYKCOLOR = @as(u32, 67108864);
pub const GCAPS_LAYERED = @as(u32, 134217728);
pub const GCAPS_ARBRUSHTEXT = @as(u32, 268435456);
pub const GCAPS_SCREENPRECISION = @as(u32, 536870912);
pub const GCAPS_FONT_RASTERIZER = @as(u32, 1073741824);
pub const GCAPS_NUP = @as(u32, 2147483648);
pub const GCAPS2_JPEGSRC = @as(u32, 1);
pub const GCAPS2_xxxx = @as(u32, 2);
pub const GCAPS2_PNGSRC = @as(u32, 8);
pub const GCAPS2_CHANGEGAMMARAMP = @as(u32, 16);
pub const GCAPS2_ALPHACURSOR = @as(u32, 32);
pub const GCAPS2_SYNCFLUSH = @as(u32, 64);
pub const GCAPS2_SYNCTIMER = @as(u32, 128);
pub const GCAPS2_ICD_MULTIMON = @as(u32, 256);
pub const GCAPS2_MOUSETRAILS = @as(u32, 512);
pub const GCAPS2_RESERVED1 = @as(u32, 1024);
pub const GCAPS2_REMOTEDRIVER = @as(u32, 1024);
pub const GCAPS2_EXCLUDELAYERED = @as(u32, 2048);
pub const GCAPS2_INCLUDEAPIBITMAPS = @as(u32, 4096);
pub const GCAPS2_SHOWHIDDENPOINTER = @as(u32, 8192);
pub const GCAPS2_CLEARTYPE = @as(u32, 16384);
pub const GCAPS2_ACC_DRIVER = @as(u32, 32768);
pub const GCAPS2_BITMAPEXREUSE = @as(u32, 65536);
pub const LA_GEOMETRIC = @as(u32, 1);
pub const LA_ALTERNATE = @as(u32, 2);
pub const LA_STARTGAP = @as(u32, 4);
pub const LA_STYLED = @as(u32, 8);
pub const JOIN_ROUND = @as(i32, 0);
pub const JOIN_BEVEL = @as(i32, 1);
pub const JOIN_MITER = @as(i32, 2);
pub const ENDCAP_ROUND = @as(i32, 0);
pub const ENDCAP_SQUARE = @as(i32, 1);
pub const ENDCAP_BUTT = @as(i32, 2);
pub const PRIMARY_ORDER_ABC = @as(u32, 0);
pub const PRIMARY_ORDER_ACB = @as(u32, 1);
pub const PRIMARY_ORDER_BAC = @as(u32, 2);
pub const PRIMARY_ORDER_BCA = @as(u32, 3);
pub const PRIMARY_ORDER_CBA = @as(u32, 4);
pub const PRIMARY_ORDER_CAB = @as(u32, 5);
pub const HT_PATSIZE_2x2 = @as(u32, 0);
pub const HT_PATSIZE_2x2_M = @as(u32, 1);
pub const HT_PATSIZE_4x4 = @as(u32, 2);
pub const HT_PATSIZE_4x4_M = @as(u32, 3);
pub const HT_PATSIZE_6x6 = @as(u32, 4);
pub const HT_PATSIZE_6x6_M = @as(u32, 5);
pub const HT_PATSIZE_8x8 = @as(u32, 6);
pub const HT_PATSIZE_8x8_M = @as(u32, 7);
pub const HT_PATSIZE_10x10 = @as(u32, 8);
pub const HT_PATSIZE_10x10_M = @as(u32, 9);
pub const HT_PATSIZE_12x12 = @as(u32, 10);
pub const HT_PATSIZE_12x12_M = @as(u32, 11);
pub const HT_PATSIZE_14x14 = @as(u32, 12);
pub const HT_PATSIZE_14x14_M = @as(u32, 13);
pub const HT_PATSIZE_16x16 = @as(u32, 14);
pub const HT_PATSIZE_16x16_M = @as(u32, 15);
pub const HT_PATSIZE_SUPERCELL = @as(u32, 16);
pub const HT_PATSIZE_SUPERCELL_M = @as(u32, 17);
pub const HT_PATSIZE_USER = @as(u32, 18);
pub const HT_PATSIZE_MAX_INDEX = @as(u32, 18);
pub const HT_PATSIZE_DEFAULT = @as(u32, 17);
pub const HT_USERPAT_CX_MIN = @as(u32, 4);
pub const HT_USERPAT_CX_MAX = @as(u32, 256);
pub const HT_USERPAT_CY_MIN = @as(u32, 4);
pub const HT_USERPAT_CY_MAX = @as(u32, 256);
pub const HT_FORMAT_1BPP = @as(u32, 0);
pub const HT_FORMAT_4BPP = @as(u32, 2);
pub const HT_FORMAT_4BPP_IRGB = @as(u32, 3);
pub const HT_FORMAT_8BPP = @as(u32, 4);
pub const HT_FORMAT_16BPP = @as(u32, 5);
pub const HT_FORMAT_24BPP = @as(u32, 6);
pub const HT_FORMAT_32BPP = @as(u32, 7);
pub const WINDDI_MAX_BROADCAST_CONTEXT = @as(u32, 64);
pub const HT_FLAG_SQUARE_DEVICE_PEL = @as(u32, 1);
pub const HT_FLAG_HAS_BLACK_DYE = @as(u32, 2);
pub const HT_FLAG_ADDITIVE_PRIMS = @as(u32, 4);
pub const HT_FLAG_USE_8BPP_BITMASK = @as(u32, 8);
pub const HT_FLAG_INK_HIGH_ABSORPTION = @as(u32, 16);
pub const HT_FLAG_INK_ABSORPTION_INDICES = @as(u32, 96);
pub const HT_FLAG_DO_DEVCLR_XFORM = @as(u32, 128);
pub const HT_FLAG_OUTPUT_CMY = @as(u32, 256);
pub const HT_FLAG_PRINT_DRAFT_MODE = @as(u32, 512);
pub const HT_FLAG_INVERT_8BPP_BITMASK_IDX = @as(u32, 1024);
pub const HT_FLAG_8BPP_CMY332_MASK = @as(u32, 4278190080);
pub const HT_FLAG_INK_ABSORPTION_IDX0 = @as(u32, 0);
pub const HT_FLAG_INK_ABSORPTION_IDX1 = @as(u32, 32);
pub const HT_FLAG_INK_ABSORPTION_IDX2 = @as(u32, 64);
pub const HT_FLAG_INK_ABSORPTION_IDX3 = @as(u32, 96);
pub const HT_FLAG_NORMAL_INK_ABSORPTION = @as(u32, 0);
pub const HT_FLAG_LOW_INK_ABSORPTION = @as(u32, 32);
pub const HT_FLAG_LOWER_INK_ABSORPTION = @as(u32, 64);
pub const HT_FLAG_LOWEST_INK_ABSORPTION = @as(u32, 96);
pub const PPC_DEFAULT = @as(u32, 0);
pub const PPC_UNDEFINED = @as(u32, 1);
pub const PPC_RGB_ORDER_VERTICAL_STRIPES = @as(u32, 2);
pub const PPC_BGR_ORDER_VERTICAL_STRIPES = @as(u32, 3);
pub const PPC_RGB_ORDER_HORIZONTAL_STRIPES = @as(u32, 4);
pub const PPC_BGR_ORDER_HORIZONTAL_STRIPES = @as(u32, 5);
pub const PPG_DEFAULT = @as(u32, 0);
pub const PPG_SRGB = @as(u32, 1);
pub const BR_DEVICE_ICM = @as(u32, 1);
pub const BR_HOST_ICM = @as(u32, 2);
pub const BR_CMYKCOLOR = @as(u32, 4);
pub const BR_ORIGCOLOR = @as(u32, 8);
pub const FO_SIM_BOLD = @as(u32, 8192);
pub const FO_SIM_ITALIC = @as(u32, 16384);
pub const FO_EM_HEIGHT = @as(u32, 32768);
pub const FO_GRAY16 = @as(u32, 65536);
pub const FO_NOGRAY16 = @as(u32, 131072);
pub const FO_NOHINTS = @as(u32, 262144);
pub const FO_NO_CHOICE = @as(u32, 524288);
pub const FO_CFF = @as(u32, 1048576);
pub const FO_POSTSCRIPT = @as(u32, 2097152);
pub const FO_MULTIPLEMASTER = @as(u32, 4194304);
pub const FO_VERT_FACE = @as(u32, 8388608);
pub const FO_DBCS_FONT = @as(u32, 16777216);
pub const FO_NOCLEARTYPE = @as(u32, 33554432);
pub const FO_CLEARTYPE_X = @as(u32, 268435456);
pub const FO_CLEARTYPE_Y = @as(u32, 536870912);
pub const FO_CLEARTYPENATURAL_X = @as(u32, 1073741824);
pub const DC_TRIVIAL = @as(u32, 0);
pub const DC_RECT = @as(u32, 1);
pub const DC_COMPLEX = @as(u32, 3);
pub const FC_RECT = @as(u32, 1);
pub const FC_RECT4 = @as(u32, 2);
pub const FC_COMPLEX = @as(u32, 3);
pub const TC_RECTANGLES = @as(u32, 0);
pub const TC_PATHOBJ = @as(u32, 2);
pub const OC_BANK_CLIP = @as(u32, 1);
pub const CT_RECTANGLES = @as(i32, 0);
pub const CD_RIGHTDOWN = @as(i32, 0);
pub const CD_LEFTDOWN = @as(i32, 1);
pub const CD_RIGHTUP = @as(i32, 2);
pub const CD_LEFTUP = @as(i32, 3);
pub const CD_ANY = @as(i32, 4);
pub const CD_LEFTWARDS = @as(i32, 1);
pub const CD_UPWARDS = @as(i32, 2);
pub const FO_HGLYPHS = @as(i32, 0);
pub const FO_GLYPHBITS = @as(i32, 1);
pub const FO_PATHOBJ = @as(i32, 2);
pub const FD_NEGATIVE_FONT = @as(i32, 1);
pub const FO_DEVICE_FONT = @as(i32, 1);
pub const FO_OUTLINE_CAPABLE = @as(i32, 2);
pub const SO_FLAG_DEFAULT_PLACEMENT = @as(u32, 1);
pub const SO_HORIZONTAL = @as(u32, 2);
pub const SO_VERTICAL = @as(u32, 4);
pub const SO_REVERSED = @as(u32, 8);
pub const SO_ZERO_BEARINGS = @as(u32, 16);
pub const SO_CHAR_INC_EQUAL_BM_BASE = @as(u32, 32);
pub const SO_MAXEXT_EQUAL_BM_SIDE = @as(u32, 64);
pub const SO_DO_NOT_SUBSTITUTE_DEVICE_FONT = @as(u32, 128);
pub const SO_GLYPHINDEX_TEXTOUT = @as(u32, 256);
pub const SO_ESC_NOT_ORIENT = @as(u32, 512);
pub const SO_DXDY = @as(u32, 1024);
pub const SO_CHARACTER_EXTRA = @as(u32, 2048);
pub const SO_BREAK_EXTRA = @as(u32, 4096);
pub const FO_ATTR_MODE_ROTATE = @as(u32, 1);
pub const PAL_INDEXED = @as(u32, 1);
pub const PAL_BITFIELDS = @as(u32, 2);
pub const PAL_RGB = @as(u32, 4);
pub const PAL_BGR = @as(u32, 8);
pub const PAL_CMYK = @as(u32, 16);
pub const PO_BEZIERS = @as(u32, 1);
pub const PO_ELLIPSE = @as(u32, 2);
pub const PO_ALL_INTEGERS = @as(u32, 4);
pub const PO_ENUM_AS_INTEGERS = @as(u32, 8);
pub const PO_WIDENED = @as(u32, 16);
pub const PD_BEGINSUBPATH = @as(u32, 1);
pub const PD_ENDSUBPATH = @as(u32, 2);
pub const PD_RESETSTYLE = @as(u32, 4);
pub const PD_CLOSEFIGURE = @as(u32, 8);
pub const PD_BEZIERS = @as(u32, 16);
pub const SGI_EXTRASPACE = @as(u32, 0);
pub const STYPE_BITMAP = @as(i32, 0);
pub const STYPE_DEVBITMAP = @as(i32, 3);
pub const BMF_1BPP = @as(i32, 1);
pub const BMF_4BPP = @as(i32, 2);
pub const BMF_8BPP = @as(i32, 3);
pub const BMF_16BPP = @as(i32, 4);
pub const BMF_24BPP = @as(i32, 5);
pub const BMF_32BPP = @as(i32, 6);
pub const BMF_4RLE = @as(i32, 7);
pub const BMF_8RLE = @as(i32, 8);
pub const BMF_JPEG = @as(i32, 9);
pub const BMF_PNG = @as(i32, 10);
pub const BMF_TOPDOWN = @as(u32, 1);
pub const BMF_NOZEROINIT = @as(u32, 2);
pub const BMF_DONTCACHE = @as(u32, 4);
pub const BMF_USERMEM = @as(u32, 8);
pub const BMF_KMSECTION = @as(u32, 16);
pub const BMF_NOTSYSMEM = @as(u32, 32);
pub const BMF_WINDOW_BLT = @as(u32, 64);
pub const BMF_UMPDMEM = @as(u32, 128);
pub const BMF_TEMP_ALPHA = @as(u32, 256);
pub const BMF_ACC_NOTIFY = @as(u32, 32768);
pub const BMF_RMT_ENTER = @as(u32, 16384);
pub const BMF_RESERVED = @as(u32, 15872);
pub const GX_IDENTITY = @as(i32, 0);
pub const GX_OFFSET = @as(i32, 1);
pub const GX_SCALE = @as(i32, 2);
pub const GX_GENERAL = @as(i32, 3);
pub const XF_LTOL = @as(i32, 0);
pub const XF_INV_LTOL = @as(i32, 1);
pub const XF_LTOFX = @as(i32, 2);
pub const XF_INV_FXTOL = @as(i32, 3);
pub const XO_TRIVIAL = @as(u32, 1);
pub const XO_TABLE = @as(u32, 2);
pub const XO_TO_MONO = @as(u32, 4);
pub const XO_FROM_CMYK = @as(u32, 8);
pub const XO_DEVICE_ICM = @as(u32, 16);
pub const XO_HOST_ICM = @as(u32, 32);
pub const XO_SRCPALETTE = @as(u32, 1);
pub const XO_DESTPALETTE = @as(u32, 2);
pub const XO_DESTDCPALETTE = @as(u32, 3);
pub const XO_SRCBITFIELDS = @as(u32, 4);
pub const XO_DESTBITFIELDS = @as(u32, 5);
pub const HOOK_BITBLT = @as(u32, 1);
pub const HOOK_STRETCHBLT = @as(u32, 2);
pub const HOOK_PLGBLT = @as(u32, 4);
pub const HOOK_TEXTOUT = @as(u32, 8);
pub const HOOK_PAINT = @as(u32, 16);
pub const HOOK_STROKEPATH = @as(u32, 32);
pub const HOOK_FILLPATH = @as(u32, 64);
pub const HOOK_STROKEANDFILLPATH = @as(u32, 128);
pub const HOOK_LINETO = @as(u32, 256);
pub const HOOK_COPYBITS = @as(u32, 1024);
pub const HOOK_MOVEPANNING = @as(u32, 2048);
pub const HOOK_SYNCHRONIZE = @as(u32, 4096);
pub const HOOK_STRETCHBLTROP = @as(u32, 8192);
pub const HOOK_SYNCHRONIZEACCESS = @as(u32, 16384);
pub const HOOK_TRANSPARENTBLT = @as(u32, 32768);
pub const HOOK_ALPHABLEND = @as(u32, 65536);
pub const HOOK_GRADIENTFILL = @as(u32, 131072);
pub const HOOK_FLAGS = @as(u32, 243199);
pub const MS_NOTSYSTEMMEMORY = @as(u32, 1);
pub const MS_SHAREDACCESS = @as(u32, 2);
pub const MS_CDDDEVICEBITMAP = @as(u32, 4);
pub const MS_REUSEDDEVICEBITMAP = @as(u32, 8);
pub const DRVQUERY_USERMODE = @as(u32, 1);
pub const HS_DDI_MAX = @as(u32, 6);
pub const DRD_SUCCESS = @as(u32, 0);
pub const DRD_ERROR = @as(u32, 1);
pub const SS_SAVE = @as(u32, 0);
pub const SS_RESTORE = @as(u32, 1);
pub const SS_FREE = @as(u32, 2);
pub const CDBEX_REDIRECTION = @as(u32, 1);
pub const CDBEX_DXINTEROP = @as(u32, 2);
pub const CDBEX_NTSHAREDSURFACEHANDLE = @as(u32, 4);
pub const CDBEX_CROSSADAPTER = @as(u32, 8);
pub const CDBEX_REUSE = @as(u32, 16);
pub const WINDDI_MAXSETPALETTECOLORS = @as(u32, 256);
pub const WINDDI_MAXSETPALETTECOLORINDEX = @as(u32, 255);
pub const DM_DEFAULT = @as(u32, 1);
pub const DM_MONOCHROME = @as(u32, 2);
pub const DCR_SOLID = @as(u32, 0);
pub const DCR_DRIVER = @as(u32, 1);
pub const DCR_HALFTONE = @as(u32, 2);
pub const RB_DITHERCOLOR = @as(i32, -2147483648);
pub const QFT_LIGATURES = @as(i32, 1);
pub const QFT_KERNPAIRS = @as(i32, 2);
pub const QFT_GLYPHSET = @as(i32, 3);
pub const QFD_GLYPHANDBITMAP = @as(i32, 1);
pub const QFD_GLYPHANDOUTLINE = @as(i32, 2);
pub const QFD_MAXEXTENTS = @as(i32, 3);
pub const QFD_TT_GLYPHANDBITMAP = @as(i32, 4);
pub const QFD_TT_GRAY1_BITMAP = @as(i32, 5);
pub const QFD_TT_GRAY2_BITMAP = @as(i32, 6);
pub const QFD_TT_GRAY4_BITMAP = @as(i32, 8);
pub const QFD_TT_GRAY8_BITMAP = @as(i32, 9);
pub const QFD_TT_MONO_BITMAP = @as(i32, 5);
pub const QC_OUTLINES = @as(u32, 1);
pub const QC_1BIT = @as(u32, 2);
pub const QC_4BIT = @as(u32, 4);
pub const FF_SIGNATURE_VERIFIED = @as(u32, 1);
pub const FF_IGNORED_SIGNATURE = @as(u32, 2);
pub const QAW_GETWIDTHS = @as(u32, 0);
pub const QAW_GETEASYWIDTHS = @as(u32, 1);
pub const TTO_METRICS_ONLY = @as(u32, 1);
pub const TTO_QUBICS = @as(u32, 2);
pub const TTO_UNHINTED = @as(u32, 4);
pub const QFF_DESCRIPTION = @as(i32, 1);
pub const QFF_NUMFACES = @as(i32, 2);
pub const FP_ALTERNATEMODE = @as(i32, 1);
pub const FP_WINDINGMODE = @as(i32, 2);
pub const SPS_ERROR = @as(u32, 0);
pub const SPS_DECLINE = @as(u32, 1);
pub const SPS_ACCEPT_NOEXCLUDE = @as(u32, 2);
pub const SPS_ACCEPT_EXCLUDE = @as(u32, 3);
pub const SPS_ACCEPT_SYNCHRONOUS = @as(u32, 4);
pub const SPS_CHANGE = @as(i32, 1);
pub const SPS_ASYNCCHANGE = @as(i32, 2);
pub const SPS_ANIMATESTART = @as(i32, 4);
pub const SPS_ANIMATEUPDATE = @as(i32, 8);
pub const SPS_ALPHA = @as(i32, 16);
pub const SPS_RESERVED = @as(i32, 32);
pub const SPS_RESERVED1 = @as(i32, 64);
pub const SPS_FLAGSMASK = @as(i32, 255);
pub const SPS_LENGTHMASK = @as(i32, 3840);
pub const SPS_FREQMASK = @as(i32, 1044480);
pub const ED_ABORTDOC = @as(u32, 1);
pub const IGRF_RGB_256BYTES = @as(u32, 0);
pub const IGRF_RGB_256WORDS = @as(u32, 1);
pub const QDS_CHECKJPEGFORMAT = @as(u32, 0);
pub const QDS_CHECKPNGFORMAT = @as(u32, 1);
pub const DSS_TIMER_EVENT = @as(u32, 1);
pub const DSS_FLUSH_EVENT = @as(u32, 2);
pub const DSS_RESERVED = @as(u32, 4);
pub const DSS_RESERVED1 = @as(u32, 8);
pub const DSS_RESERVED2 = @as(u32, 16);
pub const DN_ACCELERATION_LEVEL = @as(u32, 1);
pub const DN_DEVICE_ORIGIN = @as(u32, 2);
pub const DN_SLEEP_MODE = @as(u32, 3);
pub const DN_DRAWING_BEGIN = @as(u32, 4);
pub const DN_ASSOCIATE_WINDOW = @as(u32, 5);
pub const DN_COMPOSITION_CHANGED = @as(u32, 6);
pub const DN_DRAWING_BEGIN_APIBITMAP = @as(u32, 7);
pub const DN_SURFOBJ_DESTRUCTION = @as(u32, 8);
pub const WOC_RGN_CLIENT_DELTA = @as(u32, 1);
pub const WOC_RGN_CLIENT = @as(u32, 2);
pub const WOC_RGN_SURFACE_DELTA = @as(u32, 4);
pub const WOC_RGN_SURFACE = @as(u32, 8);
pub const WOC_CHANGED = @as(u32, 16);
pub const WOC_DELETE = @as(u32, 32);
pub const WOC_DRAWN = @as(u32, 64);
pub const WOC_SPRITE_OVERLAP = @as(u32, 128);
pub const WOC_SPRITE_NO_OVERLAP = @as(u32, 256);
pub const WOC_RGN_SPRITE = @as(u32, 512);
pub const WO_RGN_CLIENT_DELTA = @as(u32, 1);
pub const WO_RGN_CLIENT = @as(u32, 2);
pub const WO_RGN_SURFACE_DELTA = @as(u32, 4);
pub const WO_RGN_SURFACE = @as(u32, 8);
pub const WO_RGN_UPDATE_ALL = @as(u32, 16);
pub const WO_RGN_WINDOW = @as(u32, 32);
pub const WO_DRAW_NOTIFY = @as(u32, 64);
pub const WO_SPRITE_NOTIFY = @as(u32, 128);
pub const WO_RGN_DESKTOP_COORD = @as(u32, 256);
pub const WO_RGN_SPRITE = @as(u32, 512);
pub const EHN_RESTORED = @as(u32, 0);
pub const EHN_ERROR = @as(u32, 1);
pub const ECS_TEARDOWN = @as(u32, 1);
pub const ECS_REDRAW = @as(u32, 2);
pub const DEVHTADJF_COLOR_DEVICE = @as(u32, 1);
pub const DEVHTADJF_ADDITIVE_DEVICE = @as(u32, 2);
pub const FL_ZERO_MEMORY = @as(u32, 1);
pub const FL_NONPAGED_MEMORY = @as(u32, 2);
pub const FL_NON_SESSION = @as(u32, 4);
pub const QSA_MMX = @as(u32, 256);
pub const QSA_SSE = @as(u32, 8192);
pub const QSA_3DNOW = @as(u32, 16384);
pub const QSA_SSE1 = @as(u32, 8192);
pub const QSA_SSE2 = @as(u32, 65536);
pub const QSA_SSE3 = @as(u32, 524288);
pub const ENG_FNT_CACHE_READ_FAULT = @as(u32, 1);
pub const ENG_FNT_CACHE_WRITE_FAULT = @as(u32, 2);
pub const DRH_APIBITMAP = @as(u32, 1);
pub const MC_CAPS_NONE = @as(u32, 0);
pub const MC_CAPS_MONITOR_TECHNOLOGY_TYPE = @as(u32, 1);
pub const MC_CAPS_BRIGHTNESS = @as(u32, 2);
pub const MC_CAPS_CONTRAST = @as(u32, 4);
pub const MC_CAPS_COLOR_TEMPERATURE = @as(u32, 8);
pub const MC_CAPS_RED_GREEN_BLUE_GAIN = @as(u32, 16);
pub const MC_CAPS_RED_GREEN_BLUE_DRIVE = @as(u32, 32);
pub const MC_CAPS_DEGAUSS = @as(u32, 64);
pub const MC_CAPS_DISPLAY_AREA_POSITION = @as(u32, 128);
pub const MC_CAPS_DISPLAY_AREA_SIZE = @as(u32, 256);
pub const MC_CAPS_RESTORE_FACTORY_DEFAULTS = @as(u32, 1024);
pub const MC_CAPS_RESTORE_FACTORY_COLOR_DEFAULTS = @as(u32, 2048);
pub const MC_RESTORE_FACTORY_DEFAULTS_ENABLES_MONITOR_SETTINGS = @as(u32, 4096);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_NONE = @as(u32, 0);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_4000K = @as(u32, 1);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_5000K = @as(u32, 2);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_6500K = @as(u32, 4);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_7500K = @as(u32, 8);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_8200K = @as(u32, 16);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_9300K = @as(u32, 32);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_10000K = @as(u32, 64);
pub const MC_SUPPORTED_COLOR_TEMPERATURE_11500K = @as(u32, 128);
pub const PHYSICAL_MONITOR_DESCRIPTION_SIZE = @as(u32, 128);
pub const GETCONNECTEDIDS_TARGET = @as(u32, 0);
pub const GETCONNECTEDIDS_SOURCE = @as(u32, 1);
pub const S_INIT = @as(u32, 2);
pub const SETCONFIGURATION_STATUS_APPLIED = @as(u32, 0);
pub const SETCONFIGURATION_STATUS_ADDITIONAL = @as(u32, 1);
pub const SETCONFIGURATION_STATUS_OVERRIDDEN = @as(u32, 2);
//--------------------------------------------------------------------------------
// Section: Types (316)
//--------------------------------------------------------------------------------
// TODO: this type has a FreeFunc 'EngDeleteSemaphore', what can Zig do with this information?
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const HSEMAPHORE = *opaque{};
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const HSURF = *opaque{};
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const HFASTMUTEX = *opaque{};
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const HDRVOBJ = *opaque{};
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const HDEV = *opaque{};
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const HBM = *opaque{};
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const DHSURF = isize;
// TODO: this type has an InvalidHandleValue of '0', what can Zig do with this information?
pub const DHPDEV = isize;
pub const DISPLAYCONFIG_RATIONAL = extern struct {
Numerator: u32,
Denominator: u32,
};
pub const DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY = enum(i32) {
OTHER = -1,
HD15 = 0,
SVIDEO = 1,
COMPOSITE_VIDEO = 2,
COMPONENT_VIDEO = 3,
DVI = 4,
HDMI = 5,
LVDS = 6,
D_JPN = 8,
SDI = 9,
DISPLAYPORT_EXTERNAL = 10,
DISPLAYPORT_EMBEDDED = 11,
UDI_EXTERNAL = 12,
UDI_EMBEDDED = 13,
SDTVDONGLE = 14,
MIRACAST = 15,
INDIRECT_WIRED = 16,
INDIRECT_VIRTUAL = 17,
DISPLAYPORT_USB_TUNNEL = 18,
INTERNAL = -2147483648,
// FORCE_UINT32 = -1, this enum value conflicts with OTHER
};
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_OTHER = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.OTHER;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_HD15 = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.HD15;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SVIDEO = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.SVIDEO;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_COMPOSITE_VIDEO = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.COMPOSITE_VIDEO;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_COMPONENT_VIDEO = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.COMPONENT_VIDEO;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DVI = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DVI;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_HDMI = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.HDMI;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_LVDS = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.LVDS;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_D_JPN = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.D_JPN;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SDI = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.SDI;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EXTERNAL = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYPORT_EXTERNAL;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EMBEDDED = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYPORT_EMBEDDED;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_UDI_EXTERNAL = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.UDI_EXTERNAL;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_UDI_EMBEDDED = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.UDI_EMBEDDED;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SDTVDONGLE = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.SDTVDONGLE;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_MIRACAST = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.MIRACAST;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INDIRECT_WIRED = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.INDIRECT_WIRED;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INDIRECT_VIRTUAL = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.INDIRECT_VIRTUAL;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_USB_TUNNEL = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.DISPLAYPORT_USB_TUNNEL;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INTERNAL = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.INTERNAL;
pub const DISPLAYCONFIG_OUTPUT_TECHNOLOGY_FORCE_UINT32 = DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY.OTHER;
pub const DISPLAYCONFIG_SCANLINE_ORDERING = enum(i32) {
UNSPECIFIED = 0,
PROGRESSIVE = 1,
INTERLACED = 2,
// INTERLACED_UPPERFIELDFIRST = 2, this enum value conflicts with INTERLACED
INTERLACED_LOWERFIELDFIRST = 3,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_SCANLINE_ORDERING_UNSPECIFIED = DISPLAYCONFIG_SCANLINE_ORDERING.UNSPECIFIED;
pub const DISPLAYCONFIG_SCANLINE_ORDERING_PROGRESSIVE = DISPLAYCONFIG_SCANLINE_ORDERING.PROGRESSIVE;
pub const DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED = DISPLAYCONFIG_SCANLINE_ORDERING.INTERLACED;
pub const DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED_UPPERFIELDFIRST = DISPLAYCONFIG_SCANLINE_ORDERING.INTERLACED;
pub const DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED_LOWERFIELDFIRST = DISPLAYCONFIG_SCANLINE_ORDERING.INTERLACED_LOWERFIELDFIRST;
pub const DISPLAYCONFIG_SCANLINE_ORDERING_FORCE_UINT32 = DISPLAYCONFIG_SCANLINE_ORDERING.FORCE_UINT32;
pub const DISPLAYCONFIG_2DREGION = extern struct {
cx: u32,
cy: u32,
};
pub const DISPLAYCONFIG_VIDEO_SIGNAL_INFO = extern struct {
pixelRate: u64,
hSyncFreq: DISPLAYCONFIG_RATIONAL,
vSyncFreq: DISPLAYCONFIG_RATIONAL,
activeSize: DISPLAYCONFIG_2DREGION,
totalSize: DISPLAYCONFIG_2DREGION,
Anonymous: extern union {
AdditionalSignalInfo: extern struct {
_bitfield: u32,
},
videoStandard: u32,
},
scanLineOrdering: DISPLAYCONFIG_SCANLINE_ORDERING,
};
pub const DISPLAYCONFIG_SCALING = enum(i32) {
IDENTITY = 1,
CENTERED = 2,
STRETCHED = 3,
ASPECTRATIOCENTEREDMAX = 4,
CUSTOM = 5,
PREFERRED = 128,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_SCALING_IDENTITY = DISPLAYCONFIG_SCALING.IDENTITY;
pub const DISPLAYCONFIG_SCALING_CENTERED = DISPLAYCONFIG_SCALING.CENTERED;
pub const DISPLAYCONFIG_SCALING_STRETCHED = DISPLAYCONFIG_SCALING.STRETCHED;
pub const DISPLAYCONFIG_SCALING_ASPECTRATIOCENTEREDMAX = DISPLAYCONFIG_SCALING.ASPECTRATIOCENTEREDMAX;
pub const DISPLAYCONFIG_SCALING_CUSTOM = DISPLAYCONFIG_SCALING.CUSTOM;
pub const DISPLAYCONFIG_SCALING_PREFERRED = DISPLAYCONFIG_SCALING.PREFERRED;
pub const DISPLAYCONFIG_SCALING_FORCE_UINT32 = DISPLAYCONFIG_SCALING.FORCE_UINT32;
pub const DISPLAYCONFIG_ROTATION = enum(i32) {
IDENTITY = 1,
ROTATE90 = 2,
ROTATE180 = 3,
ROTATE270 = 4,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_ROTATION_IDENTITY = DISPLAYCONFIG_ROTATION.IDENTITY;
pub const DISPLAYCONFIG_ROTATION_ROTATE90 = DISPLAYCONFIG_ROTATION.ROTATE90;
pub const DISPLAYCONFIG_ROTATION_ROTATE180 = DISPLAYCONFIG_ROTATION.ROTATE180;
pub const DISPLAYCONFIG_ROTATION_ROTATE270 = DISPLAYCONFIG_ROTATION.ROTATE270;
pub const DISPLAYCONFIG_ROTATION_FORCE_UINT32 = DISPLAYCONFIG_ROTATION.FORCE_UINT32;
pub const DISPLAYCONFIG_MODE_INFO_TYPE = enum(i32) {
SOURCE = 1,
TARGET = 2,
DESKTOP_IMAGE = 3,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_MODE_INFO_TYPE_SOURCE = DISPLAYCONFIG_MODE_INFO_TYPE.SOURCE;
pub const DISPLAYCONFIG_MODE_INFO_TYPE_TARGET = DISPLAYCONFIG_MODE_INFO_TYPE.TARGET;
pub const DISPLAYCONFIG_MODE_INFO_TYPE_DESKTOP_IMAGE = DISPLAYCONFIG_MODE_INFO_TYPE.DESKTOP_IMAGE;
pub const DISPLAYCONFIG_MODE_INFO_TYPE_FORCE_UINT32 = DISPLAYCONFIG_MODE_INFO_TYPE.FORCE_UINT32;
pub const DISPLAYCONFIG_PIXELFORMAT = enum(i32) {
@"8BPP" = 1,
@"16BPP" = 2,
@"24BPP" = 3,
@"32BPP" = 4,
NONGDI = 5,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_PIXELFORMAT_8BPP = DISPLAYCONFIG_PIXELFORMAT.@"8BPP";
pub const DISPLAYCONFIG_PIXELFORMAT_16BPP = DISPLAYCONFIG_PIXELFORMAT.@"16BPP";
pub const DISPLAYCONFIG_PIXELFORMAT_24BPP = DISPLAYCONFIG_PIXELFORMAT.@"24BPP";
pub const DISPLAYCONFIG_PIXELFORMAT_32BPP = DISPLAYCONFIG_PIXELFORMAT.@"32BPP";
pub const DISPLAYCONFIG_PIXELFORMAT_NONGDI = DISPLAYCONFIG_PIXELFORMAT.NONGDI;
pub const DISPLAYCONFIG_PIXELFORMAT_FORCE_UINT32 = DISPLAYCONFIG_PIXELFORMAT.FORCE_UINT32;
pub const DISPLAYCONFIG_SOURCE_MODE = extern struct {
width: u32,
height: u32,
pixelFormat: DISPLAYCONFIG_PIXELFORMAT,
position: POINTL,
};
pub const DISPLAYCONFIG_TARGET_MODE = extern struct {
targetVideoSignalInfo: DISPLAYCONFIG_VIDEO_SIGNAL_INFO,
};
pub const DISPLAYCONFIG_DESKTOP_IMAGE_INFO = extern struct {
PathSourceSize: POINTL,
DesktopImageRegion: RECTL,
DesktopImageClip: RECTL,
};
pub const DISPLAYCONFIG_MODE_INFO = extern struct {
infoType: DISPLAYCONFIG_MODE_INFO_TYPE,
id: u32,
adapterId: LUID,
Anonymous: extern union {
targetMode: DISPLAYCONFIG_TARGET_MODE,
sourceMode: DISPLAYCONFIG_SOURCE_MODE,
desktopImageInfo: DISPLAYCONFIG_DESKTOP_IMAGE_INFO,
},
};
pub const DISPLAYCONFIG_PATH_SOURCE_INFO = extern struct {
adapterId: LUID,
id: u32,
Anonymous: extern union {
modeInfoIdx: u32,
Anonymous: extern struct {
_bitfield: u32,
},
},
statusFlags: u32,
};
pub const DISPLAYCONFIG_PATH_TARGET_INFO = extern struct {
adapterId: LUID,
id: u32,
Anonymous: extern union {
modeInfoIdx: u32,
Anonymous: extern struct {
_bitfield: u32,
},
},
outputTechnology: DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY,
rotation: DISPLAYCONFIG_ROTATION,
scaling: DISPLAYCONFIG_SCALING,
refreshRate: DISPLAYCONFIG_RATIONAL,
scanLineOrdering: DISPLAYCONFIG_SCANLINE_ORDERING,
targetAvailable: BOOL,
statusFlags: u32,
};
pub const DISPLAYCONFIG_PATH_INFO = extern struct {
sourceInfo: DISPLAYCONFIG_PATH_SOURCE_INFO,
targetInfo: DISPLAYCONFIG_PATH_TARGET_INFO,
flags: u32,
};
pub const DISPLAYCONFIG_TOPOLOGY_ID = enum(i32) {
INTERNAL = 1,
CLONE = 2,
EXTEND = 4,
EXTERNAL = 8,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_TOPOLOGY_INTERNAL = DISPLAYCONFIG_TOPOLOGY_ID.INTERNAL;
pub const DISPLAYCONFIG_TOPOLOGY_CLONE = DISPLAYCONFIG_TOPOLOGY_ID.CLONE;
pub const DISPLAYCONFIG_TOPOLOGY_EXTEND = DISPLAYCONFIG_TOPOLOGY_ID.EXTEND;
pub const DISPLAYCONFIG_TOPOLOGY_EXTERNAL = DISPLAYCONFIG_TOPOLOGY_ID.EXTERNAL;
pub const DISPLAYCONFIG_TOPOLOGY_FORCE_UINT32 = DISPLAYCONFIG_TOPOLOGY_ID.FORCE_UINT32;
pub const DISPLAYCONFIG_DEVICE_INFO_TYPE = enum(i32) {
GET_SOURCE_NAME = 1,
GET_TARGET_NAME = 2,
GET_TARGET_PREFERRED_MODE = 3,
GET_ADAPTER_NAME = 4,
SET_TARGET_PERSISTENCE = 5,
GET_TARGET_BASE_TYPE = 6,
GET_SUPPORT_VIRTUAL_RESOLUTION = 7,
SET_SUPPORT_VIRTUAL_RESOLUTION = 8,
GET_ADVANCED_COLOR_INFO = 9,
SET_ADVANCED_COLOR_STATE = 10,
GET_SDR_WHITE_LEVEL = 11,
GET_MONITOR_SPECIALIZATION = 12,
SET_MONITOR_SPECIALIZATION = 13,
FORCE_UINT32 = -1,
};
pub const DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_SOURCE_NAME;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_TARGET_NAME;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_PREFERRED_MODE = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_TARGET_PREFERRED_MODE;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_ADAPTER_NAME = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_ADAPTER_NAME;
pub const DISPLAYCONFIG_DEVICE_INFO_SET_TARGET_PERSISTENCE = DISPLAYCONFIG_DEVICE_INFO_TYPE.SET_TARGET_PERSISTENCE;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_BASE_TYPE = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_TARGET_BASE_TYPE;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_SUPPORT_VIRTUAL_RESOLUTION = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_SUPPORT_VIRTUAL_RESOLUTION;
pub const DISPLAYCONFIG_DEVICE_INFO_SET_SUPPORT_VIRTUAL_RESOLUTION = DISPLAYCONFIG_DEVICE_INFO_TYPE.SET_SUPPORT_VIRTUAL_RESOLUTION;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_ADVANCED_COLOR_INFO;
pub const DISPLAYCONFIG_DEVICE_INFO_SET_ADVANCED_COLOR_STATE = DISPLAYCONFIG_DEVICE_INFO_TYPE.SET_ADVANCED_COLOR_STATE;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_SDR_WHITE_LEVEL = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_SDR_WHITE_LEVEL;
pub const DISPLAYCONFIG_DEVICE_INFO_GET_MONITOR_SPECIALIZATION = DISPLAYCONFIG_DEVICE_INFO_TYPE.GET_MONITOR_SPECIALIZATION;
pub const DISPLAYCONFIG_DEVICE_INFO_SET_MONITOR_SPECIALIZATION = DISPLAYCONFIG_DEVICE_INFO_TYPE.SET_MONITOR_SPECIALIZATION;
pub const DISPLAYCONFIG_DEVICE_INFO_FORCE_UINT32 = DISPLAYCONFIG_DEVICE_INFO_TYPE.FORCE_UINT32;
pub const DISPLAYCONFIG_DEVICE_INFO_HEADER = extern struct {
type: DISPLAYCONFIG_DEVICE_INFO_TYPE,
size: u32,
adapterId: LUID,
id: u32,
};
pub const DISPLAYCONFIG_SOURCE_DEVICE_NAME = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
viewGdiDeviceName: [32]u16,
};
pub const DISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS = extern struct {
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
};
pub const DISPLAYCONFIG_TARGET_DEVICE_NAME = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
flags: DISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS,
outputTechnology: DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY,
edidManufactureId: u16,
edidProductCodeId: u16,
connectorInstance: u32,
monitorFriendlyDeviceName: [64]u16,
monitorDevicePath: [128]u16,
};
pub const DISPLAYCONFIG_TARGET_PREFERRED_MODE = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
width: u32,
height: u32,
targetMode: DISPLAYCONFIG_TARGET_MODE,
};
pub const DISPLAYCONFIG_ADAPTER_NAME = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
adapterDevicePath: [128]u16,
};
pub const DISPLAYCONFIG_TARGET_BASE_TYPE = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
baseOutputTechnology: DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY,
};
pub const DISPLAYCONFIG_SET_TARGET_PERSISTENCE = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
};
pub const DISPLAYCONFIG_SUPPORT_VIRTUAL_RESOLUTION = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
};
pub const DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
colorEncoding: DISPLAYCONFIG_COLOR_ENCODING,
bitsPerColorChannel: u32,
};
pub const DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
};
pub const DISPLAYCONFIG_SDR_WHITE_LEVEL = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
SDRWhiteLevel: u32,
};
pub const DISPLAYCONFIG_GET_MONITOR_SPECIALIZATION = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
};
pub const DISPLAYCONFIG_SET_MONITOR_SPECIALIZATION = extern struct {
header: DISPLAYCONFIG_DEVICE_INFO_HEADER,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
value: u32,
},
specializationType: Guid,
specializationSubType: Guid,
specializationApplicationName: [128]u16,
};
pub const PHYSICAL_MONITOR = extern struct {
hPhysicalMonitor: ?HANDLE align(1),
szPhysicalMonitorDescription: [128]u16 align(1),
};
pub const MC_TIMING_REPORT = extern struct {
dwHorizontalFrequencyInHZ: u32 align(1),
dwVerticalFrequencyInHZ: u32 align(1),
bTimingStatusByte: u8 align(1),
};
pub const MC_VCP_CODE_TYPE = enum(i32) {
MOMENTARY = 0,
SET_PARAMETER = 1,
};
pub const MC_MOMENTARY = MC_VCP_CODE_TYPE.MOMENTARY;
pub const MC_SET_PARAMETER = MC_VCP_CODE_TYPE.SET_PARAMETER;
pub const MC_DISPLAY_TECHNOLOGY_TYPE = enum(i32) {
SHADOW_MASK_CATHODE_RAY_TUBE = 0,
APERTURE_GRILL_CATHODE_RAY_TUBE = 1,
THIN_FILM_TRANSISTOR = 2,
LIQUID_CRYSTAL_ON_SILICON = 3,
PLASMA = 4,
ORGANIC_LIGHT_EMITTING_DIODE = 5,
ELECTROLUMINESCENT = 6,
MICROELECTROMECHANICAL = 7,
FIELD_EMISSION_DEVICE = 8,
};
pub const MC_SHADOW_MASK_CATHODE_RAY_TUBE = MC_DISPLAY_TECHNOLOGY_TYPE.SHADOW_MASK_CATHODE_RAY_TUBE;
pub const MC_APERTURE_GRILL_CATHODE_RAY_TUBE = MC_DISPLAY_TECHNOLOGY_TYPE.APERTURE_GRILL_CATHODE_RAY_TUBE;
pub const MC_THIN_FILM_TRANSISTOR = MC_DISPLAY_TECHNOLOGY_TYPE.THIN_FILM_TRANSISTOR;
pub const MC_LIQUID_CRYSTAL_ON_SILICON = MC_DISPLAY_TECHNOLOGY_TYPE.LIQUID_CRYSTAL_ON_SILICON;
pub const MC_PLASMA = MC_DISPLAY_TECHNOLOGY_TYPE.PLASMA;
pub const MC_ORGANIC_LIGHT_EMITTING_DIODE = MC_DISPLAY_TECHNOLOGY_TYPE.ORGANIC_LIGHT_EMITTING_DIODE;
pub const MC_ELECTROLUMINESCENT = MC_DISPLAY_TECHNOLOGY_TYPE.ELECTROLUMINESCENT;
pub const MC_MICROELECTROMECHANICAL = MC_DISPLAY_TECHNOLOGY_TYPE.MICROELECTROMECHANICAL;
pub const MC_FIELD_EMISSION_DEVICE = MC_DISPLAY_TECHNOLOGY_TYPE.FIELD_EMISSION_DEVICE;
pub const MC_DRIVE_TYPE = enum(i32) {
RED_DRIVE = 0,
GREEN_DRIVE = 1,
BLUE_DRIVE = 2,
};
pub const MC_RED_DRIVE = MC_DRIVE_TYPE.RED_DRIVE;
pub const MC_GREEN_DRIVE = MC_DRIVE_TYPE.GREEN_DRIVE;
pub const MC_BLUE_DRIVE = MC_DRIVE_TYPE.BLUE_DRIVE;
pub const MC_GAIN_TYPE = enum(i32) {
RED_GAIN = 0,
GREEN_GAIN = 1,
BLUE_GAIN = 2,
};
pub const MC_RED_GAIN = MC_GAIN_TYPE.RED_GAIN;
pub const MC_GREEN_GAIN = MC_GAIN_TYPE.GREEN_GAIN;
pub const MC_BLUE_GAIN = MC_GAIN_TYPE.BLUE_GAIN;
pub const MC_POSITION_TYPE = enum(i32) {
HORIZONTAL_POSITION = 0,
VERTICAL_POSITION = 1,
};
pub const MC_HORIZONTAL_POSITION = MC_POSITION_TYPE.HORIZONTAL_POSITION;
pub const MC_VERTICAL_POSITION = MC_POSITION_TYPE.VERTICAL_POSITION;
pub const MC_SIZE_TYPE = enum(i32) {
WIDTH = 0,
HEIGHT = 1,
};
pub const MC_WIDTH = MC_SIZE_TYPE.WIDTH;
pub const MC_HEIGHT = MC_SIZE_TYPE.HEIGHT;
pub const MC_COLOR_TEMPERATURE = enum(i32) {
UNKNOWN = 0,
@"4000K" = 1,
@"5000K" = 2,
@"6500K" = 3,
@"7500K" = 4,
@"8200K" = 5,
@"9300K" = 6,
@"10000K" = 7,
@"11500K" = 8,
};
pub const MC_COLOR_TEMPERATURE_UNKNOWN = MC_COLOR_TEMPERATURE.UNKNOWN;
pub const MC_COLOR_TEMPERATURE_4000K = MC_COLOR_TEMPERATURE.@"4000K";
pub const MC_COLOR_TEMPERATURE_5000K = MC_COLOR_TEMPERATURE.@"5000K";
pub const MC_COLOR_TEMPERATURE_6500K = MC_COLOR_TEMPERATURE.@"6500K";
pub const MC_COLOR_TEMPERATURE_7500K = MC_COLOR_TEMPERATURE.@"7500K";
pub const MC_COLOR_TEMPERATURE_8200K = MC_COLOR_TEMPERATURE.@"8200K";
pub const MC_COLOR_TEMPERATURE_9300K = MC_COLOR_TEMPERATURE.@"9300K";
pub const MC_COLOR_TEMPERATURE_10000K = MC_COLOR_TEMPERATURE.@"10000K";
pub const MC_COLOR_TEMPERATURE_11500K = MC_COLOR_TEMPERATURE.@"11500K";
pub const Sources = extern struct {
sourceId: u32,
numTargets: i32,
aTargets: [1]u32,
};
pub const Adapter = extern struct {
AdapterName: [128]u16,
numSources: i32,
sources: [1]Sources,
};
pub const Adapters = extern struct {
numAdapters: i32,
adapter: [1]Adapter,
};
pub const DisplayMode = extern struct {
DeviceName: [32]u16,
devMode: DEVMODEW,
};
pub const DisplayModes = extern struct {
numDisplayModes: i32,
displayMode: [1]DisplayMode,
};
const IID_ICloneViewHelper_Value = Guid.initString("f6a3d4c4-5632-4d83-b0a1-fb88712b1eb7");
pub const IID_ICloneViewHelper = &IID_ICloneViewHelper_Value;
pub const ICloneViewHelper = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetConnectedIDs: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const ICloneViewHelper,
wszAdaptorName: ?[*:0]const u16,
pulCount: ?*u32,
pulID: ?*u32,
ulFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const ICloneViewHelper,
wszAdaptorName: ?[*:0]const u16,
pulCount: ?*u32,
pulID: ?*u32,
ulFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetActiveTopology: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const ICloneViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
pulCount: ?*u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const ICloneViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
pulCount: ?*u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetActiveTopology: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const ICloneViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
ulCount: u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const ICloneViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
ulCount: u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Commit: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const ICloneViewHelper,
fFinalCall: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const ICloneViewHelper,
fFinalCall: BOOL,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn ICloneViewHelper_GetConnectedIDs(self: *const T, wszAdaptorName: ?[*:0]const u16, pulCount: ?*u32, pulID: ?*u32, ulFlags: u32) callconv(.Inline) HRESULT {
return @as(*const ICloneViewHelper.VTable, @ptrCast(self.vtable)).GetConnectedIDs(@as(*const ICloneViewHelper, @ptrCast(self)), wszAdaptorName, pulCount, pulID, ulFlags);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn ICloneViewHelper_GetActiveTopology(self: *const T, wszAdaptorName: ?[*:0]const u16, ulSourceID: u32, pulCount: ?*u32, pulTargetID: ?*u32) callconv(.Inline) HRESULT {
return @as(*const ICloneViewHelper.VTable, @ptrCast(self.vtable)).GetActiveTopology(@as(*const ICloneViewHelper, @ptrCast(self)), wszAdaptorName, ulSourceID, pulCount, pulTargetID);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn ICloneViewHelper_SetActiveTopology(self: *const T, wszAdaptorName: ?[*:0]const u16, ulSourceID: u32, ulCount: u32, pulTargetID: ?*u32) callconv(.Inline) HRESULT {
return @as(*const ICloneViewHelper.VTable, @ptrCast(self.vtable)).SetActiveTopology(@as(*const ICloneViewHelper, @ptrCast(self)), wszAdaptorName, ulSourceID, ulCount, pulTargetID);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn ICloneViewHelper_Commit(self: *const T, fFinalCall: BOOL) callconv(.Inline) HRESULT {
return @as(*const ICloneViewHelper.VTable, @ptrCast(self.vtable)).Commit(@as(*const ICloneViewHelper, @ptrCast(self)), fFinalCall);
}
};}
pub usingnamespace MethodMixin(@This());
};
const IID_IViewHelper_Value = Guid.initString("e85ccef5-aaaa-47f0-b5e3-61f7aecdc4c1");
pub const IID_IViewHelper = &IID_IViewHelper_Value;
pub const IViewHelper = extern struct {
pub const VTable = extern struct {
base: IUnknown.VTable,
GetConnectedIDs: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IViewHelper,
wszAdaptorName: ?[*:0]const u16,
pulCount: ?*u32,
pulID: ?*u32,
ulFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IViewHelper,
wszAdaptorName: ?[*:0]const u16,
pulCount: ?*u32,
pulID: ?*u32,
ulFlags: u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetActiveTopology: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
pulCount: ?*u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
pulCount: ?*u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetActiveTopology: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
ulCount: u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IViewHelper,
wszAdaptorName: ?[*:0]const u16,
ulSourceID: u32,
ulCount: u32,
pulTargetID: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
Commit: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IViewHelper,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IViewHelper,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
SetConfiguration: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IViewHelper,
pIStream: ?*IStream,
pulStatus: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IViewHelper,
pIStream: ?*IStream,
pulStatus: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
GetProceedOnNewConfiguration: switch (@import("builtin").zig_backend) {
.stage1 => fn(
self: *const IViewHelper,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
else => *const fn(
self: *const IViewHelper,
) callconv(@import("std").os.windows.WINAPI) HRESULT,
},
};
vtable: *const VTable,
pub fn MethodMixin(comptime T: type) type { return struct {
pub usingnamespace IUnknown.MethodMixin(T);
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IViewHelper_GetConnectedIDs(self: *const T, wszAdaptorName: ?[*:0]const u16, pulCount: ?*u32, pulID: ?*u32, ulFlags: u32) callconv(.Inline) HRESULT {
return @as(*const IViewHelper.VTable, @ptrCast(self.vtable)).GetConnectedIDs(@as(*const IViewHelper, @ptrCast(self)), wszAdaptorName, pulCount, pulID, ulFlags);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IViewHelper_GetActiveTopology(self: *const T, wszAdaptorName: ?[*:0]const u16, ulSourceID: u32, pulCount: ?*u32, pulTargetID: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IViewHelper.VTable, @ptrCast(self.vtable)).GetActiveTopology(@as(*const IViewHelper, @ptrCast(self)), wszAdaptorName, ulSourceID, pulCount, pulTargetID);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IViewHelper_SetActiveTopology(self: *const T, wszAdaptorName: ?[*:0]const u16, ulSourceID: u32, ulCount: u32, pulTargetID: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IViewHelper.VTable, @ptrCast(self.vtable)).SetActiveTopology(@as(*const IViewHelper, @ptrCast(self)), wszAdaptorName, ulSourceID, ulCount, pulTargetID);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IViewHelper_Commit(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IViewHelper.VTable, @ptrCast(self.vtable)).Commit(@as(*const IViewHelper, @ptrCast(self)));
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IViewHelper_SetConfiguration(self: *const T, pIStream: ?*IStream, pulStatus: ?*u32) callconv(.Inline) HRESULT {
return @as(*const IViewHelper.VTable, @ptrCast(self.vtable)).SetConfiguration(@as(*const IViewHelper, @ptrCast(self)), pIStream, pulStatus);
}
// NOTE: method is namespaced with interface name to avoid conflicts for now
pub fn IViewHelper_GetProceedOnNewConfiguration(self: *const T) callconv(.Inline) HRESULT {
return @as(*const IViewHelper.VTable, @ptrCast(self.vtable)).GetProceedOnNewConfiguration(@as(*const IViewHelper, @ptrCast(self)));
}
};}
pub usingnamespace MethodMixin(@This());
};
pub const VIDEOPARAMETERS = extern struct {
Guid: Guid,
dwOffset: u32,
dwCommand: u32,
dwFlags: u32,
dwMode: u32,
dwTVStandard: u32,
dwAvailableModes: u32,
dwAvailableTVStandard: u32,
dwFlickerFilter: u32,
dwOverScanX: u32,
dwOverScanY: u32,
dwMaxUnscaledX: u32,
dwMaxUnscaledY: u32,
dwPositionX: u32,
dwPositionY: u32,
dwBrightness: u32,
dwContrast: u32,
dwCPType: u32,
dwCPCommand: u32,
dwCPStandard: u32,
dwCPKey: u32,
bCP_APSTriggerBits: u32,
bOEMCopyProtection: [256]u8,
};
pub const POINTFIX = extern struct {
x: i32,
y: i32,
};
pub const RECTFX = extern struct {
xLeft: i32,
yTop: i32,
xRight: i32,
yBottom: i32,
};
pub const FD_DEVICEMETRICS = extern struct {
flRealizedType: u32,
pteBase: POINTE,
pteSide: POINTE,
lD: i32,
fxMaxAscender: i32,
fxMaxDescender: i32,
ptlUnderline1: POINTL,
ptlStrikeOut: POINTL,
ptlULThickness: POINTL,
ptlSOThickness: POINTL,
cxMax: u32,
cyMax: u32,
cjGlyphMax: u32,
fdxQuantized: FD_XFORM,
lNonLinearExtLeading: i32,
lNonLinearIntLeading: i32,
lNonLinearMaxCharWidth: i32,
lNonLinearAvgCharWidth: i32,
lMinA: i32,
lMinC: i32,
lMinD: i32,
alReserved: [1]i32,
};
pub const LIGATURE = extern struct {
culSize: u32,
pwsz: ?PWSTR,
chglyph: u32,
ahglyph: [1]u32,
};
pub const FD_LIGATURE = extern struct {
culThis: u32,
ulType: u32,
cLigatures: u32,
alig: [1]LIGATURE,
};
pub const POINTQF = extern struct {
x: LARGE_INTEGER,
y: LARGE_INTEGER,
};
pub const WCRUN = extern struct {
wcLow: u16,
cGlyphs: u16,
phg: ?*u32,
};
pub const FD_GLYPHSET = extern struct {
cjThis: u32,
flAccel: u32,
cGlyphsSupported: u32,
cRuns: u32,
awcrun: [1]WCRUN,
};
pub const FD_GLYPHATTR = extern struct {
cjThis: u32,
cGlyphs: u32,
iMode: u32,
aGlyphAttr: [1]u8,
};
pub const FD_KERNINGPAIR = extern struct {
wcFirst: u16,
wcSecond: u16,
fwdKern: i16,
};
pub const FONTDIFF = extern struct {
jReserved1: u8,
jReserved2: u8,
jReserved3: u8,
bWeight: u8,
usWinWeight: u16,
fsSelection: u16,
fwdAveCharWidth: i16,
fwdMaxCharInc: i16,
ptlCaret: POINTL,
};
pub const FONTSIM = extern struct {
dpBold: i32,
dpItalic: i32,
dpBoldItalic: i32,
};
pub const IFIEXTRA = extern struct {
ulIdentifier: u32,
dpFontSig: i32,
cig: u32,
dpDesignVector: i32,
dpAxesInfoW: i32,
aulReserved: [1]u32,
};
pub const PFN = switch (@import("builtin").zig_backend) {
.stage1 => fn(
) callconv(@import("std").os.windows.WINAPI) isize,
else => *const fn(
) callconv(@import("std").os.windows.WINAPI) isize,
} ;
pub const DRVFN = extern struct {
iFunc: u32,
pfn: ?PFN,
};
pub const DRVENABLEDATA = extern struct {
iDriverVersion: u32,
c: u32,
pdrvfn: ?*DRVFN,
};
pub const DEVINFO = extern struct {
flGraphicsCaps: u32,
lfDefaultFont: LOGFONTW,
lfAnsiVarFont: LOGFONTW,
lfAnsiFixFont: LOGFONTW,
cFonts: u32,
iDitherFormat: u32,
cxDither: u16,
cyDither: u16,
hpalDefault: ?HPALETTE,
flGraphicsCaps2: u32,
};
pub const CIECHROMA = extern struct {
x: i32,
y: i32,
Y: i32,
};
pub const COLORINFO = extern struct {
Red: CIECHROMA,
Green: CIECHROMA,
Blue: CIECHROMA,
Cyan: CIECHROMA,
Magenta: CIECHROMA,
Yellow: CIECHROMA,
AlignmentWhite: CIECHROMA,
RedGamma: i32,
GreenGamma: i32,
BlueGamma: i32,
MagentaInCyanDye: i32,
YellowInCyanDye: i32,
CyanInMagentaDye: i32,
YellowInMagentaDye: i32,
CyanInYellowDye: i32,
MagentaInYellowDye: i32,
};
pub const CDDDXGK_REDIRBITMAPPRESENTINFO = extern struct {
NumDirtyRects: u32,
DirtyRect: ?*RECT,
NumContexts: u32,
hContext: [65]?HANDLE,
bDoNotSynchronizeWithDxContent: BOOLEAN,
};
pub const GDIINFO = extern struct {
ulVersion: u32,
ulTechnology: u32,
ulHorzSize: u32,
ulVertSize: u32,
ulHorzRes: u32,
ulVertRes: u32,
cBitsPixel: u32,
cPlanes: u32,
ulNumColors: u32,
flRaster: u32,
ulLogPixelsX: u32,
ulLogPixelsY: u32,
flTextCaps: u32,
ulDACRed: u32,
ulDACGreen: u32,
ulDACBlue: u32,
ulAspectX: u32,
ulAspectY: u32,
ulAspectXY: u32,
xStyleStep: i32,
yStyleStep: i32,
denStyleStep: i32,
ptlPhysOffset: POINTL,
szlPhysSize: SIZE,
ulNumPalReg: u32,
ciDevice: COLORINFO,
ulDevicePelsDPI: u32,
ulPrimaryOrder: u32,
ulHTPatternSize: u32,
ulHTOutputFormat: u32,
flHTFlags: u32,
ulVRefresh: u32,
ulBltAlignment: u32,
ulPanningHorzRes: u32,
ulPanningVertRes: u32,
xPanningAlignment: u32,
yPanningAlignment: u32,
cxHTPat: u32,
cyHTPat: u32,
pHTPatA: ?*u8,
pHTPatB: ?*u8,
pHTPatC: ?*u8,
flShadeBlend: u32,
ulPhysicalPixelCharacteristics: u32,
ulPhysicalPixelGamma: u32,
};
pub const BRUSHOBJ = extern struct {
iSolidColor: u32,
pvRbrush: ?*anyopaque,
flColorType: u32,
};
pub const CLIPOBJ = extern struct {
iUniq: u32,
rclBounds: RECTL,
iDComplexity: u8,
iFComplexity: u8,
iMode: u8,
fjOptions: u8,
};
// TODO: this function pointer causes dependency loop problems, so it's stubbed out
pub const FREEOBJPROC = switch (@import("builtin").zig_backend) { .stage1 => fn() callconv(@import("std").os.windows.WINAPI) void, else => *const fn() callconv(@import("std").os.windows.WINAPI) void};
pub const DRIVEROBJ = extern struct {
pvObj: ?*anyopaque,
pFreeProc: ?FREEOBJPROC,
hdev: ?HDEV,
dhpdev: DHPDEV,
};
pub const FONTOBJ = extern struct {
iUniq: u32,
iFace: u32,
cxMax: u32,
flFontType: u32,
iTTUniq: usize,
iFile: usize,
sizLogResPpi: SIZE,
ulStyleSize: u32,
pvConsumer: ?*anyopaque,
pvProducer: ?*anyopaque,
};
pub const BLENDOBJ = extern struct {
BlendFunction: BLENDFUNCTION,
};
pub const PALOBJ = extern struct {
ulReserved: u32,
};
pub const PATHOBJ = extern struct {
fl: u32,
cCurves: u32,
};
pub const SURFOBJ = extern struct {
dhsurf: DHSURF,
hsurf: ?HSURF,
dhpdev: DHPDEV,
hdev: ?HDEV,
sizlBitmap: SIZE,
cjBits: u32,
pvBits: ?*anyopaque,
pvScan0: ?*anyopaque,
lDelta: i32,
iUniq: u32,
iBitmapFormat: u32,
iType: u16,
fjBitmap: u16,
};
pub const WNDOBJ = extern struct {
coClient: CLIPOBJ,
pvConsumer: ?*anyopaque,
rclClient: RECTL,
psoOwner: ?*SURFOBJ,
};
pub const XFORMOBJ = extern struct {
ulReserved: u32,
};
pub const XLATEOBJ = extern struct {
iUniq: u32,
flXlate: u32,
iSrcType: u16,
iDstType: u16,
cEntries: u32,
pulXlate: ?*u32,
};
pub const ENUMRECTS = extern struct {
c: u32,
arcl: [1]RECTL,
};
pub const GLYPHBITS = extern struct {
ptlOrigin: POINTL,
sizlBitmap: SIZE,
aj: [1]u8,
};
pub const GLYPHDEF = extern union {
pgb: ?*GLYPHBITS,
ppo: ?*PATHOBJ,
};
pub const GLYPHPOS = extern struct {
hg: u32,
pgdf: ?*GLYPHDEF,
ptl: POINTL,
};
pub const GLYPHDATA = extern struct {
gdf: GLYPHDEF,
hg: u32,
fxD: i32,
fxA: i32,
fxAB: i32,
fxInkTop: i32,
fxInkBottom: i32,
rclInk: RECTL,
ptqD: POINTQF,
};
pub const STROBJ = extern struct {
cGlyphs: u32,
flAccel: u32,
ulCharInc: u32,
rclBkGround: RECTL,
pgp: ?*GLYPHPOS,
pwszOrg: ?PWSTR,
};
pub const FONTINFO = extern struct {
cjThis: u32,
flCaps: u32,
cGlyphsSupported: u32,
cjMaxGlyph1: u32,
cjMaxGlyph4: u32,
cjMaxGlyph8: u32,
cjMaxGlyph32: u32,
};
pub const PATHDATA = extern struct {
flags: u32,
count: u32,
pptfx: ?*POINTFIX,
};
pub const RUN = extern struct {
iStart: i32,
iStop: i32,
};
pub const CLIPLINE = extern struct {
ptfxA: POINTFIX,
ptfxB: POINTFIX,
lStyleState: i32,
c: u32,
arun: [1]RUN,
};
pub const PERBANDINFO = extern struct {
bRepeatThisBand: BOOL,
szlBand: SIZE,
ulHorzRes: u32,
ulVertRes: u32,
};
pub const GAMMARAMP = extern struct {
Red: [256]u16,
Green: [256]u16,
Blue: [256]u16,
};
pub const WNDOBJCHANGEPROC = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pwo: ?*WNDOBJ,
fl: u32,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
pwo: ?*WNDOBJ,
fl: u32,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const DEVHTINFO = extern struct {
HTFlags: u32,
HTPatternSize: u32,
DevPelsDPI: u32,
ColorInfo: COLORINFO,
};
pub const DEVHTADJDATA = extern struct {
DeviceFlags: u32,
DeviceXDPI: u32,
DeviceYDPI: u32,
pDefHTInfo: ?*DEVHTINFO,
pAdjHTInfo: ?*DEVHTINFO,
};
pub const TYPE1_FONT = extern struct {
hPFM: ?HANDLE,
hPFB: ?HANDLE,
ulIdentifier: u32,
};
pub const ENGSAFESEMAPHORE = extern struct {
hsem: ?HSEMAPHORE,
lCount: i32,
};
pub const SORTCOMP = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pv1: ?*const anyopaque,
pv2: ?*const anyopaque,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
pv1: ?*const anyopaque,
pv2: ?*const anyopaque,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const ENG_TIME_FIELDS = extern struct {
usYear: u16,
usMonth: u16,
usDay: u16,
usHour: u16,
usMinute: u16,
usSecond: u16,
usMilliseconds: u16,
usWeekday: u16,
};
pub const ENG_SYSTEM_ATTRIBUTE = enum(i32) {
ProcessorFeature = 1,
NumberOfProcessors = 2,
OptimumAvailableUserMemory = 3,
OptimumAvailableSystemMemory = 4,
};
pub const EngProcessorFeature = ENG_SYSTEM_ATTRIBUTE.ProcessorFeature;
pub const EngNumberOfProcessors = ENG_SYSTEM_ATTRIBUTE.NumberOfProcessors;
pub const EngOptimumAvailableUserMemory = ENG_SYSTEM_ATTRIBUTE.OptimumAvailableUserMemory;
pub const EngOptimumAvailableSystemMemory = ENG_SYSTEM_ATTRIBUTE.OptimumAvailableSystemMemory;
pub const ENG_DEVICE_ATTRIBUTE = enum(i32) {
RESERVED = 0,
ACCELERATION_LEVEL = 1,
};
pub const QDA_RESERVED = ENG_DEVICE_ATTRIBUTE.RESERVED;
pub const QDA_ACCELERATION_LEVEL = ENG_DEVICE_ATTRIBUTE.ACCELERATION_LEVEL;
pub const EMFINFO = extern struct {
nSize: u32,
hdc: ?HDC,
pvEMF: ?*u8,
pvCurrentRecord: ?*u8,
};
pub const PFN_DrvEnableDriver = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: u32,
param1: u32,
param2: ?*DRVENABLEDATA,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: u32,
param1: u32,
param2: ?*DRVENABLEDATA,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvEnablePDEV = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*DEVMODEW,
param1: ?PWSTR,
param2: u32,
param3: ?*?HSURF,
param4: u32,
param5: ?*GDIINFO,
param6: u32,
param7: ?*DEVINFO,
param8: ?HDEV,
param9: ?PWSTR,
param10: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) DHPDEV,
else => *const fn(
param0: ?*DEVMODEW,
param1: ?PWSTR,
param2: u32,
param3: ?*?HSURF,
param4: u32,
param5: ?*GDIINFO,
param6: u32,
param7: ?*DEVINFO,
param8: ?HDEV,
param9: ?PWSTR,
param10: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) DHPDEV,
} ;
pub const PFN_DrvCompletePDEV = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?HDEV,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
param1: ?HDEV,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvResetDevice = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: DHPDEV,
param1: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvDisablePDEV = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvSynchronize = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
param1: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvEnableSurface = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) ?HSURF,
else => *const fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) ?HSURF,
} ;
pub const PFN_DrvDisableDriver = switch (@import("builtin").zig_backend) {
.stage1 => fn(
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvDisableSurface = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvAssertMode = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: BOOL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvTextOut = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*STROBJ,
param2: ?*FONTOBJ,
param3: ?*CLIPOBJ,
param4: ?*RECTL,
param5: ?*RECTL,
param6: ?*BRUSHOBJ,
param7: ?*BRUSHOBJ,
param8: ?*POINTL,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*STROBJ,
param2: ?*FONTOBJ,
param3: ?*CLIPOBJ,
param4: ?*RECTL,
param5: ?*RECTL,
param6: ?*BRUSHOBJ,
param7: ?*BRUSHOBJ,
param8: ?*POINTL,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStretchBlt = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*COLORADJUSTMENT,
param6: ?*POINTL,
param7: ?*RECTL,
param8: ?*RECTL,
param9: ?*POINTL,
param10: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*COLORADJUSTMENT,
param6: ?*POINTL,
param7: ?*RECTL,
param8: ?*RECTL,
param9: ?*POINTL,
param10: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStretchBltROP = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*COLORADJUSTMENT,
param6: ?*POINTL,
param7: ?*RECTL,
param8: ?*RECTL,
param9: ?*POINTL,
param10: u32,
param11: ?*BRUSHOBJ,
param12: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*COLORADJUSTMENT,
param6: ?*POINTL,
param7: ?*RECTL,
param8: ?*RECTL,
param9: ?*POINTL,
param10: u32,
param11: ?*BRUSHOBJ,
param12: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvTransparentBlt = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*CLIPOBJ,
param3: ?*XLATEOBJ,
param4: ?*RECTL,
param5: ?*RECTL,
param6: u32,
param7: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*CLIPOBJ,
param3: ?*XLATEOBJ,
param4: ?*RECTL,
param5: ?*RECTL,
param6: u32,
param7: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvPlgBlt = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*COLORADJUSTMENT,
param6: ?*POINTL,
param7: ?*POINTFIX,
param8: ?*RECTL,
param9: ?*POINTL,
param10: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*COLORADJUSTMENT,
param6: ?*POINTL,
param7: ?*POINTFIX,
param8: ?*RECTL,
param9: ?*POINTL,
param10: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvBitBlt = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*RECTL,
param6: ?*POINTL,
param7: ?*POINTL,
param8: ?*BRUSHOBJ,
param9: ?*POINTL,
param10: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*CLIPOBJ,
param4: ?*XLATEOBJ,
param5: ?*RECTL,
param6: ?*POINTL,
param7: ?*POINTL,
param8: ?*BRUSHOBJ,
param9: ?*POINTL,
param10: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvRealizeBrush = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*BRUSHOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*SURFOBJ,
param4: ?*XLATEOBJ,
param5: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*BRUSHOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*SURFOBJ,
param4: ?*XLATEOBJ,
param5: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvCopyBits = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*CLIPOBJ,
param3: ?*XLATEOBJ,
param4: ?*RECTL,
param5: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*CLIPOBJ,
param3: ?*XLATEOBJ,
param4: ?*RECTL,
param5: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvDitherColor = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: u32,
param2: u32,
param3: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: DHPDEV,
param1: u32,
param2: u32,
param3: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvCreateDeviceBitmap = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: SIZE,
param2: u32,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP,
else => *const fn(
param0: DHPDEV,
param1: SIZE,
param2: u32,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP,
} ;
pub const PFN_DrvDeleteDeviceBitmap = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHSURF,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHSURF,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvSetPalette = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*PALOBJ,
param2: u32,
param3: u32,
param4: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?*PALOBJ,
param2: u32,
param3: u32,
param4: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvEscape = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: u32,
param2: u32,
param3: ?*anyopaque,
param4: u32,
param5: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: ?*SURFOBJ,
param1: u32,
param2: u32,
param3: ?*anyopaque,
param4: u32,
param5: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvDrawEscape = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: u32,
param2: ?*CLIPOBJ,
param3: ?*RECTL,
param4: u32,
param5: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: ?*SURFOBJ,
param1: u32,
param2: ?*CLIPOBJ,
param3: ?*RECTL,
param4: u32,
param5: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvQueryFont = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: usize,
param2: u32,
param3: ?*usize,
) callconv(@import("std").os.windows.WINAPI) ?*IFIMETRICS,
else => *const fn(
param0: DHPDEV,
param1: usize,
param2: u32,
param3: ?*usize,
) callconv(@import("std").os.windows.WINAPI) ?*IFIMETRICS,
} ;
pub const PFN_DrvQueryFontTree = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: usize,
param2: u32,
param3: u32,
param4: ?*usize,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque,
else => *const fn(
param0: DHPDEV,
param1: usize,
param2: u32,
param3: u32,
param4: ?*usize,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque,
} ;
pub const PFN_DrvQueryFontData = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*FONTOBJ,
param2: u32,
param3: u32,
param4: ?*GLYPHDATA,
param5: ?*anyopaque,
param6: u32,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: DHPDEV,
param1: ?*FONTOBJ,
param2: u32,
param3: u32,
param4: ?*GLYPHDATA,
param5: ?*anyopaque,
param6: u32,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvFree = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*anyopaque,
param1: usize,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: ?*anyopaque,
param1: usize,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvDestroyFont = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvQueryFontCaps = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: u32,
param1: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: u32,
param1: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvLoadFontFile = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: u32,
param1: ?*usize,
param2: ?*?*anyopaque,
param3: ?*u32,
param4: ?*DESIGNVECTOR,
param5: u32,
param6: u32,
) callconv(@import("std").os.windows.WINAPI) usize,
else => *const fn(
param0: u32,
param1: ?*usize,
param2: ?*?*anyopaque,
param3: ?*u32,
param4: ?*DESIGNVECTOR,
param5: u32,
param6: u32,
) callconv(@import("std").os.windows.WINAPI) usize,
} ;
pub const PFN_DrvUnloadFontFile = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: usize,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: usize,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvSetPointerShape = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*XLATEOBJ,
param4: i32,
param5: i32,
param6: i32,
param7: i32,
param8: ?*RECTL,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*SURFOBJ,
param3: ?*XLATEOBJ,
param4: i32,
param5: i32,
param6: i32,
param7: i32,
param8: ?*RECTL,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvMovePointer = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pso: ?*SURFOBJ,
x: i32,
y: i32,
prcl: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
pso: ?*SURFOBJ,
x: i32,
y: i32,
prcl: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvSendPage = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStartPage = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pso: ?*SURFOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
pso: ?*SURFOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStartDoc = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pso: ?*SURFOBJ,
pwszDocName: ?PWSTR,
dwJobId: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
pso: ?*SURFOBJ,
pwszDocName: ?PWSTR,
dwJobId: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvEndDoc = switch (@import("builtin").zig_backend) {
.stage1 => fn(
pso: ?*SURFOBJ,
fl: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
pso: ?*SURFOBJ,
fl: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvQuerySpoolType = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dhpdev: DHPDEV,
pwchType: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
dhpdev: DHPDEV,
pwchType: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvLineTo = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*CLIPOBJ,
param2: ?*BRUSHOBJ,
param3: i32,
param4: i32,
param5: i32,
param6: i32,
param7: ?*RECTL,
param8: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*CLIPOBJ,
param2: ?*BRUSHOBJ,
param3: i32,
param4: i32,
param5: i32,
param6: i32,
param7: ?*RECTL,
param8: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStrokePath = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*PATHOBJ,
param2: ?*CLIPOBJ,
param3: ?*XFORMOBJ,
param4: ?*BRUSHOBJ,
param5: ?*POINTL,
param6: ?*LINEATTRS,
param7: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*PATHOBJ,
param2: ?*CLIPOBJ,
param3: ?*XFORMOBJ,
param4: ?*BRUSHOBJ,
param5: ?*POINTL,
param6: ?*LINEATTRS,
param7: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvFillPath = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*PATHOBJ,
param2: ?*CLIPOBJ,
param3: ?*BRUSHOBJ,
param4: ?*POINTL,
param5: u32,
param6: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*PATHOBJ,
param2: ?*CLIPOBJ,
param3: ?*BRUSHOBJ,
param4: ?*POINTL,
param5: u32,
param6: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStrokeAndFillPath = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*PATHOBJ,
param2: ?*CLIPOBJ,
param3: ?*XFORMOBJ,
param4: ?*BRUSHOBJ,
param5: ?*LINEATTRS,
param6: ?*BRUSHOBJ,
param7: ?*POINTL,
param8: u32,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*PATHOBJ,
param2: ?*CLIPOBJ,
param3: ?*XFORMOBJ,
param4: ?*BRUSHOBJ,
param5: ?*LINEATTRS,
param6: ?*BRUSHOBJ,
param7: ?*POINTL,
param8: u32,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvPaint = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*CLIPOBJ,
param2: ?*BRUSHOBJ,
param3: ?*POINTL,
param4: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*CLIPOBJ,
param2: ?*BRUSHOBJ,
param3: ?*POINTL,
param4: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvGetGlyphMode = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dhpdev: DHPDEV,
pfo: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
dhpdev: DHPDEV,
pfo: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvResetPDEV = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dhpdevOld: DHPDEV,
dhpdevNew: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
dhpdevOld: DHPDEV,
dhpdevNew: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvSaveScreenBits = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: u32,
param2: usize,
param3: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) usize,
else => *const fn(
param0: ?*SURFOBJ,
param1: u32,
param2: usize,
param3: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) usize,
} ;
pub const PFN_DrvGetModes = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?HANDLE,
param1: u32,
param2: ?*DEVMODEW,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: ?HANDLE,
param1: u32,
param2: ?*DEVMODEW,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvQueryTrueTypeTable = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: usize,
param1: u32,
param2: u32,
param3: i32,
param4: u32,
param5: ?*u8,
param6: ?*?*u8,
param7: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: usize,
param1: u32,
param2: u32,
param3: i32,
param4: u32,
param5: ?*u8,
param6: ?*?*u8,
param7: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvQueryTrueTypeSection = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: u32,
param1: u32,
param2: u32,
param3: ?*?HANDLE,
param4: ?*i32,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: u32,
param1: u32,
param2: u32,
param3: ?*?HANDLE,
param4: ?*i32,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvQueryTrueTypeOutline = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*FONTOBJ,
param2: u32,
param3: BOOL,
param4: ?*GLYPHDATA,
param5: u32,
param6: ?*TTPOLYGONHEADER,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: DHPDEV,
param1: ?*FONTOBJ,
param2: u32,
param3: BOOL,
param4: ?*GLYPHDATA,
param5: u32,
param6: ?*TTPOLYGONHEADER,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvGetTrueTypeFile = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: usize,
param1: ?*u32,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque,
else => *const fn(
param0: usize,
param1: ?*u32,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque,
} ;
pub const PFN_DrvQueryFontFile = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: usize,
param1: u32,
param2: u32,
param3: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: usize,
param1: u32,
param2: u32,
param3: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvQueryGlyphAttrs = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*FONTOBJ,
param1: u32,
) callconv(@import("std").os.windows.WINAPI) ?*FD_GLYPHATTR,
else => *const fn(
param0: ?*FONTOBJ,
param1: u32,
) callconv(@import("std").os.windows.WINAPI) ?*FD_GLYPHATTR,
} ;
pub const PFN_DrvQueryAdvanceWidths = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*FONTOBJ,
param2: u32,
param3: ?*u32,
param4: ?*anyopaque,
param5: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?*FONTOBJ,
param2: u32,
param3: ?*u32,
param4: ?*anyopaque,
param5: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvFontManagement = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*FONTOBJ,
param2: u32,
param3: u32,
param4: ?*anyopaque,
param5: u32,
param6: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*FONTOBJ,
param2: u32,
param3: u32,
param4: ?*anyopaque,
param5: u32,
param6: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32,
} ;
pub const PFN_DrvSetPixelFormat = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: i32,
param2: ?HWND,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: i32,
param2: ?HWND,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvDescribePixelFormat = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: i32,
param2: u32,
param3: ?*PIXELFORMATDESCRIPTOR,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
param0: DHPDEV,
param1: i32,
param2: u32,
param3: ?*PIXELFORMATDESCRIPTOR,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvSwapBuffers = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*WNDOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*WNDOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStartBanding = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
ppointl: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
ppointl: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvNextBand = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
ppointl: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
ppointl: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvQueryPerBandInfo = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*PERBANDINFO,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*PERBANDINFO,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvEnableDirectDraw = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*DD_CALLBACKS,
param2: ?*DD_SURFACECALLBACKS,
param3: ?*DD_PALETTECALLBACKS,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?*DD_CALLBACKS,
param2: ?*DD_SURFACECALLBACKS,
param3: ?*DD_PALETTECALLBACKS,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvDisableDirectDraw = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvGetDirectDrawInfo = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*DD_HALINFO,
param2: ?*u32,
param3: ?*VIDEOMEMORY,
param4: ?*u32,
param5: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?*DD_HALINFO,
param2: ?*u32,
param3: ?*VIDEOMEMORY,
param4: ?*u32,
param5: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvIcmCreateColorTransform = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*LOGCOLORSPACEW,
param2: ?*anyopaque,
param3: u32,
param4: ?*anyopaque,
param5: u32,
param6: ?*anyopaque,
param7: u32,
param8: u32,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE,
else => *const fn(
param0: DHPDEV,
param1: ?*LOGCOLORSPACEW,
param2: ?*anyopaque,
param3: u32,
param4: ?*anyopaque,
param5: u32,
param6: ?*anyopaque,
param7: u32,
param8: u32,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE,
} ;
pub const PFN_DrvIcmDeleteColorTransform = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvIcmCheckBitmapBits = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?HANDLE,
param2: ?*SURFOBJ,
param3: ?*u8,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?HANDLE,
param2: ?*SURFOBJ,
param3: ?*u8,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvIcmSetDeviceGammaRamp = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: u32,
param2: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: u32,
param2: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvAlphaBlend = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*CLIPOBJ,
param3: ?*XLATEOBJ,
param4: ?*RECTL,
param5: ?*RECTL,
param6: ?*BLENDOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*SURFOBJ,
param2: ?*CLIPOBJ,
param3: ?*XLATEOBJ,
param4: ?*RECTL,
param5: ?*RECTL,
param6: ?*BLENDOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvGradientFill = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*CLIPOBJ,
param2: ?*XLATEOBJ,
param3: ?*TRIVERTEX,
param4: u32,
param5: ?*anyopaque,
param6: u32,
param7: ?*RECTL,
param8: ?*POINTL,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*CLIPOBJ,
param2: ?*XLATEOBJ,
param3: ?*TRIVERTEX,
param4: u32,
param5: ?*anyopaque,
param6: u32,
param7: ?*RECTL,
param8: ?*POINTL,
param9: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvQueryDeviceSupport = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*XLATEOBJ,
param2: ?*XFORMOBJ,
param3: u32,
param4: u32,
param5: ?*anyopaque,
param6: u32,
param7: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*XLATEOBJ,
param2: ?*XFORMOBJ,
param3: u32,
param4: u32,
param5: ?*anyopaque,
param6: u32,
param7: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvDeriveSurface = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*DD_DIRECTDRAW_GLOBAL,
param1: ?*DD_SURFACE_LOCAL,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP,
else => *const fn(
param0: ?*DD_DIRECTDRAW_GLOBAL,
param1: ?*DD_SURFACE_LOCAL,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP,
} ;
pub const PFN_DrvSynchronizeSurface = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*RECTL,
param2: u32,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*RECTL,
param2: u32,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvNotify = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: u32,
param2: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: ?*SURFOBJ,
param1: u32,
param2: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvRenderHint = switch (@import("builtin").zig_backend) {
.stage1 => fn(
dhpdev: DHPDEV,
NotifyCode: u32,
Length: usize,
// TODO: what to do with BytesParamIndex 2?
Data: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
dhpdev: DHPDEV,
NotifyCode: u32,
Length: usize,
// TODO: what to do with BytesParamIndex 2?
Data: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const DRH_APIBITMAPDATA = extern struct {
pso: ?*SURFOBJ,
b: BOOL,
};
pub const PFN_EngCreateRectRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
left: i32,
top: i32,
right: i32,
bottom: i32,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE,
else => *const fn(
left: i32,
top: i32,
right: i32,
bottom: i32,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE,
} ;
pub const PFN_EngDeleteRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgn: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
hrgn: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_EngCombineRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgnTrg: ?HANDLE,
hrgnSrc1: ?HANDLE,
hrgnSrc2: ?HANDLE,
imode: i32,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
hrgnTrg: ?HANDLE,
hrgnSrc1: ?HANDLE,
hrgnSrc2: ?HANDLE,
imode: i32,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_EngCopyRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgnDst: ?HANDLE,
hrgnSrc: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
hrgnDst: ?HANDLE,
hrgnSrc: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_EngIntersectRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_EngSubtractRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_EngUnionRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_EngXorRgn = switch (@import("builtin").zig_backend) {
.stage1 => fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
else => *const fn(
hrgnResult: ?HANDLE,
hRgnA: ?HANDLE,
hRgnB: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32,
} ;
pub const PFN_DrvCreateDeviceBitmapEx = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: SIZE,
param2: u32,
param3: u32,
param4: DHSURF,
param5: u32,
param6: u32,
param7: ?*?HANDLE,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP,
else => *const fn(
param0: DHPDEV,
param1: SIZE,
param2: u32,
param3: u32,
param4: DHSURF,
param5: u32,
param6: u32,
param7: ?*?HANDLE,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP,
} ;
pub const PFN_DrvDeleteDeviceBitmapEx = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHSURF,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHSURF,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvAssociateSharedSurface = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?HANDLE,
param2: ?HANDLE,
param3: SIZE,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?HANDLE,
param2: ?HANDLE,
param3: SIZE,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvSynchronizeRedirectionBitmaps = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*u64,
) callconv(@import("std").os.windows.WINAPI) NTSTATUS,
else => *const fn(
param0: DHPDEV,
param1: ?*u64,
) callconv(@import("std").os.windows.WINAPI) NTSTATUS,
} ;
pub const PFN_DrvAccumulateD3DDirtyRect = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: ?*CDDDXGK_REDIRBITMAPPRESENTINFO,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: ?*CDDDXGK_REDIRBITMAPPRESENTINFO,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvStartDxInterop = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: BOOL,
KernelModeDeviceHandle: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: BOOL,
KernelModeDeviceHandle: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvEndDxInterop = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: ?*SURFOBJ,
param1: BOOL,
param2: ?*BOOL,
KernelModeDeviceHandle: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: ?*SURFOBJ,
param1: BOOL,
param2: ?*BOOL,
KernelModeDeviceHandle: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const PFN_DrvLockDisplayArea = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
param1: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvUnlockDisplayArea = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
param0: DHPDEV,
param1: ?*RECTL,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const PFN_DrvSurfaceComplete = switch (@import("builtin").zig_backend) {
.stage1 => fn(
param0: DHPDEV,
param1: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) BOOL,
else => *const fn(
param0: DHPDEV,
param1: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) BOOL,
} ;
pub const INDIRECT_DISPLAY_INFO = extern struct {
DisplayAdapterLuid: LUID,
Flags: u32,
NumMonitors: u32,
DisplayAdapterTargetBase: u32,
};
pub const VIDEO_VDM = extern struct {
ProcessHandle: ?HANDLE,
};
pub const VIDEO_REGISTER_VDM = extern struct {
MinimumStateSize: u32,
};
pub const VIDEO_MONITOR_DESCRIPTOR = extern struct {
DescriptorSize: u32,
Descriptor: [1]u8,
};
pub const VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE = enum(i32) {
PowerNotifyCallout = 1,
EnumChildPdoNotifyCallout = 3,
FindAdapterCallout = 4,
PnpNotifyCallout = 7,
DxgkDisplaySwitchCallout = 8,
DxgkFindAdapterTdrCallout = 10,
DxgkHardwareProtectionTeardown = 11,
RepaintDesktop = 12,
UpdateCursor = 13,
DisableMultiPlaneOverlay = 14,
DesktopDuplicationChange = 15,
BlackScreenDiagnostics = 16,
};
pub const VideoPowerNotifyCallout = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.PowerNotifyCallout;
pub const VideoEnumChildPdoNotifyCallout = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.EnumChildPdoNotifyCallout;
pub const VideoFindAdapterCallout = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.FindAdapterCallout;
pub const VideoPnpNotifyCallout = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.PnpNotifyCallout;
pub const VideoDxgkDisplaySwitchCallout = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.DxgkDisplaySwitchCallout;
pub const VideoDxgkFindAdapterTdrCallout = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.DxgkFindAdapterTdrCallout;
pub const VideoDxgkHardwareProtectionTeardown = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.DxgkHardwareProtectionTeardown;
pub const VideoRepaintDesktop = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.RepaintDesktop;
pub const VideoUpdateCursor = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.UpdateCursor;
pub const VideoDisableMultiPlaneOverlay = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.DisableMultiPlaneOverlay;
pub const VideoDesktopDuplicationChange = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.DesktopDuplicationChange;
pub const VideoBlackScreenDiagnostics = VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE.BlackScreenDiagnostics;
pub const BlackScreenDiagnosticsCalloutParam = enum(i32) {
agnosticsData = 1,
splayRecovery = 2,
};
pub const BlackScreenDiagnosticsData = BlackScreenDiagnosticsCalloutParam.agnosticsData;
pub const BlackScreenDisplayRecovery = BlackScreenDiagnosticsCalloutParam.splayRecovery;
pub const DXGK_WIN32K_PARAM_DATA = extern struct {
PathsArray: ?*anyopaque,
ModesArray: ?*anyopaque,
NumPathArrayElements: u32,
NumModeArrayElements: u32,
SDCFlags: u32,
};
pub const VIDEO_WIN32K_CALLBACKS_PARAMS = extern struct {
CalloutType: VIDEO_WIN32K_CALLBACKS_PARAMS_TYPE,
PhysDisp: ?*anyopaque,
Param: usize,
Status: i32,
LockUserSession: BOOLEAN,
IsPostDevice: BOOLEAN,
SurpriseRemoval: BOOLEAN,
WaitForQueueReady: BOOLEAN,
};
pub const PVIDEO_WIN32K_CALLOUT = switch (@import("builtin").zig_backend) {
.stage1 => fn(
Params: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void,
else => *const fn(
Params: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) void,
} ;
pub const VIDEO_WIN32K_CALLBACKS = extern struct {
PhysDisp: ?*anyopaque,
Callout: ?PVIDEO_WIN32K_CALLOUT,
bACPI: u32,
pPhysDeviceObject: ?HANDLE,
DualviewFlags: u32,
};
pub const VIDEO_DEVICE_SESSION_STATUS = extern struct {
bEnable: u32,
bSuccess: u32,
};
pub const VIDEO_HARDWARE_STATE_HEADER = extern struct {
Length: u32,
PortValue: [48]u8,
AttribIndexDataState: u32,
BasicSequencerOffset: u32,
BasicCrtContOffset: u32,
BasicGraphContOffset: u32,
BasicAttribContOffset: u32,
BasicDacOffset: u32,
BasicLatchesOffset: u32,
ExtendedSequencerOffset: u32,
ExtendedCrtContOffset: u32,
ExtendedGraphContOffset: u32,
ExtendedAttribContOffset: u32,
ExtendedDacOffset: u32,
ExtendedValidatorStateOffset: u32,
ExtendedMiscDataOffset: u32,
PlaneLength: u32,
Plane1Offset: u32,
Plane2Offset: u32,
Plane3Offset: u32,
Plane4Offset: u32,
VGAStateFlags: u32,
DIBOffset: u32,
DIBBitsPerPixel: u32,
DIBXResolution: u32,
DIBYResolution: u32,
DIBXlatOffset: u32,
DIBXlatLength: u32,
VesaInfoOffset: u32,
FrameBufferData: ?*anyopaque,
};
pub const VIDEO_HARDWARE_STATE = extern struct {
StateHeader: ?*VIDEO_HARDWARE_STATE_HEADER,
StateLength: u32,
};
pub const VIDEO_NUM_MODES = extern struct {
NumModes: u32,
ModeInformationLength: u32,
};
pub const VIDEO_MODE = extern struct {
RequestedMode: u32,
};
pub const VIDEO_MODE_INFORMATION = extern struct {
Length: u32,
ModeIndex: u32,
VisScreenWidth: u32,
VisScreenHeight: u32,
ScreenStride: u32,
NumberOfPlanes: u32,
BitsPerPlane: u32,
Frequency: u32,
XMillimeter: u32,
YMillimeter: u32,
NumberRedBits: u32,
NumberGreenBits: u32,
NumberBlueBits: u32,
RedMask: u32,
GreenMask: u32,
BlueMask: u32,
AttributeFlags: u32,
VideoMemoryBitmapWidth: u32,
VideoMemoryBitmapHeight: u32,
DriverSpecificAttributeFlags: u32,
};
pub const VIDEO_LOAD_FONT_INFORMATION = extern struct {
WidthInPixels: u16,
HeightInPixels: u16,
FontSize: u32,
Font: [1]u8,
};
pub const VIDEO_PALETTE_DATA = extern struct {
NumEntries: u16,
FirstEntry: u16,
Colors: [1]u16,
};
pub const VIDEO_CLUTDATA = extern struct {
Red: u8,
Green: u8,
Blue: u8,
Unused: u8,
};
pub const VIDEO_CLUT = extern struct {
NumEntries: u16,
FirstEntry: u16,
LookupTable: [1]extern union {
RgbArray: VIDEO_CLUTDATA,
RgbLong: u32,
},
};
pub const VIDEO_CURSOR_POSITION = extern struct {
Column: i16,
Row: i16,
};
pub const VIDEO_CURSOR_ATTRIBUTES = extern struct {
Width: u16,
Height: u16,
Column: i16,
Row: i16,
Rate: u8,
Enable: u8,
};
pub const VIDEO_POINTER_POSITION = extern struct {
Column: i16,
Row: i16,
};
pub const VIDEO_POINTER_ATTRIBUTES = extern struct {
Flags: u32,
Width: u32,
Height: u32,
WidthInBytes: u32,
Enable: u32,
Column: i16,
Row: i16,
Pixels: [1]u8,
};
pub const VIDEO_POINTER_CAPABILITIES = extern struct {
Flags: u32,
MaxWidth: u32,
MaxHeight: u32,
HWPtrBitmapStart: u32,
HWPtrBitmapEnd: u32,
};
pub const VIDEO_BANK_SELECT = extern struct {
Length: u32,
Size: u32,
BankingFlags: u32,
BankingType: u32,
PlanarHCBankingType: u32,
BitmapWidthInBytes: u32,
BitmapSize: u32,
Granularity: u32,
PlanarHCGranularity: u32,
CodeOffset: u32,
PlanarHCBankCodeOffset: u32,
PlanarHCEnableCodeOffset: u32,
PlanarHCDisableCodeOffset: u32,
};
pub const VIDEO_BANK_TYPE = enum(i32) {
VideoNotBanked = 0,
VideoBanked1RW = 1,
VideoBanked1R1W = 2,
VideoBanked2RW = 3,
NumVideoBankTypes = 4,
};
pub const VideoNotBanked = VIDEO_BANK_TYPE.VideoNotBanked;
pub const VideoBanked1RW = VIDEO_BANK_TYPE.VideoBanked1RW;
pub const VideoBanked1R1W = VIDEO_BANK_TYPE.VideoBanked1R1W;
pub const VideoBanked2RW = VIDEO_BANK_TYPE.VideoBanked2RW;
pub const NumVideoBankTypes = VIDEO_BANK_TYPE.NumVideoBankTypes;
pub const VIDEO_MEMORY = extern struct {
RequestedVirtualAddress: ?*anyopaque,
};
pub const VIDEO_SHARE_MEMORY = extern struct {
ProcessHandle: ?HANDLE,
ViewOffset: u32,
ViewSize: u32,
RequestedVirtualAddress: ?*anyopaque,
};
pub const VIDEO_SHARE_MEMORY_INFORMATION = extern struct {
SharedViewOffset: u32,
SharedViewSize: u32,
VirtualAddress: ?*anyopaque,
};
pub const VIDEO_MEMORY_INFORMATION = extern struct {
VideoRamBase: ?*anyopaque,
VideoRamLength: u32,
FrameBufferBase: ?*anyopaque,
FrameBufferLength: u32,
};
pub const VIDEO_PUBLIC_ACCESS_RANGES = extern struct {
InIoSpace: u32,
MappedInIoSpace: u32,
VirtualAddress: ?*anyopaque,
};
pub const VIDEO_COLOR_CAPABILITIES = extern struct {
Length: u32,
AttributeFlags: u32,
RedPhosphoreDecay: i32,
GreenPhosphoreDecay: i32,
BluePhosphoreDecay: i32,
WhiteChromaticity_x: i32,
WhiteChromaticity_y: i32,
WhiteChromaticity_Y: i32,
RedChromaticity_x: i32,
RedChromaticity_y: i32,
GreenChromaticity_x: i32,
GreenChromaticity_y: i32,
BlueChromaticity_x: i32,
BlueChromaticity_y: i32,
WhiteGamma: i32,
RedGamma: i32,
GreenGamma: i32,
BlueGamma: i32,
};
pub const VIDEO_POWER_STATE = enum(i32) {
Unspecified = 0,
On = 1,
StandBy = 2,
Suspend = 3,
Off = 4,
Hibernate = 5,
Shutdown = 6,
Maximum = 7,
};
pub const VideoPowerUnspecified = VIDEO_POWER_STATE.Unspecified;
pub const VideoPowerOn = VIDEO_POWER_STATE.On;
pub const VideoPowerStandBy = VIDEO_POWER_STATE.StandBy;
pub const VideoPowerSuspend = VIDEO_POWER_STATE.Suspend;
pub const VideoPowerOff = VIDEO_POWER_STATE.Off;
pub const VideoPowerHibernate = VIDEO_POWER_STATE.Hibernate;
pub const VideoPowerShutdown = VIDEO_POWER_STATE.Shutdown;
pub const VideoPowerMaximum = VIDEO_POWER_STATE.Maximum;
pub const VIDEO_POWER_MANAGEMENT = extern struct {
Length: u32,
DPMSVersion: u32,
PowerState: u32,
};
pub const VIDEO_COLOR_LUT_DATA = extern struct {
Length: u32,
LutDataFormat: u32,
LutData: [1]u8,
};
pub const VIDEO_LUT_RGB256WORDS = extern struct {
Red: [256]u16,
Green: [256]u16,
Blue: [256]u16,
};
pub const BANK_POSITION = extern struct {
ReadBankPosition: u32,
WriteBankPosition: u32,
};
pub const DISPLAY_BRIGHTNESS = extern struct {
ucDisplayPolicy: u8,
ucACBrightness: u8,
ucDCBrightness: u8,
};
pub const VIDEO_BRIGHTNESS_POLICY = extern struct {
DefaultToBiosPolicy: BOOLEAN,
LevelCount: u8,
Level: [1]extern struct {
BatteryLevel: u8,
Brightness: u8,
},
};
pub const FSCNTL_SCREEN_INFO = extern struct {
Position: COORD,
ScreenSize: COORD,
nNumberOfChars: u32,
};
pub const FONT_IMAGE_INFO = extern struct {
FontSize: COORD,
ImageBits: ?*u8,
};
pub const CHAR_IMAGE_INFO = extern struct {
CharInfo: CHAR_INFO,
FontImageInfo: FONT_IMAGE_INFO,
};
pub const VGA_CHAR = extern struct {
Char: CHAR,
Attributes: CHAR,
};
pub const FSVIDEO_COPY_FRAME_BUFFER = extern struct {
SrcScreen: FSCNTL_SCREEN_INFO,
DestScreen: FSCNTL_SCREEN_INFO,
};
pub const FSVIDEO_WRITE_TO_FRAME_BUFFER = extern struct {
SrcBuffer: ?*CHAR_IMAGE_INFO,
DestScreen: FSCNTL_SCREEN_INFO,
};
pub const FSVIDEO_REVERSE_MOUSE_POINTER = extern struct {
Screen: FSCNTL_SCREEN_INFO,
dwType: u32,
};
pub const FSVIDEO_MODE_INFORMATION = extern struct {
VideoMode: VIDEO_MODE_INFORMATION,
VideoMemory: VIDEO_MEMORY_INFORMATION,
};
pub const FSVIDEO_SCREEN_INFORMATION = extern struct {
ScreenSize: COORD,
FontSize: COORD,
};
pub const FSVIDEO_CURSOR_POSITION = extern struct {
Coord: VIDEO_CURSOR_POSITION,
dwType: u32,
};
pub const ENG_EVENT = extern struct {
pKEvent: ?*anyopaque,
fFlags: u32,
};
pub const VIDEO_PERFORMANCE_COUNTER = extern struct {
NbOfAllocationEvicted: [10]u64,
NbOfAllocationMarked: [10]u64,
NbOfAllocationRestored: [10]u64,
KBytesEvicted: [10]u64,
KBytesMarked: [10]u64,
KBytesRestored: [10]u64,
NbProcessCommited: u64,
NbAllocationCommited: u64,
NbAllocationMarked: u64,
KBytesAllocated: u64,
KBytesAvailable: u64,
KBytesCurMarked: u64,
Reference: u64,
Unreference: u64,
TrueReference: u64,
NbOfPageIn: u64,
KBytesPageIn: u64,
NbOfPageOut: u64,
KBytesPageOut: u64,
NbOfRotateOut: u64,
KBytesRotateOut: u64,
};
pub const VIDEO_QUERY_PERFORMANCE_COUNTER = extern struct {
BufferSize: u32,
Buffer: ?*VIDEO_PERFORMANCE_COUNTER,
};
pub const BRIGHTNESS_INTERFACE_VERSION = enum(i32) {
@"1" = 1,
@"2" = 2,
@"3" = 3,
};
pub const BRIGHTNESS_INTERFACE_VERSION_1 = BRIGHTNESS_INTERFACE_VERSION.@"1";
pub const BRIGHTNESS_INTERFACE_VERSION_2 = BRIGHTNESS_INTERFACE_VERSION.@"2";
pub const BRIGHTNESS_INTERFACE_VERSION_3 = BRIGHTNESS_INTERFACE_VERSION.@"3";
pub const PANEL_QUERY_BRIGHTNESS_CAPS = extern struct {
Version: BRIGHTNESS_INTERFACE_VERSION,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
Value: u32,
},
};
pub const BRIGHTNESS_LEVEL = extern struct {
Count: u8,
Level: [103]u8,
};
pub const BRIGHTNESS_NIT_RANGE = extern struct {
MinLevelInMillinit: u32,
MaxLevelInMillinit: u32,
StepSizeInMillinit: u32,
};
pub const BRIGHTNESS_NIT_RANGES = extern struct {
NormalRangeCount: u32,
RangeCount: u32,
PreferredMaximumBrightness: u32,
SupportedRanges: [16]BRIGHTNESS_NIT_RANGE,
};
pub const PANEL_QUERY_BRIGHTNESS_RANGES = extern struct {
Version: BRIGHTNESS_INTERFACE_VERSION,
Anonymous: extern union {
BrightnessLevel: BRIGHTNESS_LEVEL,
NitRanges: BRIGHTNESS_NIT_RANGES,
},
};
pub const PANEL_GET_BRIGHTNESS = extern struct {
Version: BRIGHTNESS_INTERFACE_VERSION,
Anonymous: extern union {
Level: u8,
Anonymous: extern struct {
CurrentInMillinits: u32,
TargetInMillinits: u32,
},
},
};
pub const CHROMATICITY_COORDINATE = extern struct {
x: f32,
y: f32,
};
pub const PANEL_BRIGHTNESS_SENSOR_DATA = extern struct {
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
Value: u32,
},
AlsReading: f32,
ChromaticityCoordinate: CHROMATICITY_COORDINATE,
ColorTemperature: f32,
};
pub const PANEL_SET_BRIGHTNESS = extern struct {
Version: BRIGHTNESS_INTERFACE_VERSION,
Anonymous: extern union {
Level: u8,
Anonymous: extern struct {
Millinits: u32,
TransitionTimeInMs: u32,
SensorData: PANEL_BRIGHTNESS_SENSOR_DATA,
},
},
};
pub const PANEL_SET_BRIGHTNESS_STATE = extern struct {
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
Value: u32,
},
};
pub const BACKLIGHT_OPTIMIZATION_LEVEL = enum(i32) {
Disable = 0,
Desktop = 1,
Dynamic = 2,
Dimmed = 3,
EDR = 4,
};
pub const BacklightOptimizationDisable = BACKLIGHT_OPTIMIZATION_LEVEL.Disable;
pub const BacklightOptimizationDesktop = BACKLIGHT_OPTIMIZATION_LEVEL.Desktop;
pub const BacklightOptimizationDynamic = BACKLIGHT_OPTIMIZATION_LEVEL.Dynamic;
pub const BacklightOptimizationDimmed = BACKLIGHT_OPTIMIZATION_LEVEL.Dimmed;
pub const BacklightOptimizationEDR = BACKLIGHT_OPTIMIZATION_LEVEL.EDR;
pub const PANEL_SET_BACKLIGHT_OPTIMIZATION = extern struct {
Level: BACKLIGHT_OPTIMIZATION_LEVEL,
};
pub const BACKLIGHT_REDUCTION_GAMMA_RAMP = extern struct {
R: [256]u16,
G: [256]u16,
B: [256]u16,
};
pub const PANEL_GET_BACKLIGHT_REDUCTION = extern struct {
BacklightUsersetting: u16,
BacklightEffective: u16,
GammaRamp: BACKLIGHT_REDUCTION_GAMMA_RAMP,
};
pub const COLORSPACE_TRANSFORM_DATA_TYPE = enum(i32) {
IXED_POINT = 0,
LOAT = 1,
};
pub const COLORSPACE_TRANSFORM_DATA_TYPE_FIXED_POINT = COLORSPACE_TRANSFORM_DATA_TYPE.IXED_POINT;
pub const COLORSPACE_TRANSFORM_DATA_TYPE_FLOAT = COLORSPACE_TRANSFORM_DATA_TYPE.LOAT;
pub const COLORSPACE_TRANSFORM_DATA_CAP = extern struct {
DataType: COLORSPACE_TRANSFORM_DATA_TYPE,
Anonymous: extern union {
Anonymous1: extern struct {
_bitfield: u32,
},
Anonymous2: extern struct {
_bitfield: u32,
},
Value: u32,
},
NumericRangeMin: f32,
NumericRangeMax: f32,
};
pub const COLORSPACE_TRANSFORM_1DLUT_CAP = extern struct {
NumberOfLUTEntries: u32,
DataCap: COLORSPACE_TRANSFORM_DATA_CAP,
};
pub const COLORSPACE_TRANSFORM_MATRIX_CAP = extern struct {
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
Value: u32,
},
DataCap: COLORSPACE_TRANSFORM_DATA_CAP,
};
pub const COLORSPACE_TRANSFORM_TARGET_CAPS_VERSION = enum(i32) {
DEFAULT = 0,
@"1" = 1,
// NOT_SUPPORTED = 0, this enum value conflicts with DEFAULT
};
pub const COLORSPACE_TRANSFORM_VERSION_DEFAULT = COLORSPACE_TRANSFORM_TARGET_CAPS_VERSION.DEFAULT;
pub const COLORSPACE_TRANSFORM_VERSION_1 = COLORSPACE_TRANSFORM_TARGET_CAPS_VERSION.@"1";
pub const COLORSPACE_TRANSFORM_VERSION_NOT_SUPPORTED = COLORSPACE_TRANSFORM_TARGET_CAPS_VERSION.DEFAULT;
pub const COLORSPACE_TRANSFORM_TARGET_CAPS = extern struct {
Version: COLORSPACE_TRANSFORM_TARGET_CAPS_VERSION,
LookupTable1DDegammaCap: COLORSPACE_TRANSFORM_1DLUT_CAP,
ColorMatrix3x3Cap: COLORSPACE_TRANSFORM_MATRIX_CAP,
LookupTable1DRegammaCap: COLORSPACE_TRANSFORM_1DLUT_CAP,
};
pub const COLORSPACE_TRANSFORM_TYPE = enum(i32) {
UNINITIALIZED = 0,
DEFAULT = 1,
RGB256x3x16 = 2,
DXGI_1 = 3,
MATRIX_3x4 = 4,
MATRIX_V2 = 5,
};
pub const COLORSPACE_TRANSFORM_TYPE_UNINITIALIZED = COLORSPACE_TRANSFORM_TYPE.UNINITIALIZED;
pub const COLORSPACE_TRANSFORM_TYPE_DEFAULT = COLORSPACE_TRANSFORM_TYPE.DEFAULT;
pub const COLORSPACE_TRANSFORM_TYPE_RGB256x3x16 = COLORSPACE_TRANSFORM_TYPE.RGB256x3x16;
pub const COLORSPACE_TRANSFORM_TYPE_DXGI_1 = COLORSPACE_TRANSFORM_TYPE.DXGI_1;
pub const COLORSPACE_TRANSFORM_TYPE_MATRIX_3x4 = COLORSPACE_TRANSFORM_TYPE.MATRIX_3x4;
pub const COLORSPACE_TRANSFORM_TYPE_MATRIX_V2 = COLORSPACE_TRANSFORM_TYPE.MATRIX_V2;
pub const GAMMA_RAMP_RGB256x3x16 = extern struct {
Red: [256]u16,
Green: [256]u16,
Blue: [256]u16,
};
pub const GAMMA_RAMP_RGB = extern struct {
Red: f32,
Green: f32,
Blue: f32,
};
pub const GAMMA_RAMP_DXGI_1 = extern struct {
Scale: GAMMA_RAMP_RGB,
Offset: GAMMA_RAMP_RGB,
GammaCurve: [1025]GAMMA_RAMP_RGB,
};
pub const COLORSPACE_TRANSFORM_3x4 = extern struct {
ColorMatrix3x4: [12]f32,
ScalarMultiplier: f32,
LookupTable1D: [4096]GAMMA_RAMP_RGB,
};
pub const OUTPUT_WIRE_COLOR_SPACE_TYPE = enum(i32) {
G22_P709 = 0,
RESERVED = 4,
G2084_P2020 = 12,
G22_P709_WCG = 30,
G22_P2020 = 31,
G2084_P2020_HDR10PLUS = 32,
G2084_P2020_DVLL = 33,
};
pub const OUTPUT_WIRE_COLOR_SPACE_G22_P709 = OUTPUT_WIRE_COLOR_SPACE_TYPE.G22_P709;
pub const OUTPUT_WIRE_COLOR_SPACE_RESERVED = OUTPUT_WIRE_COLOR_SPACE_TYPE.RESERVED;
pub const OUTPUT_WIRE_COLOR_SPACE_G2084_P2020 = OUTPUT_WIRE_COLOR_SPACE_TYPE.G2084_P2020;
pub const OUTPUT_WIRE_COLOR_SPACE_G22_P709_WCG = OUTPUT_WIRE_COLOR_SPACE_TYPE.G22_P709_WCG;
pub const OUTPUT_WIRE_COLOR_SPACE_G22_P2020 = OUTPUT_WIRE_COLOR_SPACE_TYPE.G22_P2020;
pub const OUTPUT_WIRE_COLOR_SPACE_G2084_P2020_HDR10PLUS = OUTPUT_WIRE_COLOR_SPACE_TYPE.G2084_P2020_HDR10PLUS;
pub const OUTPUT_WIRE_COLOR_SPACE_G2084_P2020_DVLL = OUTPUT_WIRE_COLOR_SPACE_TYPE.G2084_P2020_DVLL;
pub const OUTPUT_COLOR_ENCODING = enum(i32) {
RGB = 0,
YCBCR444 = 1,
YCBCR422 = 2,
YCBCR420 = 3,
INTENSITY = 4,
FORCE_UINT32 = -1,
};
pub const OUTPUT_COLOR_ENCODING_RGB = OUTPUT_COLOR_ENCODING.RGB;
pub const OUTPUT_COLOR_ENCODING_YCBCR444 = OUTPUT_COLOR_ENCODING.YCBCR444;
pub const OUTPUT_COLOR_ENCODING_YCBCR422 = OUTPUT_COLOR_ENCODING.YCBCR422;
pub const OUTPUT_COLOR_ENCODING_YCBCR420 = OUTPUT_COLOR_ENCODING.YCBCR420;
pub const OUTPUT_COLOR_ENCODING_INTENSITY = OUTPUT_COLOR_ENCODING.INTENSITY;
pub const OUTPUT_COLOR_ENCODING_FORCE_UINT32 = OUTPUT_COLOR_ENCODING.FORCE_UINT32;
pub const OUTPUT_WIRE_FORMAT = extern struct {
ColorEncoding: OUTPUT_COLOR_ENCODING,
BitsPerPixel: u32,
};
pub const COLORSPACE_TRANSFORM_STAGE_CONTROL = enum(i32) {
No_Change = 0,
Enable = 1,
Bypass = 2,
};
pub const ColorSpaceTransformStageControl_No_Change = COLORSPACE_TRANSFORM_STAGE_CONTROL.No_Change;
pub const ColorSpaceTransformStageControl_Enable = COLORSPACE_TRANSFORM_STAGE_CONTROL.Enable;
pub const ColorSpaceTransformStageControl_Bypass = COLORSPACE_TRANSFORM_STAGE_CONTROL.Bypass;
pub const COLORSPACE_TRANSFORM_MATRIX_V2 = extern struct {
StageControlLookupTable1DDegamma: COLORSPACE_TRANSFORM_STAGE_CONTROL,
LookupTable1DDegamma: [4096]GAMMA_RAMP_RGB,
StageControlColorMatrix3x3: COLORSPACE_TRANSFORM_STAGE_CONTROL,
ColorMatrix3x3: [9]f32,
StageControlLookupTable1DRegamma: COLORSPACE_TRANSFORM_STAGE_CONTROL,
LookupTable1DRegamma: [4096]GAMMA_RAMP_RGB,
};
pub const COLORSPACE_TRANSFORM = extern struct {
Type: COLORSPACE_TRANSFORM_TYPE,
Data: extern union {
Rgb256x3x16: GAMMA_RAMP_RGB256x3x16,
Dxgi1: GAMMA_RAMP_DXGI_1,
T3x4: COLORSPACE_TRANSFORM_3x4,
MatrixV2: COLORSPACE_TRANSFORM_MATRIX_V2,
},
};
pub const COLORSPACE_TRANSFORM_SET_INPUT = extern struct {
OutputWireColorSpaceExpected: OUTPUT_WIRE_COLOR_SPACE_TYPE,
OutputWireFormatExpected: OUTPUT_WIRE_FORMAT,
ColorSpaceTransform: COLORSPACE_TRANSFORM,
};
pub const SET_ACTIVE_COLOR_PROFILE_NAME = extern struct {
ColorProfileName: [1]u16,
};
pub const MIPI_DSI_CAPS = extern struct {
DSITypeMajor: u8,
DSITypeMinor: u8,
SpecVersionMajor: u8,
SpecVersionMinor: u8,
SpecVersionPatch: u8,
TargetMaximumReturnPacketSize: u16,
ResultCodeFlags: u8,
ResultCodeStatus: u8,
Revision: u8,
Level: u8,
DeviceClassHi: u8,
DeviceClassLo: u8,
ManufacturerHi: u8,
ManufacturerLo: u8,
ProductHi: u8,
ProductLo: u8,
LengthHi: u8,
LengthLo: u8,
};
pub const DSI_CONTROL_TRANSMISSION_MODE = enum(i32) {
DEFAULT = 0,
FORCE_LOW_POWER = 1,
FORCE_HIGH_PERFORMANCE = 2,
};
pub const DCT_DEFAULT = DSI_CONTROL_TRANSMISSION_MODE.DEFAULT;
pub const DCT_FORCE_LOW_POWER = DSI_CONTROL_TRANSMISSION_MODE.FORCE_LOW_POWER;
pub const DCT_FORCE_HIGH_PERFORMANCE = DSI_CONTROL_TRANSMISSION_MODE.FORCE_HIGH_PERFORMANCE;
pub const MIPI_DSI_PACKET = extern struct {
Anonymous1: extern union {
DataId: u8,
Anonymous: extern struct {
_bitfield: u8,
},
},
Anonymous2: extern union {
Anonymous: extern struct {
Data0: u8,
Data1: u8,
},
LongWriteWordCount: u16,
},
EccFiller: u8,
Payload: [8]u8,
};
pub const MIPI_DSI_TRANSMISSION = extern struct {
TotalBufferSize: u32,
PacketCount: u8,
FailedPacket: u8,
Anonymous: extern struct {
_bitfield: u16,
},
ReadWordCount: u16,
FinalCommandExtraPayload: u16,
MipiErrors: u16,
HostErrors: u16,
Packets: [1]MIPI_DSI_PACKET,
};
pub const MIPI_DSI_RESET = extern struct {
Flags: u32,
Anonymous: extern union {
Anonymous: extern struct {
_bitfield: u32,
},
Results: u32,
},
};
pub const AR_STATE = enum(i32) {
ENABLED = 0,
DISABLED = 1,
SUPPRESSED = 2,
REMOTESESSION = 4,
MULTIMON = 8,
NOSENSOR = 16,
NOT_SUPPORTED = 32,
DOCKED = 64,
LAPTOP = 128,
};
pub const AR_ENABLED = AR_STATE.ENABLED;
pub const AR_DISABLED = AR_STATE.DISABLED;
pub const AR_SUPPRESSED = AR_STATE.SUPPRESSED;
pub const AR_REMOTESESSION = AR_STATE.REMOTESESSION;
pub const AR_MULTIMON = AR_STATE.MULTIMON;
pub const AR_NOSENSOR = AR_STATE.NOSENSOR;
pub const AR_NOT_SUPPORTED = AR_STATE.NOT_SUPPORTED;
pub const AR_DOCKED = AR_STATE.DOCKED;
pub const AR_LAPTOP = AR_STATE.LAPTOP;
pub const ORIENTATION_PREFERENCE = enum(i32) {
NONE = 0,
LANDSCAPE = 1,
PORTRAIT = 2,
LANDSCAPE_FLIPPED = 4,
PORTRAIT_FLIPPED = 8,
};
pub const ORIENTATION_PREFERENCE_NONE = ORIENTATION_PREFERENCE.NONE;
pub const ORIENTATION_PREFERENCE_LANDSCAPE = ORIENTATION_PREFERENCE.LANDSCAPE;
pub const ORIENTATION_PREFERENCE_PORTRAIT = ORIENTATION_PREFERENCE.PORTRAIT;
pub const ORIENTATION_PREFERENCE_LANDSCAPE_FLIPPED = ORIENTATION_PREFERENCE.LANDSCAPE_FLIPPED;
pub const ORIENTATION_PREFERENCE_PORTRAIT_FLIPPED = ORIENTATION_PREFERENCE.PORTRAIT_FLIPPED;
pub const POINTE = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern struct {
x: f32,
y: f32,
},
.X86 => extern struct {
x: u32,
y: u32,
},
};
pub const FLOAT_LONG = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern union {
e: f32,
l: i32,
},
.X86 => extern union {
e: u32,
l: i32,
},
};
pub const FD_XFORM = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern struct {
eXX: f32,
eXY: f32,
eYX: f32,
eYY: f32,
},
.X86 => extern struct {
eXX: u32,
eXY: u32,
eYX: u32,
eYY: u32,
},
};
pub const IFIMETRICS = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern struct {
cjThis: u32,
cjIfiExtra: u32,
dpwszFamilyName: i32,
dpwszStyleName: i32,
dpwszFaceName: i32,
dpwszUniqueName: i32,
dpFontSim: i32,
lEmbedId: i32,
lItalicAngle: i32,
lCharBias: i32,
dpCharSets: i32,
jWinCharSet: u8,
jWinPitchAndFamily: u8,
usWinWeight: u16,
flInfo: u32,
fsSelection: u16,
fsType: u16,
fwdUnitsPerEm: i16,
fwdLowestPPEm: i16,
fwdWinAscender: i16,
fwdWinDescender: i16,
fwdMacAscender: i16,
fwdMacDescender: i16,
fwdMacLineGap: i16,
fwdTypoAscender: i16,
fwdTypoDescender: i16,
fwdTypoLineGap: i16,
fwdAveCharWidth: i16,
fwdMaxCharInc: i16,
fwdCapHeight: i16,
fwdXHeight: i16,
fwdSubscriptXSize: i16,
fwdSubscriptYSize: i16,
fwdSubscriptXOffset: i16,
fwdSubscriptYOffset: i16,
fwdSuperscriptXSize: i16,
fwdSuperscriptYSize: i16,
fwdSuperscriptXOffset: i16,
fwdSuperscriptYOffset: i16,
fwdUnderscoreSize: i16,
fwdUnderscorePosition: i16,
fwdStrikeoutSize: i16,
fwdStrikeoutPosition: i16,
chFirstChar: u8,
chLastChar: u8,
chDefaultChar: u8,
chBreakChar: u8,
wcFirstChar: u16,
wcLastChar: u16,
wcDefaultChar: u16,
wcBreakChar: u16,
ptlBaseline: POINTL,
ptlAspect: POINTL,
ptlCaret: POINTL,
rclFontBox: RECTL,
achVendId: [4]u8,
cKerningPairs: u32,
ulPanoseCulture: u32,
panose: PANOSE,
Align: ?*anyopaque,
},
.X86 => extern struct {
cjThis: u32,
cjIfiExtra: u32,
dpwszFamilyName: i32,
dpwszStyleName: i32,
dpwszFaceName: i32,
dpwszUniqueName: i32,
dpFontSim: i32,
lEmbedId: i32,
lItalicAngle: i32,
lCharBias: i32,
dpCharSets: i32,
jWinCharSet: u8,
jWinPitchAndFamily: u8,
usWinWeight: u16,
flInfo: u32,
fsSelection: u16,
fsType: u16,
fwdUnitsPerEm: i16,
fwdLowestPPEm: i16,
fwdWinAscender: i16,
fwdWinDescender: i16,
fwdMacAscender: i16,
fwdMacDescender: i16,
fwdMacLineGap: i16,
fwdTypoAscender: i16,
fwdTypoDescender: i16,
fwdTypoLineGap: i16,
fwdAveCharWidth: i16,
fwdMaxCharInc: i16,
fwdCapHeight: i16,
fwdXHeight: i16,
fwdSubscriptXSize: i16,
fwdSubscriptYSize: i16,
fwdSubscriptXOffset: i16,
fwdSubscriptYOffset: i16,
fwdSuperscriptXSize: i16,
fwdSuperscriptYSize: i16,
fwdSuperscriptXOffset: i16,
fwdSuperscriptYOffset: i16,
fwdUnderscoreSize: i16,
fwdUnderscorePosition: i16,
fwdStrikeoutSize: i16,
fwdStrikeoutPosition: i16,
chFirstChar: u8,
chLastChar: u8,
chDefaultChar: u8,
chBreakChar: u8,
wcFirstChar: u16,
wcLastChar: u16,
wcDefaultChar: u16,
wcBreakChar: u16,
ptlBaseline: POINTL,
ptlAspect: POINTL,
ptlCaret: POINTL,
rclFontBox: RECTL,
achVendId: [4]u8,
cKerningPairs: u32,
ulPanoseCulture: u32,
panose: PANOSE,
},
};
pub const LINEATTRS = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern struct {
fl: u32,
iJoin: u32,
iEndCap: u32,
elWidth: FLOAT_LONG,
eMiterLimit: f32,
cstyle: u32,
pstyle: ?*FLOAT_LONG,
elStyleState: FLOAT_LONG,
},
.X86 => extern struct {
fl: u32,
iJoin: u32,
iEndCap: u32,
elWidth: FLOAT_LONG,
eMiterLimit: u32,
cstyle: u32,
pstyle: ?*FLOAT_LONG,
elStyleState: FLOAT_LONG,
},
};
pub const XFORML = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern struct {
eM11: f32,
eM12: f32,
eM21: f32,
eM22: f32,
eDx: f32,
eDy: f32,
},
.X86 => extern struct {
eM11: u32,
eM12: u32,
eM21: u32,
eM22: u32,
eDx: u32,
eDy: u32,
},
};
pub const FLOATOBJ_XFORM = switch(@import("../zig.zig").arch) {
.X64, .Arm64 => extern struct {
eM11: f32,
eM12: f32,
eM21: f32,
eM22: f32,
eDx: f32,
eDy: f32,
},
.X86 => extern struct {
eM11: FLOATOBJ,
eM12: FLOATOBJ,
eM21: FLOATOBJ,
eM22: FLOATOBJ,
eDx: FLOATOBJ,
eDy: FLOATOBJ,
},
};
pub const FLOATOBJ = switch(@import("../zig.zig").arch) {
.X86 => extern struct {
ul1: u32,
ul2: u32,
},
else => usize, // NOTE: this should be a @compileError but can't because of https://github.com/ziglang/zig/issues/9682
};
//--------------------------------------------------------------------------------
// Section: Functions (119)
//--------------------------------------------------------------------------------
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetNumberOfPhysicalMonitorsFromHMONITOR(
hMonitor: ?HMONITOR,
pdwNumberOfPhysicalMonitors: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetNumberOfPhysicalMonitorsFromIDirect3DDevice9(
pDirect3DDevice9: ?*IDirect3DDevice9,
pdwNumberOfPhysicalMonitors: ?*u32,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetPhysicalMonitorsFromHMONITOR(
hMonitor: ?HMONITOR,
dwPhysicalMonitorArraySize: u32,
pPhysicalMonitorArray: [*]PHYSICAL_MONITOR,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetPhysicalMonitorsFromIDirect3DDevice9(
pDirect3DDevice9: ?*IDirect3DDevice9,
dwPhysicalMonitorArraySize: u32,
pPhysicalMonitorArray: [*]PHYSICAL_MONITOR,
) callconv(@import("std").os.windows.WINAPI) HRESULT;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn DestroyPhysicalMonitor(
hMonitor: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn DestroyPhysicalMonitors(
dwPhysicalMonitorArraySize: u32,
pPhysicalMonitorArray: [*]PHYSICAL_MONITOR,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetVCPFeatureAndVCPFeatureReply(
hMonitor: ?HANDLE,
bVCPCode: u8,
pvct: ?*MC_VCP_CODE_TYPE,
pdwCurrentValue: ?*u32,
pdwMaximumValue: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetVCPFeature(
hMonitor: ?HANDLE,
bVCPCode: u8,
dwNewValue: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SaveCurrentSettings(
hMonitor: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetCapabilitiesStringLength(
hMonitor: ?HANDLE,
pdwCapabilitiesStringLengthInCharacters: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn CapabilitiesRequestAndCapabilitiesReply(
hMonitor: ?HANDLE,
pszASCIICapabilitiesString: [*:0]u8,
dwCapabilitiesStringLengthInCharacters: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetTimingReport(
hMonitor: ?HANDLE,
pmtrMonitorTimingReport: ?*MC_TIMING_REPORT,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorCapabilities(
hMonitor: ?HANDLE,
pdwMonitorCapabilities: ?*u32,
pdwSupportedColorTemperatures: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SaveCurrentMonitorSettings(
hMonitor: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorTechnologyType(
hMonitor: ?HANDLE,
pdtyDisplayTechnologyType: ?*MC_DISPLAY_TECHNOLOGY_TYPE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorBrightness(
hMonitor: ?HANDLE,
pdwMinimumBrightness: ?*u32,
pdwCurrentBrightness: ?*u32,
pdwMaximumBrightness: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorContrast(
hMonitor: ?HANDLE,
pdwMinimumContrast: ?*u32,
pdwCurrentContrast: ?*u32,
pdwMaximumContrast: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorColorTemperature(
hMonitor: ?HANDLE,
pctCurrentColorTemperature: ?*MC_COLOR_TEMPERATURE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorRedGreenOrBlueDrive(
hMonitor: ?HANDLE,
dtDriveType: MC_DRIVE_TYPE,
pdwMinimumDrive: ?*u32,
pdwCurrentDrive: ?*u32,
pdwMaximumDrive: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorRedGreenOrBlueGain(
hMonitor: ?HANDLE,
gtGainType: MC_GAIN_TYPE,
pdwMinimumGain: ?*u32,
pdwCurrentGain: ?*u32,
pdwMaximumGain: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorBrightness(
hMonitor: ?HANDLE,
dwNewBrightness: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorContrast(
hMonitor: ?HANDLE,
dwNewContrast: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorColorTemperature(
hMonitor: ?HANDLE,
ctCurrentColorTemperature: MC_COLOR_TEMPERATURE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorRedGreenOrBlueDrive(
hMonitor: ?HANDLE,
dtDriveType: MC_DRIVE_TYPE,
dwNewDrive: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorRedGreenOrBlueGain(
hMonitor: ?HANDLE,
gtGainType: MC_GAIN_TYPE,
dwNewGain: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn DegaussMonitor(
hMonitor: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorDisplayAreaSize(
hMonitor: ?HANDLE,
stSizeType: MC_SIZE_TYPE,
pdwMinimumWidthOrHeight: ?*u32,
pdwCurrentWidthOrHeight: ?*u32,
pdwMaximumWidthOrHeight: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn GetMonitorDisplayAreaPosition(
hMonitor: ?HANDLE,
ptPositionType: MC_POSITION_TYPE,
pdwMinimumPosition: ?*u32,
pdwCurrentPosition: ?*u32,
pdwMaximumPosition: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorDisplayAreaSize(
hMonitor: ?HANDLE,
stSizeType: MC_SIZE_TYPE,
dwNewDisplayAreaWidthOrHeight: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn SetMonitorDisplayAreaPosition(
hMonitor: ?HANDLE,
ptPositionType: MC_POSITION_TYPE,
dwNewPosition: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn RestoreMonitorFactoryColorDefaults(
hMonitor: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "dxva2" fn RestoreMonitorFactoryDefaults(
hMonitor: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn BRUSHOBJ_pvAllocRbrush(
pbo: ?*BRUSHOBJ,
cj: u32,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn BRUSHOBJ_pvGetRbrush(
pbo: ?*BRUSHOBJ,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn BRUSHOBJ_ulGetBrushColor(
pbo: ?*BRUSHOBJ,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn BRUSHOBJ_hGetColorTransform(
pbo: ?*BRUSHOBJ,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn CLIPOBJ_cEnumStart(
pco: ?*CLIPOBJ,
bAll: BOOL,
iType: u32,
iDirection: u32,
cLimit: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn CLIPOBJ_bEnum(
pco: ?*CLIPOBJ,
cj: u32,
pul: ?*u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn CLIPOBJ_ppoGetPath(
pco: ?*CLIPOBJ,
) callconv(@import("std").os.windows.WINAPI) ?*PATHOBJ;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_cGetAllGlyphHandles(
pfo: ?*FONTOBJ,
phg: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_vGetInfo(
pfo: ?*FONTOBJ,
cjSize: u32,
pfi: ?*FONTINFO,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_cGetGlyphs(
pfo: ?*FONTOBJ,
iMode: u32,
cGlyph: u32,
phg: ?*u32,
ppvGlyph: ?*?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_pxoGetXform(
pfo: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) ?*XFORMOBJ;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_pifi(
pfo: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) ?*IFIMETRICS;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_pfdg(
pfo: ?*FONTOBJ,
) callconv(@import("std").os.windows.WINAPI) ?*FD_GLYPHSET;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_pvTrueTypeFontFile(
pfo: ?*FONTOBJ,
pcjFile: ?*u32,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn FONTOBJ_pQueryGlyphAttrs(
pfo: ?*FONTOBJ,
iMode: u32,
) callconv(@import("std").os.windows.WINAPI) ?*FD_GLYPHATTR;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn PATHOBJ_vEnumStart(
ppo: ?*PATHOBJ,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn PATHOBJ_bEnum(
ppo: ?*PATHOBJ,
ppd: ?*PATHDATA,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn PATHOBJ_vEnumStartClipLines(
ppo: ?*PATHOBJ,
pco: ?*CLIPOBJ,
pso: ?*SURFOBJ,
pla: ?*LINEATTRS,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn PATHOBJ_bEnumClipLines(
ppo: ?*PATHOBJ,
cb: u32,
pcl: ?*CLIPLINE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn PATHOBJ_vGetBounds(
ppo: ?*PATHOBJ,
prectfx: ?*RECTFX,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn STROBJ_vEnumStart(
pstro: ?*STROBJ,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn STROBJ_bEnum(
pstro: ?*STROBJ,
pc: ?*u32,
ppgpos: ?*?*GLYPHPOS,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn STROBJ_bEnumPositionsOnly(
pstro: ?*STROBJ,
pc: ?*u32,
ppgpos: ?*?*GLYPHPOS,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn STROBJ_dwGetCodePage(
pstro: ?*STROBJ,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn STROBJ_bGetAdvanceWidths(
pso: ?*STROBJ,
iFirst: u32,
c: u32,
pptqD: ?*POINTQF,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn XFORMOBJ_iGetXform(
pxo: ?*XFORMOBJ,
pxform: ?*XFORML,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn XFORMOBJ_bApplyXform(
pxo: ?*XFORMOBJ,
iMode: u32,
cPoints: u32,
pvIn: ?*anyopaque,
pvOut: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn XLATEOBJ_iXlate(
pxlo: ?*XLATEOBJ,
iColor: u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn XLATEOBJ_piVector(
pxlo: ?*XLATEOBJ,
) callconv(@import("std").os.windows.WINAPI) ?*u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn XLATEOBJ_cGetPalette(
pxlo: ?*XLATEOBJ,
iPal: u32,
cPal: u32,
pPal: ?*u32,
) callconv(@import("std").os.windows.WINAPI) u32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn XLATEOBJ_hGetColorTransform(
pxlo: ?*XLATEOBJ,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCreateBitmap(
sizl: SIZE,
lWidth: i32,
iFormat: u32,
fl: u32,
pvBits: ?*anyopaque,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCreateDeviceSurface(
dhsurf: DHSURF,
sizl: SIZE,
iFormatCompat: u32,
) callconv(@import("std").os.windows.WINAPI) ?HSURF;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCreateDeviceBitmap(
dhsurf: DHSURF,
sizl: SIZE,
iFormatCompat: u32,
) callconv(@import("std").os.windows.WINAPI) ?HBITMAP;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngDeleteSurface(
hsurf: ?HSURF,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngLockSurface(
hsurf: ?HSURF,
) callconv(@import("std").os.windows.WINAPI) ?*SURFOBJ;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngUnlockSurface(
pso: ?*SURFOBJ,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngEraseSurface(
pso: ?*SURFOBJ,
prcl: ?*RECTL,
iColor: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngAssociateSurface(
hsurf: ?HSURF,
hdev: ?HDEV,
flHooks: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngMarkBandingSurface(
hsurf: ?HSURF,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCheckAbort(
pso: ?*SURFOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngDeletePath(
ppo: ?*PATHOBJ,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCreatePalette(
iMode: u32,
cColors: u32,
pulColors: ?*u32,
flRed: u32,
flGreen: u32,
flBlue: u32,
) callconv(@import("std").os.windows.WINAPI) ?HPALETTE;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngDeletePalette(
hpal: ?HPALETTE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCreateClip(
) callconv(@import("std").os.windows.WINAPI) ?*CLIPOBJ;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngDeleteClip(
pco: ?*CLIPOBJ,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngBitBlt(
psoTrg: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
psoMask: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
prclTrg: ?*RECTL,
pptlSrc: ?*POINTL,
pptlMask: ?*POINTL,
pbo: ?*BRUSHOBJ,
pptlBrush: ?*POINTL,
rop4: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngLineTo(
pso: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pbo: ?*BRUSHOBJ,
x1: i32,
y1: i32,
x2: i32,
y2: i32,
prclBounds: ?*RECTL,
mix: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngStretchBlt(
psoDest: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
psoMask: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
pca: ?*COLORADJUSTMENT,
pptlHTOrg: ?*POINTL,
prclDest: ?*RECTL,
prclSrc: ?*RECTL,
pptlMask: ?*POINTL,
iMode: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngStretchBltROP(
psoDest: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
psoMask: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
pca: ?*COLORADJUSTMENT,
pptlHTOrg: ?*POINTL,
prclDest: ?*RECTL,
prclSrc: ?*RECTL,
pptlMask: ?*POINTL,
iMode: u32,
pbo: ?*BRUSHOBJ,
rop4: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngAlphaBlend(
psoDest: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
prclDest: ?*RECTL,
prclSrc: ?*RECTL,
pBlendObj: ?*BLENDOBJ,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngGradientFill(
psoDest: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
pVertex: ?*TRIVERTEX,
nVertex: u32,
pMesh: ?*anyopaque,
nMesh: u32,
prclExtents: ?*RECTL,
pptlDitherOrg: ?*POINTL,
ulMode: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngTransparentBlt(
psoDst: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
prclDst: ?*RECTL,
prclSrc: ?*RECTL,
TransColor: u32,
bCalledFromBitBlt: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngTextOut(
pso: ?*SURFOBJ,
pstro: ?*STROBJ,
pfo: ?*FONTOBJ,
pco: ?*CLIPOBJ,
prclExtra: ?*RECTL,
prclOpaque: ?*RECTL,
pboFore: ?*BRUSHOBJ,
pboOpaque: ?*BRUSHOBJ,
pptlOrg: ?*POINTL,
mix: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngStrokePath(
pso: ?*SURFOBJ,
ppo: ?*PATHOBJ,
pco: ?*CLIPOBJ,
pxo: ?*XFORMOBJ,
pbo: ?*BRUSHOBJ,
pptlBrushOrg: ?*POINTL,
plineattrs: ?*LINEATTRS,
mix: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngFillPath(
pso: ?*SURFOBJ,
ppo: ?*PATHOBJ,
pco: ?*CLIPOBJ,
pbo: ?*BRUSHOBJ,
pptlBrushOrg: ?*POINTL,
mix: u32,
flOptions: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngStrokeAndFillPath(
pso: ?*SURFOBJ,
ppo: ?*PATHOBJ,
pco: ?*CLIPOBJ,
pxo: ?*XFORMOBJ,
pboStroke: ?*BRUSHOBJ,
plineattrs: ?*LINEATTRS,
pboFill: ?*BRUSHOBJ,
pptlBrushOrg: ?*POINTL,
mixFill: u32,
flOptions: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngPaint(
pso: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pbo: ?*BRUSHOBJ,
pptlBrushOrg: ?*POINTL,
mix: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCopyBits(
psoDest: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
prclDest: ?*RECTL,
pptlSrc: ?*POINTL,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngPlgBlt(
psoTrg: ?*SURFOBJ,
psoSrc: ?*SURFOBJ,
psoMsk: ?*SURFOBJ,
pco: ?*CLIPOBJ,
pxlo: ?*XLATEOBJ,
pca: ?*COLORADJUSTMENT,
pptlBrushOrg: ?*POINTL,
pptfx: ?*POINTFIX,
prcl: ?*RECTL,
pptl: ?*POINTL,
iMode: u32,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn HT_Get8BPPFormatPalette(
pPaletteEntry: ?*PALETTEENTRY,
RedGamma: u16,
GreenGamma: u16,
BlueGamma: u16,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn HT_Get8BPPMaskPalette(
pPaletteEntry: ?*PALETTEENTRY,
Use8BPPMaskPal: BOOL,
CMYMask: u8,
RedGamma: u16,
GreenGamma: u16,
BlueGamma: u16,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngGetPrinterDataFileName(
hdev: ?HDEV,
) callconv(@import("std").os.windows.WINAPI) ?PWSTR;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngGetDriverName(
hdev: ?HDEV,
) callconv(@import("std").os.windows.WINAPI) ?PWSTR;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngLoadModule(
pwsz: ?PWSTR,
) callconv(@import("std").os.windows.WINAPI) ?HANDLE;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngFindResource(
h: ?HANDLE,
iName: i32,
iType: i32,
pulSize: ?*u32,
) callconv(@import("std").os.windows.WINAPI) ?*anyopaque;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngFreeModule(
h: ?HANDLE,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngCreateSemaphore(
) callconv(@import("std").os.windows.WINAPI) ?HSEMAPHORE;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngAcquireSemaphore(
hsem: ?HSEMAPHORE,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngReleaseSemaphore(
hsem: ?HSEMAPHORE,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngDeleteSemaphore(
hsem: ?HSEMAPHORE,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngMultiByteToUnicodeN(
// TODO: what to do with BytesParamIndex 1?
UnicodeString: ?PWSTR,
MaxBytesInUnicodeString: u32,
BytesInUnicodeString: ?*u32,
// TODO: what to do with BytesParamIndex 4?
MultiByteString: ?[*]u8,
BytesInMultiByteString: u32,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngUnicodeToMultiByteN(
// TODO: what to do with BytesParamIndex 1?
MultiByteString: ?[*]u8,
MaxBytesInMultiByteString: u32,
BytesInMultiByteString: ?*u32,
// TODO: what to do with BytesParamIndex 4?
UnicodeString: ?PWSTR,
BytesInUnicodeString: u32,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngQueryLocalTime(
param0: ?*ENG_TIME_FIELDS,
) callconv(@import("std").os.windows.WINAPI) void;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngComputeGlyphSet(
nCodePage: i32,
nFirstChar: i32,
cChars: i32,
) callconv(@import("std").os.windows.WINAPI) ?*FD_GLYPHSET;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngMultiByteToWideChar(
CodePage: u32,
// TODO: what to do with BytesParamIndex 2?
WideCharString: ?PWSTR,
BytesInWideCharString: i32,
// TODO: what to do with BytesParamIndex 4?
MultiByteString: ?PSTR,
BytesInMultiByteString: i32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngWideCharToMultiByte(
CodePage: u32,
// TODO: what to do with BytesParamIndex 2?
WideCharString: ?PWSTR,
BytesInWideCharString: i32,
// TODO: what to do with BytesParamIndex 4?
MultiByteString: ?PSTR,
BytesInMultiByteString: i32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows5.0'
pub extern "gdi32" fn EngGetCurrentCodePage(
OemCodePage: ?*u16,
AnsiCodePage: ?*u16,
) callconv(@import("std").os.windows.WINAPI) void;
pub extern "gdi32" fn EngQueryEMFInfo(
hdev: ?HDEV,
pEMFInfo: ?*EMFINFO,
) callconv(@import("std").os.windows.WINAPI) BOOL;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "user32" fn GetDisplayConfigBufferSizes(
flags: u32,
numPathArrayElements: ?*u32,
numModeInfoArrayElements: ?*u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "user32" fn SetDisplayConfig(
numPathArrayElements: u32,
pathArray: ?[*]DISPLAYCONFIG_PATH_INFO,
numModeInfoArrayElements: u32,
modeInfoArray: ?[*]DISPLAYCONFIG_MODE_INFO,
flags: u32,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.1'
pub extern "user32" fn QueryDisplayConfig(
flags: u32,
numPathArrayElements: ?*u32,
pathArray: [*]DISPLAYCONFIG_PATH_INFO,
numModeInfoArrayElements: ?*u32,
modeInfoArray: [*]DISPLAYCONFIG_MODE_INFO,
currentTopologyId: ?*DISPLAYCONFIG_TOPOLOGY_ID,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "user32" fn DisplayConfigGetDeviceInfo(
requestPacket: ?*DISPLAYCONFIG_DEVICE_INFO_HEADER,
) callconv(@import("std").os.windows.WINAPI) i32;
// TODO: this type is limited to platform 'windows6.0.6000'
pub extern "user32" fn DisplayConfigSetDeviceInfo(
setPacket: ?*DISPLAYCONFIG_DEVICE_INFO_HEADER,
) callconv(@import("std").os.windows.WINAPI) i32;
pub extern "user32" fn GetAutoRotationState(
pState: ?*AR_STATE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
pub extern "user32" fn GetDisplayAutoRotationPreferences(
pOrientation: ?*ORIENTATION_PREFERENCE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
pub extern "user32" fn SetDisplayAutoRotationPreferences(
orientation: ORIENTATION_PREFERENCE,
) callconv(@import("std").os.windows.WINAPI) BOOL;
//--------------------------------------------------------------------------------
// Section: Unicode Aliases (0)
//--------------------------------------------------------------------------------
const thismodule = @This();
pub usingnamespace switch (@import("../zig.zig").unicode_mode) {
.ansi => struct {
},
.wide => struct {
},
.unspecified => if (@import("builtin").is_test) struct {
} else struct {
},
};
//--------------------------------------------------------------------------------
// Section: Imports (45)
//--------------------------------------------------------------------------------
const Guid = @import("../zig.zig").Guid;
const BLENDFUNCTION = @import("../graphics/gdi.zig").BLENDFUNCTION;
const BOOL = @import("../foundation.zig").BOOL;
const BOOLEAN = @import("../foundation.zig").BOOLEAN;
const CHAR = @import("../foundation.zig").CHAR;
const CHAR_INFO = @import("../system/console.zig").CHAR_INFO;
const COLORADJUSTMENT = @import("../graphics/gdi.zig").COLORADJUSTMENT;
const COORD = @import("../system/console.zig").COORD;
const DD_CALLBACKS = @import("../graphics/direct_draw.zig").DD_CALLBACKS;
const DD_DIRECTDRAW_GLOBAL = @import("../graphics/direct_draw.zig").DD_DIRECTDRAW_GLOBAL;
const DD_HALINFO = @import("../graphics/direct_draw.zig").DD_HALINFO;
const DD_PALETTECALLBACKS = @import("../graphics/direct_draw.zig").DD_PALETTECALLBACKS;
const DD_SURFACE_LOCAL = @import("../graphics/direct_draw.zig").DD_SURFACE_LOCAL;
const DD_SURFACECALLBACKS = @import("../graphics/direct_draw.zig").DD_SURFACECALLBACKS;
const DESIGNVECTOR = @import("../graphics/gdi.zig").DESIGNVECTOR;
const DEVMODEW = @import("../graphics/gdi.zig").DEVMODEW;
const DISPLAYCONFIG_COLOR_ENCODING = @import("../graphics/gdi.zig").DISPLAYCONFIG_COLOR_ENCODING;
const HANDLE = @import("../foundation.zig").HANDLE;
const HBITMAP = @import("../graphics/gdi.zig").HBITMAP;
const HDC = @import("../graphics/gdi.zig").HDC;
const HMONITOR = @import("../graphics/gdi.zig").HMONITOR;
const HPALETTE = @import("../graphics/gdi.zig").HPALETTE;
const HRESULT = @import("../foundation.zig").HRESULT;
const HWND = @import("../foundation.zig").HWND;
const IDirect3DDevice9 = @import("../graphics/direct3d9.zig").IDirect3DDevice9;
const IStream = @import("../system/com.zig").IStream;
const IUnknown = @import("../system/com.zig").IUnknown;
const LARGE_INTEGER = @import("../foundation.zig").LARGE_INTEGER;
const LOGCOLORSPACEW = @import("../ui/color_system.zig").LOGCOLORSPACEW;
const LOGFONTW = @import("../graphics/gdi.zig").LOGFONTW;
const LUID = @import("../foundation.zig").LUID;
const NTSTATUS = @import("../foundation.zig").NTSTATUS;
const PALETTEENTRY = @import("../graphics/gdi.zig").PALETTEENTRY;
const PANOSE = @import("../graphics/gdi.zig").PANOSE;
const PIXELFORMATDESCRIPTOR = @import("../graphics/open_gl.zig").PIXELFORMATDESCRIPTOR;
const POINTL = @import("../foundation.zig").POINTL;
const PROPERTYKEY = @import("../ui/shell/properties_system.zig").PROPERTYKEY;
const PSTR = @import("../foundation.zig").PSTR;
const PWSTR = @import("../foundation.zig").PWSTR;
const RECT = @import("../foundation.zig").RECT;
const RECTL = @import("../foundation.zig").RECTL;
const SIZE = @import("../foundation.zig").SIZE;
const TRIVERTEX = @import("../graphics/gdi.zig").TRIVERTEX;
const TTPOLYGONHEADER = @import("../graphics/gdi.zig").TTPOLYGONHEADER;
const VIDEOMEMORY = @import("../graphics/direct_draw.zig").VIDEOMEMORY;
test {
// The following '_ = <FuncPtrType>' lines are a workaround for https://github.com/ziglang/zig/issues/4476
if (@hasDecl(@This(), "PFN")) { _ = PFN; }
if (@hasDecl(@This(), "WNDOBJCHANGEPROC")) { _ = WNDOBJCHANGEPROC; }
if (@hasDecl(@This(), "SORTCOMP")) { _ = SORTCOMP; }
if (@hasDecl(@This(), "PFN_DrvEnableDriver")) { _ = PFN_DrvEnableDriver; }
if (@hasDecl(@This(), "PFN_DrvEnablePDEV")) { _ = PFN_DrvEnablePDEV; }
if (@hasDecl(@This(), "PFN_DrvCompletePDEV")) { _ = PFN_DrvCompletePDEV; }
if (@hasDecl(@This(), "PFN_DrvResetDevice")) { _ = PFN_DrvResetDevice; }
if (@hasDecl(@This(), "PFN_DrvDisablePDEV")) { _ = PFN_DrvDisablePDEV; }
if (@hasDecl(@This(), "PFN_DrvSynchronize")) { _ = PFN_DrvSynchronize; }
if (@hasDecl(@This(), "PFN_DrvEnableSurface")) { _ = PFN_DrvEnableSurface; }
if (@hasDecl(@This(), "PFN_DrvDisableDriver")) { _ = PFN_DrvDisableDriver; }
if (@hasDecl(@This(), "PFN_DrvDisableSurface")) { _ = PFN_DrvDisableSurface; }
if (@hasDecl(@This(), "PFN_DrvAssertMode")) { _ = PFN_DrvAssertMode; }
if (@hasDecl(@This(), "PFN_DrvTextOut")) { _ = PFN_DrvTextOut; }
if (@hasDecl(@This(), "PFN_DrvStretchBlt")) { _ = PFN_DrvStretchBlt; }
if (@hasDecl(@This(), "PFN_DrvStretchBltROP")) { _ = PFN_DrvStretchBltROP; }
if (@hasDecl(@This(), "PFN_DrvTransparentBlt")) { _ = PFN_DrvTransparentBlt; }
if (@hasDecl(@This(), "PFN_DrvPlgBlt")) { _ = PFN_DrvPlgBlt; }
if (@hasDecl(@This(), "PFN_DrvBitBlt")) { _ = PFN_DrvBitBlt; }
if (@hasDecl(@This(), "PFN_DrvRealizeBrush")) { _ = PFN_DrvRealizeBrush; }
if (@hasDecl(@This(), "PFN_DrvCopyBits")) { _ = PFN_DrvCopyBits; }
if (@hasDecl(@This(), "PFN_DrvDitherColor")) { _ = PFN_DrvDitherColor; }
if (@hasDecl(@This(), "PFN_DrvCreateDeviceBitmap")) { _ = PFN_DrvCreateDeviceBitmap; }
if (@hasDecl(@This(), "PFN_DrvDeleteDeviceBitmap")) { _ = PFN_DrvDeleteDeviceBitmap; }
if (@hasDecl(@This(), "PFN_DrvSetPalette")) { _ = PFN_DrvSetPalette; }
if (@hasDecl(@This(), "PFN_DrvEscape")) { _ = PFN_DrvEscape; }
if (@hasDecl(@This(), "PFN_DrvDrawEscape")) { _ = PFN_DrvDrawEscape; }
if (@hasDecl(@This(), "PFN_DrvQueryFont")) { _ = PFN_DrvQueryFont; }
if (@hasDecl(@This(), "PFN_DrvQueryFontTree")) { _ = PFN_DrvQueryFontTree; }
if (@hasDecl(@This(), "PFN_DrvQueryFontData")) { _ = PFN_DrvQueryFontData; }
if (@hasDecl(@This(), "PFN_DrvFree")) { _ = PFN_DrvFree; }
if (@hasDecl(@This(), "PFN_DrvDestroyFont")) { _ = PFN_DrvDestroyFont; }
if (@hasDecl(@This(), "PFN_DrvQueryFontCaps")) { _ = PFN_DrvQueryFontCaps; }
if (@hasDecl(@This(), "PFN_DrvLoadFontFile")) { _ = PFN_DrvLoadFontFile; }
if (@hasDecl(@This(), "PFN_DrvUnloadFontFile")) { _ = PFN_DrvUnloadFontFile; }
if (@hasDecl(@This(), "PFN_DrvSetPointerShape")) { _ = PFN_DrvSetPointerShape; }
if (@hasDecl(@This(), "PFN_DrvMovePointer")) { _ = PFN_DrvMovePointer; }
if (@hasDecl(@This(), "PFN_DrvSendPage")) { _ = PFN_DrvSendPage; }
if (@hasDecl(@This(), "PFN_DrvStartPage")) { _ = PFN_DrvStartPage; }
if (@hasDecl(@This(), "PFN_DrvStartDoc")) { _ = PFN_DrvStartDoc; }
if (@hasDecl(@This(), "PFN_DrvEndDoc")) { _ = PFN_DrvEndDoc; }
if (@hasDecl(@This(), "PFN_DrvQuerySpoolType")) { _ = PFN_DrvQuerySpoolType; }
if (@hasDecl(@This(), "PFN_DrvLineTo")) { _ = PFN_DrvLineTo; }
if (@hasDecl(@This(), "PFN_DrvStrokePath")) { _ = PFN_DrvStrokePath; }
if (@hasDecl(@This(), "PFN_DrvFillPath")) { _ = PFN_DrvFillPath; }
if (@hasDecl(@This(), "PFN_DrvStrokeAndFillPath")) { _ = PFN_DrvStrokeAndFillPath; }
if (@hasDecl(@This(), "PFN_DrvPaint")) { _ = PFN_DrvPaint; }
if (@hasDecl(@This(), "PFN_DrvGetGlyphMode")) { _ = PFN_DrvGetGlyphMode; }
if (@hasDecl(@This(), "PFN_DrvResetPDEV")) { _ = PFN_DrvResetPDEV; }
if (@hasDecl(@This(), "PFN_DrvSaveScreenBits")) { _ = PFN_DrvSaveScreenBits; }
if (@hasDecl(@This(), "PFN_DrvGetModes")) { _ = PFN_DrvGetModes; }
if (@hasDecl(@This(), "PFN_DrvQueryTrueTypeTable")) { _ = PFN_DrvQueryTrueTypeTable; }
if (@hasDecl(@This(), "PFN_DrvQueryTrueTypeSection")) { _ = PFN_DrvQueryTrueTypeSection; }
if (@hasDecl(@This(), "PFN_DrvQueryTrueTypeOutline")) { _ = PFN_DrvQueryTrueTypeOutline; }
if (@hasDecl(@This(), "PFN_DrvGetTrueTypeFile")) { _ = PFN_DrvGetTrueTypeFile; }
if (@hasDecl(@This(), "PFN_DrvQueryFontFile")) { _ = PFN_DrvQueryFontFile; }
if (@hasDecl(@This(), "PFN_DrvQueryGlyphAttrs")) { _ = PFN_DrvQueryGlyphAttrs; }
if (@hasDecl(@This(), "PFN_DrvQueryAdvanceWidths")) { _ = PFN_DrvQueryAdvanceWidths; }
if (@hasDecl(@This(), "PFN_DrvFontManagement")) { _ = PFN_DrvFontManagement; }
if (@hasDecl(@This(), "PFN_DrvSetPixelFormat")) { _ = PFN_DrvSetPixelFormat; }
if (@hasDecl(@This(), "PFN_DrvDescribePixelFormat")) { _ = PFN_DrvDescribePixelFormat; }
if (@hasDecl(@This(), "PFN_DrvSwapBuffers")) { _ = PFN_DrvSwapBuffers; }
if (@hasDecl(@This(), "PFN_DrvStartBanding")) { _ = PFN_DrvStartBanding; }
if (@hasDecl(@This(), "PFN_DrvNextBand")) { _ = PFN_DrvNextBand; }
if (@hasDecl(@This(), "PFN_DrvQueryPerBandInfo")) { _ = PFN_DrvQueryPerBandInfo; }
if (@hasDecl(@This(), "PFN_DrvEnableDirectDraw")) { _ = PFN_DrvEnableDirectDraw; }
if (@hasDecl(@This(), "PFN_DrvDisableDirectDraw")) { _ = PFN_DrvDisableDirectDraw; }
if (@hasDecl(@This(), "PFN_DrvGetDirectDrawInfo")) { _ = PFN_DrvGetDirectDrawInfo; }
if (@hasDecl(@This(), "PFN_DrvIcmCreateColorTransform")) { _ = PFN_DrvIcmCreateColorTransform; }
if (@hasDecl(@This(), "PFN_DrvIcmDeleteColorTransform")) { _ = PFN_DrvIcmDeleteColorTransform; }
if (@hasDecl(@This(), "PFN_DrvIcmCheckBitmapBits")) { _ = PFN_DrvIcmCheckBitmapBits; }
if (@hasDecl(@This(), "PFN_DrvIcmSetDeviceGammaRamp")) { _ = PFN_DrvIcmSetDeviceGammaRamp; }
if (@hasDecl(@This(), "PFN_DrvAlphaBlend")) { _ = PFN_DrvAlphaBlend; }
if (@hasDecl(@This(), "PFN_DrvGradientFill")) { _ = PFN_DrvGradientFill; }
if (@hasDecl(@This(), "PFN_DrvQueryDeviceSupport")) { _ = PFN_DrvQueryDeviceSupport; }
if (@hasDecl(@This(), "PFN_DrvDeriveSurface")) { _ = PFN_DrvDeriveSurface; }
if (@hasDecl(@This(), "PFN_DrvSynchronizeSurface")) { _ = PFN_DrvSynchronizeSurface; }
if (@hasDecl(@This(), "PFN_DrvNotify")) { _ = PFN_DrvNotify; }
if (@hasDecl(@This(), "PFN_DrvRenderHint")) { _ = PFN_DrvRenderHint; }
if (@hasDecl(@This(), "PFN_EngCreateRectRgn")) { _ = PFN_EngCreateRectRgn; }
if (@hasDecl(@This(), "PFN_EngDeleteRgn")) { _ = PFN_EngDeleteRgn; }
if (@hasDecl(@This(), "PFN_EngCombineRgn")) { _ = PFN_EngCombineRgn; }
if (@hasDecl(@This(), "PFN_EngCopyRgn")) { _ = PFN_EngCopyRgn; }
if (@hasDecl(@This(), "PFN_EngIntersectRgn")) { _ = PFN_EngIntersectRgn; }
if (@hasDecl(@This(), "PFN_EngSubtractRgn")) { _ = PFN_EngSubtractRgn; }
if (@hasDecl(@This(), "PFN_EngUnionRgn")) { _ = PFN_EngUnionRgn; }
if (@hasDecl(@This(), "PFN_EngXorRgn")) { _ = PFN_EngXorRgn; }
if (@hasDecl(@This(), "PFN_DrvCreateDeviceBitmapEx")) { _ = PFN_DrvCreateDeviceBitmapEx; }
if (@hasDecl(@This(), "PFN_DrvDeleteDeviceBitmapEx")) { _ = PFN_DrvDeleteDeviceBitmapEx; }
if (@hasDecl(@This(), "PFN_DrvAssociateSharedSurface")) { _ = PFN_DrvAssociateSharedSurface; }
if (@hasDecl(@This(), "PFN_DrvSynchronizeRedirectionBitmaps")) { _ = PFN_DrvSynchronizeRedirectionBitmaps; }
if (@hasDecl(@This(), "PFN_DrvAccumulateD3DDirtyRect")) { _ = PFN_DrvAccumulateD3DDirtyRect; }
if (@hasDecl(@This(), "PFN_DrvStartDxInterop")) { _ = PFN_DrvStartDxInterop; }
if (@hasDecl(@This(), "PFN_DrvEndDxInterop")) { _ = PFN_DrvEndDxInterop; }
if (@hasDecl(@This(), "PFN_DrvLockDisplayArea")) { _ = PFN_DrvLockDisplayArea; }
if (@hasDecl(@This(), "PFN_DrvUnlockDisplayArea")) { _ = PFN_DrvUnlockDisplayArea; }
if (@hasDecl(@This(), "PFN_DrvSurfaceComplete")) { _ = PFN_DrvSurfaceComplete; }
if (@hasDecl(@This(), "PVIDEO_WIN32K_CALLOUT")) { _ = PVIDEO_WIN32K_CALLOUT; }
@setEvalBranchQuota(
comptime @import("std").meta.declarations(@This()).len * 3
);
// reference all the pub declarations
if (!@import("builtin").is_test) return;
inline for (comptime @import("std").meta.declarations(@This())) |decl| {
_ = @field(@This(), decl.name);
}
}