File Annotation

Not logged in
9b639cf2d6 2015-05-05        kinaba: /***********************************************************************\
9b639cf2d6 2015-05-05        kinaba: *                                dxgitype.d                             *
9b639cf2d6 2015-05-05        kinaba: *                                                                       *
9b639cf2d6 2015-05-05        kinaba: *                       Windows API header module                       *
9b639cf2d6 2015-05-05        kinaba: *                                                                       *
9b639cf2d6 2015-05-05        kinaba: *                       Placed into public domain                       *
9b639cf2d6 2015-05-05        kinaba: \***********************************************************************/
9b639cf2d6 2015-05-05        kinaba: module win32.directx.dxgitype;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: private import win32.windows;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const _FACDXGI = 0x87a;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: HRESULT MAKE_DXGI_HRESULT(T)(T code) {
9b639cf2d6 2015-05-05        kinaba: 	return MAKE_HRESULT(1, _FACDXGI, code);
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: HRESULT MAKE_DXGI_STATUS(T)(T code) {
9b639cf2d6 2015-05-05        kinaba: 	return MAKE_HRESULT(0, _FACDXGI, code);
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_OCCLUDED						= MAKE_DXGI_STATUS(1);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_CLIPPED						= MAKE_DXGI_STATUS(2);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_NO_REDIRECTION				= MAKE_DXGI_STATUS(4);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_NO_DESKTOP_ACCESS				= MAKE_DXGI_STATUS(5);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE	= MAKE_DXGI_STATUS(6);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_MODE_CHANGED					= MAKE_DXGI_STATUS(7);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_STATUS_MODE_CHANGE_IN_PROGRESS		= MAKE_DXGI_STATUS(8);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_INVALID_CALL					= MAKE_DXGI_HRESULT( 1);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_NOT_FOUND						= MAKE_DXGI_HRESULT( 2);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_MORE_DATA						= MAKE_DXGI_HRESULT( 3);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_UNSUPPORTED					= MAKE_DXGI_HRESULT( 4);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_DEVICE_REMOVED					= MAKE_DXGI_HRESULT( 5);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_DEVICE_HUNG					= MAKE_DXGI_HRESULT( 6);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_DEVICE_RESET					= MAKE_DXGI_HRESULT( 7);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_WAS_STILL_DRAWING				= MAKE_DXGI_HRESULT(10);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_FRAME_STATISTICS_DISJOINT		= MAKE_DXGI_HRESULT(11);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE	= MAKE_DXGI_HRESULT(12);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_DRIVER_INTERNAL_ERROR			= MAKE_DXGI_HRESULT(32);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_NONEXCLUSIVE					= MAKE_DXGI_HRESULT(33);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_ERROR_NOT_CURRENTLY_AVAILABLE		= MAKE_DXGI_HRESULT(34);
9b639cf2d6 2015-05-05        kinaba: const HRESULT DXGI_FORMAT_DEFINED						= 1;
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: enum DXGI_FORMAT {
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_UNKNOWN						= 0,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32A32_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32A32_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32A32_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32A32_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32B32_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16B16A16_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16B16A16_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16B16A16_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16B16A16_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16B16A16_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16B16A16_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G32_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32G8X24_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_D32_FLOAT_S8X24_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_X32_TYPELESS_G8X24_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R10G10B10A2_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R10G10B10A2_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R10G10B10A2_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R11G11B10_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8B8A8_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8B8A8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8B8A8_UNORM_SRGB,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8B8A8_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8B8A8_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8B8A8_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16G16_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_D32_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R32_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R24G8_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_D24_UNORM_S8_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R24_UNORM_X8_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_X24_TYPELESS_G8_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16_FLOAT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_D16_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R16_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8_UINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8_SINT,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_A8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R1_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R9G9B9E5_SHAREDEXP,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_R8G8_B8G8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_G8R8_G8B8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC1_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC1_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC1_UNORM_SRGB,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC2_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC2_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC2_UNORM_SRGB,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC3_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC3_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC3_UNORM_SRGB,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC4_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC4_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC4_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC5_TYPELESS,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC5_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_BC5_SNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_B5G6R5_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_B5G5R5A1_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_B8G8R8A8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_B8G8R8X8_UNORM,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT_FORCE_UINT			= 0xffffffff
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct DXGI_RGB {
9b639cf2d6 2015-05-05        kinaba: 	float Red;
9b639cf2d6 2015-05-05        kinaba: 	float Green;
9b639cf2d6 2015-05-05        kinaba: 	float Blue;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct DXGI_GAMMA_CONTROL {
9b639cf2d6 2015-05-05        kinaba: 	DXGI_RGB Scale;
9b639cf2d6 2015-05-05        kinaba: 	DXGI_RGB Offset;
9b639cf2d6 2015-05-05        kinaba: 	DXGI_RGB[1025] GammaCurve;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct DXGI_GAMMA_CONTROL_CAPABILITIES {
9b639cf2d6 2015-05-05        kinaba: 	BOOL ScaleAndOffsetSupported;
9b639cf2d6 2015-05-05        kinaba: 	float MaxConvertedValue;
9b639cf2d6 2015-05-05        kinaba: 	float MinConvertedValue;
9b639cf2d6 2015-05-05        kinaba: 	UINT NumGammaControlPoints;
9b639cf2d6 2015-05-05        kinaba: 	float[1025] ControlPointPositions;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct DXGI_RATIONAL {
9b639cf2d6 2015-05-05        kinaba: 	UINT Numerator;
9b639cf2d6 2015-05-05        kinaba: 	UINT Denominator;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: enum DXGI_MODE_SCANLINE_ORDER {
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED		= 0,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE		= 1,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST	= 2,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST	= 3
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: enum DXGI_MODE_SCALING {
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCALING_UNSPECIFIED	= 0,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCALING_CENTERED		= 1,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCALING_STRETCHED		= 2
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: enum DXGI_MODE_ROTATION {
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_ROTATION_UNSPECIFIED	= 0,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_ROTATION_IDENTITY		= 1,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_ROTATION_ROTATE90		= 2,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_ROTATION_ROTATE180	= 3,
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_ROTATION_ROTATE270	= 4
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct DXGI_MODE_DESC {
9b639cf2d6 2015-05-05        kinaba: 	UINT Width;
9b639cf2d6 2015-05-05        kinaba: 	UINT Height;
9b639cf2d6 2015-05-05        kinaba: 	DXGI_RATIONAL RefreshRate;
9b639cf2d6 2015-05-05        kinaba: 	DXGI_FORMAT Format;
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCANLINE_ORDER ScanlineOrdering;
9b639cf2d6 2015-05-05        kinaba: 	DXGI_MODE_SCALING Scaling;
9b639cf2d6 2015-05-05        kinaba: }
9b639cf2d6 2015-05-05        kinaba: 
9b639cf2d6 2015-05-05        kinaba: struct DXGI_SAMPLE_DESC {
9b639cf2d6 2015-05-05        kinaba: 	UINT Count;
9b639cf2d6 2015-05-05        kinaba: 	UINT Quality;
9b639cf2d6 2015-05-05        kinaba: }