1/* 2 * Copyright 2007 Andras Kovacs 3 * 4 * This library is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * This library is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with this library; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA 17 */ 18 19/* DXGI 1.1 IDL, and missing DXGI 1.0 parts added by Luca Barbieri on Sep 2010 */ 20 21import "oaidl.idl"; 22import "ocidl.idl"; 23 24import "dxgiformat.idl"; 25 26typedef struct DXGI_SAMPLE_DESC { 27 UINT Count; 28 UINT Quality; 29} DXGI_SAMPLE_DESC; 30 31typedef enum DXGI_MODE_ROTATION { 32 DXGI_MODE_ROTATION_UNSPECIFIED = 0, 33 DXGI_MODE_ROTATION_IDENTITY = 1, 34 DXGI_MODE_ROTATION_ROTATE90 = 2, 35 DXGI_MODE_ROTATION_ROTATE180 = 3, 36 DXGI_MODE_ROTATION_ROTATE270 = 4, 37} DXGI_MODE_ROTATION; 38 39typedef enum DXGI_MODE_SCANLINE_ORDER { 40 DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED = 0, 41 DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE = 1, 42 DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST = 2, 43 DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST = 3, 44} DXGI_MODE_SCANLINE_ORDER; 45 46typedef enum DXGI_MODE_SCALING { 47 DXGI_MODE_SCALING_UNSPECIFIED = 0, 48 DXGI_MODE_SCALING_CENTERED = 1, 49 DXGI_MODE_SCALING_STRETCHED = 2, 50} DXGI_MODE_SCALING; 51 52typedef struct DXGI_RATIONAL { 53 UINT Numerator; 54 UINT Denominator; 55} DXGI_RATIONAL; 56 57typedef struct DXGI_MODE_DESC { 58 UINT Width; 59 UINT Height; 60 DXGI_RATIONAL RefreshRate; 61 DXGI_FORMAT Format; 62 DXGI_MODE_SCANLINE_ORDER ScanlineOrdering; 63 DXGI_MODE_SCALING Scaling; 64} DXGI_MODE_DESC; 65 66typedef struct DXGI_GAMMA_CONTROL_CAPABILITIES { 67 BOOL ScaleAndOffsetSupported; 68 float MaxConvertedValue; 69 float MinConvertedValue; 70 UINT NumGammaControlPoints; 71 float ControlPointPositions[1025]; 72} DXGI_GAMMA_CONTROL_CAPABILITIES; 73 74typedef struct DXGI_RGB { 75 float Red; 76 float Green; 77 float Blue; 78} DXGI_RGB; 79 80typedef struct DXGI_GAMMA_CONTROL { 81 DXGI_RGB Scale; 82 DXGI_RGB Offset; 83 DXGI_RGB GammaCurve[1025]; 84} DXGI_GAMMA_CONTROL; 85