[HEADERS]
[reactos.git] / reactos / include / ddk / d3dhal.h
index 2145783..d4ecc2c 100644 (file)
  *
  * 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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
  */
 
 #ifndef _D3DHAL_H_
 #define _D3DHAL_H_
 
+/* Helper macro to enable gcc's extension.  */
+#ifndef __GNU_EXTENSION
+#ifdef __GNUC__
+#define __GNU_EXTENSION __extension__
+#else
+#define __GNU_EXTENSION
+#endif
+#endif
+
 #ifdef __cplusplus
 extern "C" {
 #endif
@@ -658,6 +667,63 @@ typedef struct _DD_GETDRIVERINFO2DATA
 #define D3DGDI2_TYPE_GETD3DQUERY                    0x00000022
 #define D3DGDI2_TYPE_GETDDIVERSION                  0x00000023  /* Returns DX9_DDI_VERSION, used to check which DDK version the driver is compiled against */
 
+typedef struct _D3DCAPS8
+{
+  D3DDEVTYPE DeviceType;
+  UINT AdapterOrdinal;
+  DWORD Caps;
+  DWORD Caps2;
+  DWORD Caps3;
+  DWORD PresentationIntervals;
+  DWORD CursorCaps;
+  DWORD DevCaps;
+  DWORD PrimitiveMiscCaps;
+  DWORD RasterCaps;
+  DWORD ZCmpCaps;
+  DWORD SrcBlendCaps;
+  DWORD DestBlendCaps;
+  DWORD AlphaCmpCaps;
+  DWORD ShadeCaps;
+  DWORD TextureCaps;
+  DWORD TextureFilterCaps;
+  DWORD CubeTextureFilterCaps;
+  DWORD VolumeTextureFilterCaps;
+  DWORD TextureAddressCaps;
+  DWORD VolumeTextureAddressCaps;
+  DWORD LineCaps;
+  DWORD MaxTextureWidth;
+  DWORD MaxTextureHeight;
+  DWORD MaxVolumeExtent;
+  DWORD MaxTextureRepeat;
+  DWORD MaxTextureAspectRatio;
+  DWORD MaxAnisotropy;
+  float MaxVertexW;
+  float GuardBandLeft;
+  float GuardBandTop;
+  float GuardBandRight;
+  float GuardBandBottom;
+  float ExtentsAdjust;
+  DWORD StencilCaps;
+  DWORD FVFCaps;
+  DWORD TextureOpCaps;
+  DWORD MaxTextureBlendStages;
+  DWORD MaxSimultaneousTextures;
+  DWORD VertexProcessingCaps;
+  DWORD MaxActiveLights;
+  DWORD MaxUserClipPlanes;
+  DWORD MaxVertexBlendMatrices;
+  DWORD MaxVertexBlendMatrixIndex;
+  float MaxPointSize;
+  DWORD MaxPrimitiveCount;
+  DWORD MaxVertexIndex;
+  DWORD MaxStreams;
+  DWORD MaxStreamStride;
+  DWORD VertexShaderVersion;
+  DWORD MaxVertexShaderConst;
+  DWORD PixelShaderVersion;
+  float MaxPixelShaderValue;
+} D3DCAPS8;
+
 typedef struct _DD_GETFORMATCOUNTDATA
 {
     DD_GETDRIVERINFO2DATA gdi2;
@@ -730,7 +796,7 @@ typedef struct _DD_GETD3DQUERYCOUNTDATA
 typedef struct _DD_GETD3DQUERYDATA
 {
     DD_GETDRIVERINFO2DATA gdi2;
-    union
+    __GNU_EXTENSION union
     {
         DWORD dwQueryIndex;
         D3DQUERYTYPE QueryType;