-   
- #ifndef __dxgitype_h__ 
- #define __dxgitype_h__ 
-   
-   
- #include "dxgiformat.h" 
-   
- #define _FACDXGI    0x87a 
- #define MAKE_DXGI_HRESULT(code) MAKE_HRESULT(1, _FACDXGI, code) 
- #define MAKE_DXGI_STATUS(code)  MAKE_HRESULT(0, _FACDXGI, code) 
-   
- #define DXGI_STATUS_OCCLUDED                    MAKE_DXGI_STATUS(1) 
- #define DXGI_STATUS_CLIPPED                     MAKE_DXGI_STATUS(2) 
- #define DXGI_STATUS_NO_REDIRECTION              MAKE_DXGI_STATUS(4) 
- #define DXGI_STATUS_NO_DESKTOP_ACCESS           MAKE_DXGI_STATUS(5) 
- #define DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE MAKE_DXGI_STATUS(6) 
- #define DXGI_STATUS_MODE_CHANGED                MAKE_DXGI_STATUS(7) 
- #define DXGI_STATUS_MODE_CHANGE_IN_PROGRESS     MAKE_DXGI_STATUS(8) 
-   
-   
- #define DXGI_ERROR_INVALID_CALL                 MAKE_DXGI_HRESULT(1) 
- #define DXGI_ERROR_NOT_FOUND                    MAKE_DXGI_HRESULT(2) 
- #define DXGI_ERROR_MORE_DATA                    MAKE_DXGI_HRESULT(3) 
- #define DXGI_ERROR_UNSUPPORTED                  MAKE_DXGI_HRESULT(4) 
- #define DXGI_ERROR_DEVICE_REMOVED               MAKE_DXGI_HRESULT(5) 
- #define DXGI_ERROR_DEVICE_HUNG                  MAKE_DXGI_HRESULT(6) 
- #define DXGI_ERROR_DEVICE_RESET                 MAKE_DXGI_HRESULT(7) 
- #define DXGI_ERROR_WAS_STILL_DRAWING            MAKE_DXGI_HRESULT(10) 
- #define DXGI_ERROR_FRAME_STATISTICS_DISJOINT    MAKE_DXGI_HRESULT(11) 
- #define DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE MAKE_DXGI_HRESULT(12) 
- #define DXGI_ERROR_DRIVER_INTERNAL_ERROR        MAKE_DXGI_HRESULT(32) 
- #define DXGI_ERROR_NONEXCLUSIVE                 MAKE_DXGI_HRESULT(33) 
- #define DXGI_ERROR_NOT_CURRENTLY_AVAILABLE      MAKE_DXGI_HRESULT(34) 
- #define DXGI_ERROR_REMOTE_CLIENT_DISCONNECTED   MAKE_DXGI_HRESULT(35) 
- #define DXGI_ERROR_REMOTE_OUTOFMEMORY           MAKE_DXGI_HRESULT(36) 
-   
-   
-   
- #define DXGI_CPU_ACCESS_NONE                    ( 0 ) 
- #define DXGI_CPU_ACCESS_DYNAMIC                 ( 1 ) 
- #define DXGI_CPU_ACCESS_READ_WRITE              ( 2 ) 
- #define DXGI_CPU_ACCESS_SCRATCH                 ( 3 ) 
- #define DXGI_CPU_ACCESS_FIELD                   15 
-   
- #define DXGI_USAGE_SHADER_INPUT                 ( 1L << (0 + 4) ) 
- #define DXGI_USAGE_RENDER_TARGET_OUTPUT         ( 1L << (1 + 4) ) 
- #define DXGI_USAGE_BACK_BUFFER                  ( 1L << (2 + 4) ) 
- #define DXGI_USAGE_SHARED                       ( 1L << (3 + 4) ) 
- #define DXGI_USAGE_READ_ONLY                    ( 1L << (4 + 4) ) 
- #define DXGI_USAGE_DISCARD_ON_PRESENT           ( 1L << (5 + 4) ) 
- #define DXGI_USAGE_UNORDERED_ACCESS             ( 1L << (6 + 4) ) 
-   
- 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; 
-   
- typedef struct DXGI_GAMMA_CONTROL_CAPABILITIES 
- { 
-     BOOL ScaleAndOffsetSupported; 
-     float MaxConvertedValue; 
-     float MinConvertedValue; 
-     UINT NumGammaControlPoints; 
-     float ControlPointPositions[1025]; 
- } DXGI_GAMMA_CONTROL_CAPABILITIES; 
-   
- typedef struct DXGI_RATIONAL 
- { 
-     UINT Numerator; 
-     UINT Denominator; 
- } DXGI_RATIONAL; 
-   
- typedef enum DXGI_MODE_SCANLINE_ORDER 
- { 
-     DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED        = 0, 
-     DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE        = 1, 
-     DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST  = 2, 
-     DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST  = 3 
- } DXGI_MODE_SCANLINE_ORDER; 
-   
- typedef enum DXGI_MODE_SCALING 
- { 
-     DXGI_MODE_SCALING_UNSPECIFIED   = 0, 
-     DXGI_MODE_SCALING_CENTERED      = 1, 
-     DXGI_MODE_SCALING_STRETCHED     = 2 
- } DXGI_MODE_SCALING; 
-   
- typedef enum DXGI_MODE_ROTATION 
- { 
-     DXGI_MODE_ROTATION_UNSPECIFIED  = 0, 
-     DXGI_MODE_ROTATION_IDENTITY     = 1, 
-     DXGI_MODE_ROTATION_ROTATE90     = 2, 
-     DXGI_MODE_ROTATION_ROTATE180    = 3, 
-     DXGI_MODE_ROTATION_ROTATE270    = 4 
- } DXGI_MODE_ROTATION; 
-   
- 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_SAMPLE_DESC 
- { 
-     UINT Count; 
-     UINT Quality; 
- } DXGI_SAMPLE_DESC; 
-   
- #endif // __dxgitype_h__ 
-   
-