1 module aurora.directx.dxgi.dxgitype; 2 3 public import aurora.directx.dxgi.dxgiformat; 4 public import aurora.directx.dxgi.dxgicommon; 5 6 public: 7 8 enum int DXGI_CPU_ACCESS_NONE = 0; 9 enum int DXGI_CPU_ACCESS_DYNAMIC = 1; 10 enum int DXGI_CPU_ACCESS_READ_WRITE = 2; 11 enum int DXGI_CPU_ACCESS_SCRATCH = 3; 12 enum int DXGI_CPU_ACCESS_FIELD = 15; 13 14 struct DXGI_RGB 15 { 16 float Red; 17 float Green; 18 float Blue; 19 } 20 21 struct D3DCOLORVALUE { 22 float r; 23 float g; 24 float b; 25 float a; 26 } 27 28 alias D3DCOLORVALUE DXGI_RGBA; 29 30 struct DXGI_GAMMA_CONTROL 31 { 32 DXGI_RGB Scale; 33 DXGI_RGB Offset; 34 DXGI_RGB[1025] GammaCurve; 35 } 36 37 struct DXGI_GAMMA_CONTROL_CAPABILITIES 38 { 39 bool ScaleAndOffsetSupported; 40 float MaxConvertedValue; 41 float MinConvertedValue; 42 uint NumGammaControlPoints; 43 float[1025] ControlPointPositions; 44 } 45 46 enum DXGI_MODE_SCANLINE_ORDER 47 { 48 UNSPECIFIED = 0, 49 PROGRESSIVE = 1, 50 UPPER_FIELD_FIRST = 2, 51 LOWER_FIELD_FIRST = 3 52 } 53 54 enum DXGI_MODE_SCALING 55 { 56 UNSPECIFIED = 0, 57 CENTERED = 1, 58 STRETCHED = 2 59 } 60 61 enum DXGI_MODE_ROTATION 62 { 63 UNSPECIFIED = 0, 64 IDENTITY = 1, 65 ROTATE90 = 2, 66 ROTATE180 = 3, 67 ROTATE270 = 4 68 } 69 70 struct DXGI_MODE_DESC 71 { 72 uint Width; 73 uint Height; 74 DXGI_RATIONAL RefreshRate; 75 DXGI_FORMAT Format; 76 DXGI_MODE_SCANLINE_ORDER ScanlineOrdering; 77 DXGI_MODE_SCALING Scaling; 78 } 79 80 struct DXGI_JPEG_DC_HUFFMAN_TABLE 81 { 82 ubyte[12] CodeCounts; 83 ubyte[12] CodeValues; 84 } 85 86 struct DXGI_JPEG_AC_HUFFMAN_TABLE 87 { 88 ubyte[16] CodeCounts; 89 ubyte[162] CodeValues; 90 } 91 92 struct DXGI_JPEG_QUANTIZATION_TABLE 93 { 94 ubyte[64] Elements; 95 }