|  | /* | 
|  | * Copyright 2007 Andras Kovacs | 
|  | * | 
|  | * This library is free software; you can redistribute it and/or | 
|  | * modify it under the terms of the GNU Lesser General Public | 
|  | * License as published by the Free Software Foundation; either | 
|  | * version 2.1 of the License, or (at your option) any later version. | 
|  | * | 
|  | * This library is distributed in the hope that it will be useful, | 
|  | * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|  | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU | 
|  | * Lesser General Public License for more details. | 
|  | * | 
|  | * You should have received a copy of the GNU Lesser General Public | 
|  | * License along with this library; if not, write to the Free Software | 
|  | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA | 
|  | */ | 
|  |  | 
|  | import "dxgicommon.idl"; | 
|  | import "dxgiformat.idl"; | 
|  |  | 
|  | cpp_quote("#if 0") | 
|  | typedef unsigned int UINT; | 
|  | typedef long BOOL; | 
|  | cpp_quote("#endif") | 
|  |  | 
|  | typedef enum DXGI_MODE_ROTATION | 
|  | { | 
|  | DXGI_MODE_ROTATION_UNSPECIFIED  = 0x0, | 
|  | DXGI_MODE_ROTATION_IDENTITY     = 0x1, | 
|  | DXGI_MODE_ROTATION_ROTATE90     = 0x2, | 
|  | DXGI_MODE_ROTATION_ROTATE180    = 0x3, | 
|  | DXGI_MODE_ROTATION_ROTATE270    = 0x4, | 
|  | } DXGI_MODE_ROTATION; | 
|  |  | 
|  | typedef enum DXGI_MODE_SCANLINE_ORDER | 
|  | { | 
|  | DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED        = 0x0, | 
|  | DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE        = 0x1, | 
|  | DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST  = 0x2, | 
|  | DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST  = 0x3, | 
|  | } DXGI_MODE_SCANLINE_ORDER; | 
|  |  | 
|  | typedef enum DXGI_MODE_SCALING | 
|  | { | 
|  | DXGI_MODE_SCALING_UNSPECIFIED   = 0x0, | 
|  | DXGI_MODE_SCALING_CENTERED      = 0x1, | 
|  | DXGI_MODE_SCALING_STRETCHED     = 0x2, | 
|  | } DXGI_MODE_SCALING; | 
|  |  | 
|  | cpp_quote("#ifndef D3DCOLORVALUE_DEFINED") | 
|  | cpp_quote("#define D3DCOLORVALUE_DEFINED") | 
|  | typedef struct _D3DCOLORVALUE | 
|  | { | 
|  | float r; | 
|  | float g; | 
|  | float b; | 
|  | float a; | 
|  | } D3DCOLORVALUE; | 
|  | cpp_quote("#endif") | 
|  | typedef D3DCOLORVALUE DXGI_RGBA; | 
|  |  | 
|  | typedef struct DXGI_MODE_DESC | 
|  | { | 
|  | UINT Width; | 
|  | UINT Height; | 
|  | DXGI_RATIONAL RefreshRate; | 
|  | DXGI_FORMAT Format; | 
|  | DXGI_MODE_SCANLINE_ORDER ScanlineOrdering; | 
|  | DXGI_MODE_SCALING Scaling; | 
|  | } DXGI_MODE_DESC; | 
|  |  | 
|  | typedef struct DXGI_GAMMA_CONTROL_CAPABILITIES | 
|  | { | 
|  | BOOL ScaleAndOffsetSupported; | 
|  | float MaxConvertedValue; | 
|  | float MinConvertedValue; | 
|  | UINT NumGammaControlPoints; | 
|  | float ControlPointPositions[1025]; | 
|  | } DXGI_GAMMA_CONTROL_CAPABILITIES; | 
|  |  | 
|  | typedef struct DXGI_RGB | 
|  | { | 
|  | float Red; | 
|  | float Green; | 
|  | float Blue; | 
|  | } DXGI_RGB; | 
|  |  | 
|  | typedef struct DXGI_GAMMA_CONTROL | 
|  | { | 
|  | DXGI_RGB Scale; | 
|  | DXGI_RGB Offset; | 
|  | DXGI_RGB GammaCurve[1025]; | 
|  | } DXGI_GAMMA_CONTROL; |